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 // Flags: --allow-natives-syntax --fold-constants | 5 // Flags: --allow-natives-syntax --fold-constants |
6 | 6 |
7 function test() { | 7 function test() { |
8 assertEquals("string", typeof ""); | 8 assertEquals("string", typeof ""); |
9 assertEquals("number", typeof 1.1); | 9 assertEquals("number", typeof 1.1); |
10 assertEquals("number", typeof 1); | 10 assertEquals("number", typeof 1); |
11 assertEquals("boolean", typeof true); | 11 assertEquals("boolean", typeof true); |
12 assertEquals("function", typeof function() {}); | 12 assertEquals("function", typeof function() {}); |
13 assertEquals("object", typeof null); | 13 assertEquals("object", typeof null); |
14 assertEquals("object", typeof {}); | 14 assertEquals("object", typeof {}); |
15 assertEquals("object", typeof /regex/); | 15 assertEquals("object", typeof /regex/); |
16 | 16 |
17 assertTrue(%_IsSmi(1)); | 17 assertTrue(%_IsSmi(1)); |
18 assertFalse(%_IsSmi(1.1)); | 18 assertFalse(%_IsSmi(1.1)); |
19 assertFalse(%_IsSmi({})); | 19 assertFalse(%_IsSmi({})); |
20 | 20 |
21 assertTrue(%_IsRegExp(/regexp/)); | 21 assertTrue(%_IsRegExp(/regexp/)); |
22 assertFalse(%_IsRegExp({})); | 22 assertFalse(%_IsRegExp({})); |
23 | 23 |
24 assertTrue(%_IsArray([1])); | 24 assertTrue(%_IsArray([1])); |
25 assertFalse(%_IsArray(function() {})); | 25 assertFalse(%_IsArray(function() {})); |
26 | 26 |
27 assertTrue(%_IsJSReceiver(new Date())); | 27 assertTrue(%_IsJSReceiver(new Date())); |
28 assertFalse(%_IsJSReceiver(1)); | 28 assertFalse(%_IsJSReceiver(1)); |
29 | |
30 assertTrue(%_IsMinusZero(-0.0)); | |
31 assertFalse(%_IsMinusZero(1)); | |
32 assertFalse(%_IsMinusZero("")); | |
33 } | 29 } |
34 | 30 |
35 | 31 |
36 test(); | 32 test(); |
37 test(); | 33 test(); |
38 %OptimizeFunctionOnNextCall(test); | 34 %OptimizeFunctionOnNextCall(test); |
39 test(); | 35 test(); |
OLD | NEW |