| Index: src/compiler/ia32/code-generator-ia32.cc
|
| diff --git a/src/compiler/ia32/code-generator-ia32.cc b/src/compiler/ia32/code-generator-ia32.cc
|
| index 593bf9545afcfc4750b6dec147e1baa9a267aa6f..27033d66e051e899022baa6ba02fcb30fa7f8d8a 100644
|
| --- a/src/compiler/ia32/code-generator-ia32.cc
|
| +++ b/src/compiler/ia32/code-generator-ia32.cc
|
| @@ -875,7 +875,10 @@ void CodeGenerator::AssembleArchInstruction(Instruction* instr) {
|
| break;
|
| }
|
| case kIA32Push:
|
| - if (HasImmediateInput(instr, 0)) {
|
| + if (instr->InputAt(0)->IsDoubleRegister()) {
|
| + __ sub(esp, Immediate(kDoubleSize));
|
| + __ movsd(Operand(esp, 0), i.InputDoubleRegister(0));
|
| + } else if (HasImmediateInput(instr, 0)) {
|
| __ push(i.InputImmediate(0));
|
| } else {
|
| __ push(i.InputOperand(0));
|
|
|