Bug 1500231: Fix register allocation of copysign on AVX; r=sunfish

--HG--
extra : rebase_source : 99a85227520130cc006fbb4ff8b6bb3d7a1a03f6
extra : amend_source : 81b0b96934c487246b0188d63ce4b3c02a82b417
This commit is contained in:
Benjamin Bouvier 2018-10-22 15:41:53 +02:00
parent bd786693fb
commit 7bec7e608e

View File

@ -704,10 +704,11 @@ LIRGenerator::visitCopySign(MCopySign* ins)
// As lowerForFPU, but we want rhs to be in a FP register too. // As lowerForFPU, but we want rhs to be in a FP register too.
lir->setOperand(0, useRegisterAtStart(lhs)); lir->setOperand(0, useRegisterAtStart(lhs));
lir->setOperand(1, lhs != rhs ? useRegister(rhs) : useRegisterAtStart(rhs));
if (!Assembler::HasAVX()) { if (!Assembler::HasAVX()) {
lir->setOperand(1, lhs != rhs ? useRegister(rhs) : useRegisterAtStart(rhs));
defineReuseInput(lir, ins, 0); defineReuseInput(lir, ins, 0);
} else { } else {
lir->setOperand(1, useRegisterAtStart(rhs));
define(lir, ins); define(lir, ins);
} }
} }