| Index: test/unittests/compiler/instruction-selector-unittest.h
|
| diff --git a/test/unittests/compiler/instruction-selector-unittest.h b/test/unittests/compiler/instruction-selector-unittest.h
|
| index fc7c144939292c251d6a3171552a6e6ca8333bcc..f1397faa06157161275b80fd51f02395e20978de 100644
|
| --- a/test/unittests/compiler/instruction-selector-unittest.h
|
| +++ b/test/unittests/compiler/instruction-selector-unittest.h
|
| @@ -92,7 +92,7 @@ class InstructionSelectorTest : public TestWithContext,
|
| CallDescriptor* MakeCallDescriptor(Zone* zone, MachineType return_type) {
|
| MachineSignature::Builder builder(zone, 1, 0);
|
| builder.AddReturn(return_type);
|
| - return Linkage::GetSimplifiedCDescriptor(zone, builder.Build());
|
| + return MakeSimpleCallDescriptor(zone, builder.Build());
|
| }
|
|
|
| CallDescriptor* MakeCallDescriptor(Zone* zone, MachineType return_type,
|
| @@ -100,7 +100,7 @@ class InstructionSelectorTest : public TestWithContext,
|
| MachineSignature::Builder builder(zone, 1, 1);
|
| builder.AddReturn(return_type);
|
| builder.AddParam(parameter0_type);
|
| - return Linkage::GetSimplifiedCDescriptor(zone, builder.Build());
|
| + return MakeSimpleCallDescriptor(zone, builder.Build());
|
| }
|
|
|
| CallDescriptor* MakeCallDescriptor(Zone* zone, MachineType return_type,
|
| @@ -110,7 +110,7 @@ class InstructionSelectorTest : public TestWithContext,
|
| builder.AddReturn(return_type);
|
| builder.AddParam(parameter0_type);
|
| builder.AddParam(parameter1_type);
|
| - return Linkage::GetSimplifiedCDescriptor(zone, builder.Build());
|
| + return MakeSimpleCallDescriptor(zone, builder.Build());
|
| }
|
|
|
| CallDescriptor* MakeCallDescriptor(Zone* zone, MachineType return_type,
|
| @@ -122,11 +122,48 @@ class InstructionSelectorTest : public TestWithContext,
|
| builder.AddParam(parameter0_type);
|
| builder.AddParam(parameter1_type);
|
| builder.AddParam(parameter2_type);
|
| - return Linkage::GetSimplifiedCDescriptor(zone, builder.Build());
|
| + return MakeSimpleCallDescriptor(zone, builder.Build());
|
| }
|
|
|
| private:
|
| InstructionSelectorTest* test_;
|
| +
|
| + // Create a simple call descriptor for testing.
|
| + CallDescriptor* MakeSimpleCallDescriptor(Zone* zone,
|
| + MachineSignature* msig) {
|
| + LocationSignature::Builder locations(zone, msig->return_count(),
|
| + msig->parameter_count());
|
| +
|
| + // Add return location(s).
|
| + const int return_count = static_cast<int>(msig->return_count());
|
| + for (int i = 0; i < return_count; i++) {
|
| + locations.AddReturn(LinkageLocation::ForCallerFrameSlot(-1 - i));
|
| + }
|
| +
|
| + // Just put all parameters on the stack.
|
| + const int parameter_count = static_cast<int>(msig->parameter_count());
|
| + for (int i = 0; i < parameter_count; i++) {
|
| + locations.AddParam(LinkageLocation::ForCallerFrameSlot(-1 - i));
|
| + }
|
| +
|
| + const RegList kCalleeSaveRegisters = 0;
|
| + const RegList kCalleeSaveFPRegisters = 0;
|
| +
|
| + MachineType target_type = MachineType::Pointer();
|
| + LinkageLocation target_loc = LinkageLocation::ForAnyRegister();
|
| + return new (zone) CallDescriptor( // --
|
| + CallDescriptor::kCallAddress, // kind
|
| + target_type, // target MachineType
|
| + target_loc, // target location
|
| + msig, // machine_sig
|
| + locations.Build(), // location_sig
|
| + 0, // stack_parameter_count
|
| + Operator::kNoProperties, // properties
|
| + kCalleeSaveRegisters, // callee-saved registers
|
| + kCalleeSaveFPRegisters, // callee-saved fp regs
|
| + CallDescriptor::kNoFlags, // flags
|
| + "iselect-test-call");
|
| + }
|
| };
|
|
|
| class Stream final {
|
|
|