| Index: src/mips/lithium-codegen-mips.cc
|
| diff --git a/src/mips/lithium-codegen-mips.cc b/src/mips/lithium-codegen-mips.cc
|
| index e373c9ab18e3db3642309e67416d0bd98dec9bf7..3c376cec238fe2cd595eeabc9354cb6d037f95a2 100644
|
| --- a/src/mips/lithium-codegen-mips.cc
|
| +++ b/src/mips/lithium-codegen-mips.cc
|
| @@ -4084,7 +4084,9 @@ void LCodeGen::DoNumberTagI(LNumberTagI* instr) {
|
| DeferredNumberTagI(LCodeGen* codegen, LNumberTagI* instr)
|
| : LDeferredCode(codegen), instr_(instr) { }
|
| virtual void Generate() {
|
| - codegen()->DoDeferredNumberTagI(instr_, SIGNED_INT32);
|
| + codegen()->DoDeferredNumberTagI(instr_,
|
| + instr_->InputAt(0),
|
| + SIGNED_INT32);
|
| }
|
| virtual LInstruction* instr() { return instr_; }
|
| private:
|
| @@ -4108,7 +4110,9 @@ void LCodeGen::DoNumberTagU(LNumberTagU* instr) {
|
| DeferredNumberTagU(LCodeGen* codegen, LNumberTagU* instr)
|
| : LDeferredCode(codegen), instr_(instr) { }
|
| virtual void Generate() {
|
| - codegen()->DoDeferredNumberTagI(instr_, UNSIGNED_INT32);
|
| + codegen()->DoDeferredNumberTagI(instr_,
|
| + instr_->InputAt(0),
|
| + UNSIGNED_INT32);
|
| }
|
| virtual LInstruction* instr() { return instr_; }
|
| private:
|
| @@ -4127,9 +4131,10 @@ void LCodeGen::DoNumberTagU(LNumberTagU* instr) {
|
|
|
|
|
| void LCodeGen::DoDeferredNumberTagI(LInstruction* instr,
|
| + LOperand* value,
|
| IntegerSignedness signedness) {
|
| Label slow;
|
| - Register src = ToRegister(instr->InputAt(0));
|
| + Register src = ToRegister(value);
|
| Register dst = ToRegister(instr->result());
|
| FPURegister dbl_scratch = double_scratch0();
|
|
|
|
|