Index: src/ia32/lithium-codegen-ia32.cc |
diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc |
index 98a049b64abed3387a1d5f6c380a48c1fed8c78f..5ae27e56c05fc5ce1fc24c5ad0c79ff18d4de8ee 100644 |
--- a/src/ia32/lithium-codegen-ia32.cc |
+++ b/src/ia32/lithium-codegen-ia32.cc |
@@ -5732,6 +5732,7 @@ void LCodeGen::DoClampTToUint8(LClampTToUint8* instr) { |
ASSERT(instr->unclamped()->Equals(instr->result())); |
Register input_reg = ToRegister(instr->unclamped()); |
+ XMMRegister temp_xmm_reg = ToDoubleRegister(instr->temp_xmm()); |
XMMRegister xmm_scratch = double_scratch0(); |
Label is_smi, done, heap_number; |
@@ -5752,7 +5753,7 @@ void LCodeGen::DoClampTToUint8(LClampTToUint8* instr) { |
// Heap number |
__ bind(&heap_number); |
__ movdbl(xmm_scratch, FieldOperand(input_reg, HeapNumber::kValueOffset)); |
- __ ClampDoubleToUint8(xmm_scratch, xmm1, input_reg); |
+ __ ClampDoubleToUint8(xmm_scratch, temp_xmm_reg, input_reg); |
__ jmp(&done, Label::kNear); |
// smi |