| Index: src/compiler/mips/instruction-selector-mips.cc
|
| diff --git a/src/compiler/mips/instruction-selector-mips.cc b/src/compiler/mips/instruction-selector-mips.cc
|
| index e3981a2bd6a6e1a3e3a62c6fe97838251e5a79c4..e7d13f1fe42d2c0177013f937873a0f188df1d67 100644
|
| --- a/src/compiler/mips/instruction-selector-mips.cc
|
| +++ b/src/compiler/mips/instruction-selector-mips.cc
|
| @@ -763,9 +763,9 @@ void InstructionSelector::VisitFloat64RoundTiesEven(Node* node) {
|
| }
|
|
|
|
|
| -void InstructionSelector::EmitPrepareArguments(NodeVector* arguments,
|
| - const CallDescriptor* descriptor,
|
| - Node* node) {
|
| +void InstructionSelector::EmitPrepareArguments(
|
| + ZoneVector<PushParameter>* arguments, const CallDescriptor* descriptor,
|
| + Node* node) {
|
| MipsOperandGenerator g(this);
|
|
|
| // Prepare for C function call.
|
| @@ -776,8 +776,8 @@ void InstructionSelector::EmitPrepareArguments(NodeVector* arguments,
|
|
|
| // Poke any stack arguments.
|
| int slot = kCArgSlotCount;
|
| - for (Node* input : (*arguments)) {
|
| - Emit(kMipsStoreToStackSlot, g.NoOutput(), g.UseRegister(input),
|
| + for (PushParameter input : (*arguments)) {
|
| + Emit(kMipsStoreToStackSlot, g.NoOutput(), g.UseRegister(input.node()),
|
| g.TempImmediate(slot << kPointerSizeLog2));
|
| ++slot;
|
| }
|
| @@ -789,8 +789,9 @@ void InstructionSelector::EmitPrepareArguments(NodeVector* arguments,
|
| g.TempImmediate(push_count << kPointerSizeLog2));
|
| }
|
| for (size_t n = 0; n < arguments->size(); ++n) {
|
| - if (Node* input = (*arguments)[n]) {
|
| - Emit(kMipsStoreToStackSlot, g.NoOutput(), g.UseRegister(input),
|
| + PushParameter input = (*arguments)[n];
|
| + if (input.node()) {
|
| + Emit(kMipsStoreToStackSlot, g.NoOutput(), g.UseRegister(input.node()),
|
| g.TempImmediate(n << kPointerSizeLog2));
|
| }
|
| }
|
|
|