| OLD | NEW |
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // TODO(jochen): Remove this after the setting is turned on globally. | 5 // TODO(jochen): Remove this after the setting is turned on globally. |
| 6 #define V8_IMMINENT_DEPRECATION_WARNINGS | 6 #define V8_IMMINENT_DEPRECATION_WARNINGS |
| 7 | 7 |
| 8 #include "test/cctest/compiler/function-tester.h" | 8 #include "test/cctest/compiler/function-tester.h" |
| 9 | 9 |
| 10 using namespace v8::internal; | 10 namespace v8 { |
| 11 using namespace v8::internal::compiler; | 11 namespace internal { |
| 12 namespace compiler { |
| 12 | 13 |
| 13 TEST(SimpleCall) { | 14 TEST(SimpleCall) { |
| 14 FunctionTester T("(function(foo,a) { return foo(a); })"); | 15 FunctionTester T("(function(foo,a) { return foo(a); })"); |
| 15 Handle<JSFunction> foo = T.NewFunction("(function(a) { return a; })"); | 16 Handle<JSFunction> foo = T.NewFunction("(function(a) { return a; })"); |
| 16 | 17 |
| 17 T.CheckCall(T.Val(3), foo, T.Val(3)); | 18 T.CheckCall(T.Val(3), foo, T.Val(3)); |
| 18 T.CheckCall(T.Val(3.1), foo, T.Val(3.1)); | 19 T.CheckCall(T.Val(3.1), foo, T.Val(3.1)); |
| 19 T.CheckCall(foo, foo, foo); | 20 T.CheckCall(foo, foo, foo); |
| 20 T.CheckCall(T.Val("Abba"), foo, T.Val("Abba")); | 21 T.CheckCall(T.Val("Abba"), foo, T.Val("Abba")); |
| 21 } | 22 } |
| (...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 239 i::Handle<i::Object> ofun = v8::Utils::OpenHandle(*value); | 240 i::Handle<i::Object> ofun = v8::Utils::OpenHandle(*value); |
| 240 i::Handle<i::JSFunction> jsfun = Handle<JSFunction>::cast(ofun); | 241 i::Handle<i::JSFunction> jsfun = Handle<JSFunction>::cast(ofun); |
| 241 jsfun->set_code(T.function->code()); | 242 jsfun->set_code(T.function->code()); |
| 242 jsfun->set_shared(T.function->shared()); | 243 jsfun->set_shared(T.function->shared()); |
| 243 CHECK(context->Global() | 244 CHECK(context->Global() |
| 244 ->Set(context, v8_str("foo"), v8::Utils::CallableToLocal(jsfun)) | 245 ->Set(context, v8_str("foo"), v8::Utils::CallableToLocal(jsfun)) |
| 245 .FromJust()); | 246 .FromJust()); |
| 246 CompileRun("var x = 24;"); | 247 CompileRun("var x = 24;"); |
| 247 ExpectObject("foo()", context->Global()); | 248 ExpectObject("foo()", context->Global()); |
| 248 } | 249 } |
| 250 |
| 251 } // namespace compiler |
| 252 } // namespace internal |
| 253 } // namespace v8 |
| OLD | NEW |