Index: src/compiler/x64/code-generator-x64.cc |
diff --git a/src/compiler/x64/code-generator-x64.cc b/src/compiler/x64/code-generator-x64.cc |
index 68aba0d371c523cdb0ee68b4a9999efecbceccde..3af5f05941024eda37927a0d8e309374880f4203 100644 |
--- a/src/compiler/x64/code-generator-x64.cc |
+++ b/src/compiler/x64/code-generator-x64.cc |
@@ -954,6 +954,15 @@ void CodeGenerator::AssembleArchInstruction(Instruction* instr) { |
__ Cvttss2si(i.OutputRegister(), i.InputOperand(0)); |
} |
break; |
+ case kSSEFloat32ToUint32: { |
+ if (instr->InputAt(0)->IsDoubleRegister()) { |
+ __ Cvttss2siq(i.OutputRegister(), i.InputDoubleRegister(0)); |
+ } else { |
+ __ Cvttss2siq(i.OutputRegister(), i.InputOperand(0)); |
+ } |
+ __ AssertZeroExtended(i.OutputRegister()); |
+ break; |
+ } |
case kSSEFloat64Cmp: |
ASSEMBLE_SSE_BINOP(Ucomisd); |
break; |