| Index: runtime/vm/instructions_mips.cc
|
| ===================================================================
|
| --- runtime/vm/instructions_mips.cc (revision 20527)
|
| +++ runtime/vm/instructions_mips.cc (working copy)
|
| @@ -58,23 +58,9 @@
|
|
|
| i = Back(++end);
|
| instr = Instr::At(reinterpret_cast<uword>(&i));
|
| - if (instr->OpcodeField() == LUI) {
|
| - ASSERT(instr->RtField() == *reg);
|
| - offset |= (instr->UImmField() << 16);
|
| - } else {
|
| - ASSERT(instr->OpcodeField() == ORI);
|
| - ASSERT(instr->RtField() == *reg);
|
| - offset |= instr->UImmField();
|
| -
|
| - if (instr->RsField() != ZR) {
|
| - ASSERT(instr->RsField() == *reg);
|
| - i = Back(++end);
|
| - instr = Instr::At(reinterpret_cast<uword>(&i));
|
| - ASSERT(instr->OpcodeField() == LUI);
|
| - ASSERT(instr->RtField() == *reg);
|
| - offset |= (instr->UImmField() << 16);
|
| - }
|
| - }
|
| + ASSERT(instr->RtField() == *reg);
|
| + // Offset is signed, so add the upper 16 bits.
|
| + offset += (instr->UImmField() << 16);
|
| }
|
| offset += kHeapObjectTag;
|
| ASSERT(Utils::IsAligned(offset, 4));
|
|
|