| 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 #include "src/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/frames-inl.h" | 7 #include "src/frames-inl.h" |
| 8 #include "test/cctest/compiler/function-tester.h" | 8 #include "test/cctest/compiler/function-tester.h" |
| 9 | 9 |
| 10 using namespace v8::internal; | 10 using namespace v8::internal; |
| (...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 408 " function bar(s,t) { return %_IsSmi(x); };" | 408 " function bar(s,t) { return %_IsSmi(x); };" |
| 409 " return bar;" | 409 " return bar;" |
| 410 "})();", | 410 "})();", |
| 411 kInlineFlags); | 411 kInlineFlags); |
| 412 | 412 |
| 413 InstallAssertInlineCountHelper(CcTest::isolate()); | 413 InstallAssertInlineCountHelper(CcTest::isolate()); |
| 414 T.CheckCall(T.true_value(), T.Val(12), T.Val(4)); | 414 T.CheckCall(T.true_value(), T.Val(12), T.Val(4)); |
| 415 } | 415 } |
| 416 | 416 |
| 417 | 417 |
| 418 TEST(InlineIntrinsicIsNonNegativeSmi) { |
| 419 FunctionTester T( |
| 420 "(function () {" |
| 421 " var x = 42;" |
| 422 " function bar(s,t) { return %_IsNonNegativeSmi(x); };" |
| 423 " return bar;" |
| 424 "})();", |
| 425 kInlineFlags); |
| 426 |
| 427 InstallAssertInlineCountHelper(CcTest::isolate()); |
| 428 T.CheckCall(T.true_value(), T.Val(12), T.Val(4)); |
| 429 } |
| 430 |
| 431 |
| 418 TEST(InlineIntrinsicIsArray) { | 432 TEST(InlineIntrinsicIsArray) { |
| 419 FunctionTester T( | 433 FunctionTester T( |
| 420 "(function () {" | 434 "(function () {" |
| 421 " var x = [1,2,3];" | 435 " var x = [1,2,3];" |
| 422 " function bar(s,t) { return %_IsArray(x); };" | 436 " function bar(s,t) { return %_IsArray(x); };" |
| 423 " return bar;" | 437 " return bar;" |
| 424 "})();", | 438 "})();", |
| 425 kInlineFlags); | 439 kInlineFlags); |
| 426 | 440 |
| 427 InstallAssertInlineCountHelper(CcTest::isolate()); | 441 InstallAssertInlineCountHelper(CcTest::isolate()); |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 552 " if (x == 1) return bar(42);" | 566 " if (x == 1) return bar(42);" |
| 553 " return x;" | 567 " return x;" |
| 554 " }" | 568 " }" |
| 555 " return foo;" | 569 " return foo;" |
| 556 "})();", | 570 "})();", |
| 557 kInlineFlags); | 571 kInlineFlags); |
| 558 | 572 |
| 559 InstallAssertInlineCountHelper(CcTest::isolate()); | 573 InstallAssertInlineCountHelper(CcTest::isolate()); |
| 560 T.CheckCall(T.Val(42), T.Val(1)); | 574 T.CheckCall(T.Val(42), T.Val(1)); |
| 561 } | 575 } |
| OLD | NEW |