| 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 48185a676ffb495c5104f86ff9998be100b74046..dc7497f519e2c1f3a88ee60b879d99c3f7fa5f49 100644
|
| --- a/src/compiler/mips64/instruction-selector-mips64.cc
|
| +++ b/src/compiler/mips64/instruction-selector-mips64.cc
|
| @@ -682,11 +682,12 @@ void InstructionSelector::VisitCall(Node* node, BasicBlock* handler) {
|
| 0, nullptr, 0, nullptr);
|
|
|
| // Poke any stack arguments.
|
| - int slot = kCArgSlotCount;
|
| - for (Node* node : buffer.pushed_nodes) {
|
| - Emit(kMips64StoreToStackSlot, g.NoOutput(), g.UseRegister(node),
|
| - g.TempImmediate(slot << kPointerSizeLog2));
|
| - ++slot;
|
| + for (size_t n = 0; n < buffer.pushed_nodes.size(); ++n) {
|
| + if (Node* node = buffer.pushed_nodes[n]) {
|
| + int const slot = static_cast<int>(n);
|
| + Emit(kMips64StoreToStackSlot, g.NoOutput(), g.UseRegister(node),
|
| + g.TempImmediate(slot << kPointerSizeLog2));
|
| + }
|
| }
|
| } else {
|
| const int32_t push_count = static_cast<int32_t>(buffer.pushed_nodes.size());
|
|
|