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: --turbo-splitting | 5 // Flags: --turbo-splitting |
6 | 6 |
7 function module(stdlib, foreign, heap) { | 7 function module(stdlib, foreign, heap) { |
8 "use asm"; | 8 "use asm"; |
9 function foo(i) { | 9 function foo(i) { |
| 10 i = i|0; |
10 var j = 0; | 11 var j = 0; |
11 i = i|0; | 12 switch (i | 0) { |
12 switch (i) { | |
13 case 0: | 13 case 0: |
14 j = i+1|0; | 14 j = i+1|0; |
15 break; | 15 break; |
16 case 1: | 16 case 1: |
17 j = i+1|0; | 17 j = i+1|0; |
18 break; | 18 break; |
19 default: | 19 default: |
20 j = i; | 20 j = i; |
21 break; | 21 break; |
22 } | 22 } |
23 return j; | 23 return j | 0; |
24 } | 24 } |
25 return { foo: foo }; | 25 return { foo: foo }; |
26 } | 26 } |
27 | 27 |
28 var foo = module(this, {}, new ArrayBuffer(64*1024)).foo; | 28 var foo = module(this, {}, new ArrayBuffer(64*1024)).foo; |
29 print(foo(1)); | 29 assertEquals(2, foo(2)); |
OLD | NEW |