Index: src/compiler/raw-machine-assembler.cc |
diff --git a/src/compiler/raw-machine-assembler.cc b/src/compiler/raw-machine-assembler.cc |
index 56a696b1b623173c2dab8322f15ee9d04cec1ef2..24e520d0bcfae474ead0d9447cc7a244dca8f865 100644 |
--- a/src/compiler/raw-machine-assembler.cc |
+++ b/src/compiler/raw-machine-assembler.cc |
@@ -217,6 +217,22 @@ Node* RawMachineAssembler::CallRuntime2(Runtime::FunctionId function, |
} |
+Node* RawMachineAssembler::CallRuntime4(Runtime::FunctionId function, |
+ Node* arg1, Node* arg2, Node* arg3, |
+ Node* arg4, Node* context) { |
+ CallDescriptor* descriptor = Linkage::GetRuntimeCallDescriptor( |
+ zone(), function, 4, Operator::kNoProperties, false); |
+ |
+ Node* centry = HeapConstant(CEntryStub(isolate(), 1).GetCode()); |
+ Node* ref = AddNode( |
+ common()->ExternalConstant(ExternalReference(function, isolate()))); |
+ Node* arity = Int32Constant(4); |
+ |
+ return AddNode(common()->Call(descriptor), centry, arg1, arg2, arg3, arg4, |
+ ref, arity, context, graph()->start(), graph()->start()); |
+} |
+ |
+ |
Node* RawMachineAssembler::CallCFunction0(MachineType return_type, |
Node* function) { |
MachineSignature::Builder builder(zone(), 1, 0); |