Index: src/ia32/lithium-ia32.cc |
diff --git a/src/ia32/lithium-ia32.cc b/src/ia32/lithium-ia32.cc |
index 3be2fc41d0788a2a26e2a24a6e4d519f631b5035..c9de436d68bf3fdab66df6d5d33e20329fc76c7a 100644 |
--- a/src/ia32/lithium-ia32.cc |
+++ b/src/ia32/lithium-ia32.cc |
@@ -765,7 +765,8 @@ LInstruction* LChunkBuilder::DoArithmeticD(Token::Value op, |
LOperand* left = UseRegisterAtStart(instr->BetterLeftOperand()); |
LOperand* right = UseRegisterAtStart(instr->BetterRightOperand()); |
LArithmeticD* result = new(zone()) LArithmeticD(op, left, right); |
- return DefineSameAsFirst(result); |
+ return CpuFeatures::IsSupported(AVX) ? DefineAsRegister(result) |
+ : DefineSameAsFirst(result); |
} |
} |