Index: test/cctest/compiler/function-tester.h |
diff --git a/test/cctest/compiler/function-tester.h b/test/cctest/compiler/function-tester.h |
index 584ad49708ccf9ebaa9a397dafdb9befdc8b029d..9246dfb79e47d4f6a9a26ed01ddd59985eb9aa8f 100644 |
--- a/test/cctest/compiler/function-tester.h |
+++ b/test/cctest/compiler/function-tester.h |
@@ -42,16 +42,18 @@ class FunctionTester : public InitializedHandleScope { |
CompileGraph(graph); |
} |
- FunctionTester(const CallInterfaceDescriptor& descriptor, Handle<Code> code) |
+ FunctionTester(Handle<Code> code, int param_count) |
: isolate(main_isolate()), |
- function( |
- (FLAG_allow_natives_syntax = true, |
- NewFunction(BuildFunctionFromDescriptor(descriptor).c_str()))), |
+ function((FLAG_allow_natives_syntax = true, |
+ NewFunction(BuildFunction(param_count).c_str()))), |
flags_(0) { |
Compile(function); |
function->ReplaceCode(*code); |
} |
+ FunctionTester(const CallInterfaceDescriptor& descriptor, Handle<Code> code) |
+ : FunctionTester(code, descriptor.GetParameterCount()) {} |
+ |
Isolate* isolate; |
Handle<JSFunction> function; |
@@ -64,6 +66,12 @@ class FunctionTester : public InitializedHandleScope { |
return Execution::Call(isolate, function, undefined(), 2, args); |
} |
+ MaybeHandle<Object> Call(Handle<Object> a, Handle<Object> b, |
+ Handle<Object> c) { |
+ Handle<Object> args[] = {a, b, c}; |
+ return Execution::Call(isolate, function, undefined(), 3, args); |
+ } |
+ |
MaybeHandle<Object> Call(Handle<Object> a, Handle<Object> b, Handle<Object> c, |
Handle<Object> d) { |
Handle<Object> args[] = {a, b, c, d}; |
@@ -91,41 +99,56 @@ class FunctionTester : public InitializedHandleScope { |
return try_catch.Message(); |
} |
- void CheckCall(Handle<Object> expected, Handle<Object> a, Handle<Object> b) { |
- Handle<Object> result = Call(a, b).ToHandleChecked(); |
+ void CheckCall(Handle<Object> expected, Handle<Object> a, Handle<Object> b, |
+ Handle<Object> c, Handle<Object> d) { |
+ Handle<Object> result = Call(a, b, c, d).ToHandleChecked(); |
CHECK(expected->SameValue(*result)); |
} |
+ void CheckCall(Handle<Object> expected, Handle<Object> a, Handle<Object> b, |
+ Handle<Object> c) { |
+ return CheckCall(expected, a, b, c, undefined()); |
+ } |
+ |
+ void CheckCall(Handle<Object> expected, Handle<Object> a, Handle<Object> b) { |
+ return CheckCall(expected, a, b, undefined()); |
+ } |
+ |
void CheckCall(Handle<Object> expected, Handle<Object> a) { |
CheckCall(expected, a, undefined()); |
} |
- void CheckCall(Handle<Object> expected) { |
- CheckCall(expected, undefined(), undefined()); |
- } |
+ void CheckCall(Handle<Object> expected) { CheckCall(expected, undefined()); } |
void CheckCall(double expected, double a, double b) { |
CheckCall(Val(expected), Val(a), Val(b)); |
} |
+ void CheckTrue(Handle<Object> a) { CheckCall(true_value(), a); } |
+ |
void CheckTrue(Handle<Object> a, Handle<Object> b) { |
CheckCall(true_value(), a, b); |
} |
- void CheckTrue(Handle<Object> a) { CheckCall(true_value(), a, undefined()); } |
+ void CheckTrue(Handle<Object> a, Handle<Object> b, Handle<Object> c) { |
+ CheckCall(true_value(), a, b, c); |
+ } |
+ |
+ void CheckTrue(Handle<Object> a, Handle<Object> b, Handle<Object> c, |
+ Handle<Object> d) { |
+ CheckCall(true_value(), a, b, c, d); |
+ } |
void CheckTrue(double a, double b) { |
CheckCall(true_value(), Val(a), Val(b)); |
} |
+ void CheckFalse(Handle<Object> a) { CheckCall(false_value(), a); } |
+ |
void CheckFalse(Handle<Object> a, Handle<Object> b) { |
CheckCall(false_value(), a, b); |
} |
- void CheckFalse(Handle<Object> a) { |
- CheckCall(false_value(), a, undefined()); |
- } |
- |
void CheckFalse(double a, double b) { |
CheckCall(false_value(), Val(a), Val(b)); |
} |
@@ -217,11 +240,6 @@ class FunctionTester : public InitializedHandleScope { |
return function_string; |
} |
- std::string BuildFunctionFromDescriptor( |
- const CallInterfaceDescriptor& descriptor) { |
- return BuildFunction(descriptor.GetParameterCount()); |
- } |
- |
// Compile the given machine graph instead of the source of the function |
// and replace the JSFunction's code with the result. |
Handle<JSFunction> CompileGraph(Graph* graph) { |