OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 // Flags: --allow-natives-syntax | 5 // Flags: --allow-natives-syntax |
6 | 6 |
7 var undetectable = %GetUndetectable(); | 7 var undetectable = %GetUndetectable(); |
8 | 8 |
9 var tests = [ | 9 var tests = [ |
10 true, false, | 10 true, false, |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 assertTrue(undetectable == undetectable); | 85 assertTrue(undetectable == undetectable); |
86 assertTrue(undetectable === undetectable); | 86 assertTrue(undetectable === undetectable); |
87 | 87 |
88 } | 88 } |
89 | 89 |
90 for (var i = 0; i < 5; i++) { | 90 for (var i = 0; i < 5; i++) { |
91 test(); | 91 test(); |
92 } | 92 } |
93 | 93 |
94 | 94 |
95 assertTrue(undetectable == %GetUndetectable()); | 95 assertFalse(undetectable == %GetUndetectable()); |
96 assertFalse(undetectable === %GetUndetectable()); | 96 assertFalse(undetectable === %GetUndetectable()); |
97 | 97 |
98 | 98 |
99 function test2(a, b) { | 99 function test2(a, b) { |
100 assertTrue(a == b); | 100 return a == b; |
101 } | 101 } |
102 test2(1, 1); | 102 test2(0, 1); |
103 test2(undetectable, undetectable); | 103 test2(undetectable, {}); |
| 104 %OptimizeFunctionOnNextCall(test2); |
104 for (var i = 0; i < 5; ++i) { | 105 for (var i = 0; i < 5; ++i) { |
105 test2(undetectable, %GetUndetectable()); | 106 assertFalse(test2(undetectable, %GetUndetectable())); |
106 } | 107 } |
OLD | NEW |