Index: src/compiler/mips64/instruction-selector-mips64.cc |
diff --git a/src/compiler/mips64/instruction-selector-mips64.cc b/src/compiler/mips64/instruction-selector-mips64.cc |
index 5f3f503c7ae459ef99efcd7d739cd9ffba5b337d..379ada8a3f8407ee4df360c286fe28e82254cc1f 100644 |
--- a/src/compiler/mips64/instruction-selector-mips64.cc |
+++ b/src/compiler/mips64/instruction-selector-mips64.cc |
@@ -654,13 +654,14 @@ void InstructionSelector::VisitCall(Node* node, BasicBlock* handler) { |
int push_count = buffer.pushed_nodes.size(); |
if (push_count > 0) { |
- Emit(kMips64StackClaim | MiscField::encode(push_count), g.NoOutput()); |
+ Emit(kMips64StackClaim, g.NoOutput(), |
+ g.TempImmediate(push_count << kPointerSizeLog2)); |
} |
int slot = buffer.pushed_nodes.size() - 1; |
for (auto i = buffer.pushed_nodes.rbegin(); i != buffer.pushed_nodes.rend(); |
++i) { |
- Emit(kMips64StoreToStackSlot | MiscField::encode(slot), g.NoOutput(), |
- g.UseRegister(*i)); |
+ Emit(kMips64StoreToStackSlot, g.NoOutput(), g.UseRegister(*i), |
+ g.TempImmediate(slot << kPointerSizeLog2)); |
slot--; |
} |