Index: src/x64/macro-assembler-x64.cc |
diff --git a/src/x64/macro-assembler-x64.cc b/src/x64/macro-assembler-x64.cc |
index 9653fa00916f8d54824fa7e5416d37992486c93f..8f8e7fc3bec4373cc086fadc504a6e1b595c6653 100644 |
--- a/src/x64/macro-assembler-x64.cc |
+++ b/src/x64/macro-assembler-x64.cc |
@@ -3259,12 +3259,12 @@ void MacroAssembler::Pinsrd(XMMRegister dst, Register src, int8_t imm8) { |
pinsrd(dst, src, imm8); |
return; |
} |
- Movd(xmm0, src); |
+ Movd(kScratchDoubleReg, src); |
if (imm8 == 1) { |
- punpckldq(dst, xmm0); |
+ punpckldq(dst, kScratchDoubleReg); |
} else { |
DCHECK_EQ(0, imm8); |
- Movss(dst, xmm0); |
+ Movss(dst, kScratchDoubleReg); |
} |
} |
@@ -3276,12 +3276,12 @@ void MacroAssembler::Pinsrd(XMMRegister dst, const Operand& src, int8_t imm8) { |
pinsrd(dst, src, imm8); |
return; |
} |
- Movd(xmm0, src); |
+ Movd(kScratchDoubleReg, src); |
if (imm8 == 1) { |
- punpckldq(dst, xmm0); |
+ punpckldq(dst, kScratchDoubleReg); |
} else { |
DCHECK_EQ(0, imm8); |
- Movss(dst, xmm0); |
+ Movss(dst, kScratchDoubleReg); |
} |
} |
@@ -3743,15 +3743,15 @@ void MacroAssembler::SlowTruncateToI(Register result_reg, |
void MacroAssembler::TruncateHeapNumberToI(Register result_reg, |
Register input_reg) { |
Label done; |
- Movsd(xmm0, FieldOperand(input_reg, HeapNumber::kValueOffset)); |
- Cvttsd2siq(result_reg, xmm0); |
+ Movsd(kScratchDoubleReg, FieldOperand(input_reg, HeapNumber::kValueOffset)); |
+ Cvttsd2siq(result_reg, kScratchDoubleReg); |
cmpq(result_reg, Immediate(1)); |
j(no_overflow, &done, Label::kNear); |
// Slow case. |
if (input_reg.is(result_reg)) { |
subp(rsp, Immediate(kDoubleSize)); |
- Movsd(MemOperand(rsp, 0), xmm0); |
+ Movsd(MemOperand(rsp, 0), kScratchDoubleReg); |
SlowTruncateToI(result_reg, rsp, 0); |
addp(rsp, Immediate(kDoubleSize)); |
} else { |
@@ -3788,8 +3788,8 @@ void MacroAssembler::DoubleToI(Register result_reg, XMMRegister input_reg, |
Label* lost_precision, Label* is_nan, |
Label* minus_zero, Label::Distance dst) { |
Cvttsd2si(result_reg, input_reg); |
- Cvtlsi2sd(xmm0, result_reg); |
- Ucomisd(xmm0, input_reg); |
+ Cvtlsi2sd(kScratchDoubleReg, result_reg); |
+ Ucomisd(kScratchDoubleReg, input_reg); |
j(not_equal, lost_precision, dst); |
j(parity_even, is_nan, dst); // NaN. |
if (minus_zero_mode == FAIL_ON_MINUS_ZERO) { |