OLD | NEW |
1 # | 1 # |
2 # Autogenerated by generate-bytecode-expectations. | 2 # Autogenerated by generate-bytecode-expectations. |
3 # | 3 # |
4 | 4 |
5 --- | 5 --- |
6 pool type: number | 6 pool type: number |
7 execute: yes | 7 execute: yes |
8 wrap: yes | 8 wrap: yes |
9 | 9 |
10 --- | 10 --- |
11 snippet: " | 11 snippet: " |
12 var a = 1; | 12 var a = 1; |
13 switch(a) { | 13 switch(a) { |
14 case 1: return 2; | 14 case 1: return 2; |
15 case 2: return 3; | 15 case 2: return 3; |
16 } | 16 } |
17 " | 17 " |
18 frame size: 3 | 18 frame size: 3 |
19 parameter count: 1 | 19 parameter count: 1 |
20 bytecode array length: 32 | 20 bytecode array length: 33 |
21 bytecodes: [ | 21 bytecodes: [ |
22 /* 30 E> */ B(StackCheck), | 22 /* 30 E> */ B(StackCheck), |
23 /* 42 S> */ B(LdaSmi), U8(1), | 23 /* 42 S> */ B(LdaSmi), U8(1), |
24 /* 42 E> */ B(Star), R(1), | 24 /* 42 E> */ B(Star), R(1), |
25 /* 52 E> */ B(Nop), | 25 /* 52 E> */ B(Nop), |
26 B(Star), R(0), | 26 B(Star), R(0), |
27 /* 45 S> */ B(Star), R(2), | 27 /* 45 S> */ B(LdaSmi), U8(1), |
28 B(LdaSmi), U8(1), | 28 B(TestEqualStrict), R(0), |
29 B(TestEqualStrict), R(2), | 29 B(Mov), R(0), R(2), |
30 B(JumpIfTrue), U8(10), | 30 B(JumpIfToBooleanTrue), U8(10), |
31 B(LdaSmi), U8(2), | 31 B(LdaSmi), U8(2), |
32 B(TestEqualStrict), R(2), | 32 B(TestEqualStrict), R(2), |
33 B(JumpIfTrue), U8(7), | 33 B(JumpIfTrue), U8(7), |
34 B(Jump), U8(8), | 34 B(Jump), U8(8), |
35 /* 66 S> */ B(LdaSmi), U8(2), | 35 /* 66 S> */ B(LdaSmi), U8(2), |
36 /* 97 S> */ B(Return), | 36 /* 97 S> */ B(Return), |
37 /* 85 S> */ B(LdaSmi), U8(3), | 37 /* 85 S> */ B(LdaSmi), U8(3), |
38 /* 97 S> */ B(Return), | 38 /* 97 S> */ B(Return), |
39 B(LdaUndefined), | 39 B(LdaUndefined), |
40 /* 97 S> */ B(Return), | 40 /* 97 S> */ B(Return), |
41 ] | 41 ] |
42 constant pool: [ | 42 constant pool: [ |
43 ] | 43 ] |
44 handlers: [ | 44 handlers: [ |
45 ] | 45 ] |
46 | 46 |
47 --- | 47 --- |
48 snippet: " | 48 snippet: " |
49 var a = 1; | 49 var a = 1; |
50 switch(a) { | 50 switch(a) { |
51 case 1: a = 2; break; | 51 case 1: a = 2; break; |
52 case 2: a = 3; break; | 52 case 2: a = 3; break; |
53 } | 53 } |
54 " | 54 " |
55 frame size: 3 | 55 frame size: 3 |
56 parameter count: 1 | 56 parameter count: 1 |
57 bytecode array length: 38 | 57 bytecode array length: 39 |
58 bytecodes: [ | 58 bytecodes: [ |
59 /* 30 E> */ B(StackCheck), | 59 /* 30 E> */ B(StackCheck), |
60 /* 42 S> */ B(LdaSmi), U8(1), | 60 /* 42 S> */ B(LdaSmi), U8(1), |
61 /* 42 E> */ B(Star), R(1), | 61 /* 42 E> */ B(Star), R(1), |
62 /* 52 E> */ B(Nop), | 62 /* 52 E> */ B(Nop), |
63 B(Star), R(0), | 63 B(Star), R(0), |
64 /* 45 S> */ B(Star), R(2), | 64 /* 45 S> */ B(LdaSmi), U8(1), |
65 B(LdaSmi), U8(1), | 65 B(TestEqualStrict), R(0), |
66 B(TestEqualStrict), R(2), | 66 B(Mov), R(0), R(2), |
67 B(JumpIfTrue), U8(10), | 67 B(JumpIfToBooleanTrue), U8(10), |
68 B(LdaSmi), U8(2), | 68 B(LdaSmi), U8(2), |
69 B(TestEqualStrict), R(2), | 69 B(TestEqualStrict), R(2), |
70 B(JumpIfTrue), U8(10), | 70 B(JumpIfTrue), U8(10), |
71 B(Jump), U8(14), | 71 B(Jump), U8(14), |
72 /* 66 S> */ B(LdaSmi), U8(2), | 72 /* 66 S> */ B(LdaSmi), U8(2), |
73 B(Star), R(1), | 73 B(Star), R(1), |
74 /* 73 S> */ B(Jump), U8(8), | 74 /* 73 S> */ B(Jump), U8(8), |
75 /* 89 S> */ B(LdaSmi), U8(3), | 75 /* 89 S> */ B(LdaSmi), U8(3), |
76 B(Star), R(1), | 76 B(Star), R(1), |
77 /* 96 S> */ B(Jump), U8(2), | 77 /* 96 S> */ B(Jump), U8(2), |
78 B(LdaUndefined), | 78 B(LdaUndefined), |
79 /* 105 S> */ B(Return), | 79 /* 105 S> */ B(Return), |
80 ] | 80 ] |
81 constant pool: [ | 81 constant pool: [ |
82 ] | 82 ] |
83 handlers: [ | 83 handlers: [ |
84 ] | 84 ] |
85 | 85 |
86 --- | 86 --- |
87 snippet: " | 87 snippet: " |
88 var a = 1; | 88 var a = 1; |
89 switch(a) { | 89 switch(a) { |
90 case 1: a = 2; // fall-through | 90 case 1: a = 2; // fall-through |
91 case 2: a = 3; break; | 91 case 2: a = 3; break; |
92 } | 92 } |
93 " | 93 " |
94 frame size: 3 | 94 frame size: 3 |
95 parameter count: 1 | 95 parameter count: 1 |
96 bytecode array length: 36 | 96 bytecode array length: 37 |
97 bytecodes: [ | 97 bytecodes: [ |
98 /* 30 E> */ B(StackCheck), | 98 /* 30 E> */ B(StackCheck), |
99 /* 42 S> */ B(LdaSmi), U8(1), | 99 /* 42 S> */ B(LdaSmi), U8(1), |
100 /* 42 E> */ B(Star), R(1), | 100 /* 42 E> */ B(Star), R(1), |
101 /* 52 E> */ B(Nop), | 101 /* 52 E> */ B(Nop), |
102 B(Star), R(0), | 102 B(Star), R(0), |
103 /* 45 S> */ B(Star), R(2), | 103 /* 45 S> */ B(LdaSmi), U8(1), |
104 B(LdaSmi), U8(1), | 104 B(TestEqualStrict), R(0), |
105 B(TestEqualStrict), R(2), | 105 B(Mov), R(0), R(2), |
106 B(JumpIfTrue), U8(10), | 106 B(JumpIfToBooleanTrue), U8(10), |
107 B(LdaSmi), U8(2), | 107 B(LdaSmi), U8(2), |
108 B(TestEqualStrict), R(2), | 108 B(TestEqualStrict), R(2), |
109 B(JumpIfTrue), U8(8), | 109 B(JumpIfTrue), U8(8), |
110 B(Jump), U8(12), | 110 B(Jump), U8(12), |
111 /* 66 S> */ B(LdaSmi), U8(2), | 111 /* 66 S> */ B(LdaSmi), U8(2), |
112 /* 68 E> */ B(Star), R(1), | 112 /* 68 E> */ B(Star), R(1), |
113 /* 98 S> */ B(LdaSmi), U8(3), | 113 /* 98 S> */ B(LdaSmi), U8(3), |
114 B(Star), R(1), | 114 B(Star), R(1), |
115 /* 105 S> */ B(Jump), U8(2), | 115 /* 105 S> */ B(Jump), U8(2), |
116 B(LdaUndefined), | 116 B(LdaUndefined), |
117 /* 114 S> */ B(Return), | 117 /* 114 S> */ B(Return), |
118 ] | 118 ] |
119 constant pool: [ | 119 constant pool: [ |
120 ] | 120 ] |
121 handlers: [ | 121 handlers: [ |
122 ] | 122 ] |
123 | 123 |
124 --- | 124 --- |
125 snippet: " | 125 snippet: " |
126 var a = 1; | 126 var a = 1; |
127 switch(a) { | 127 switch(a) { |
128 case 2: break; | 128 case 2: break; |
129 case 3: break; | 129 case 3: break; |
130 default: a = 1; break; | 130 default: a = 1; break; |
131 } | 131 } |
132 " | 132 " |
133 frame size: 3 | 133 frame size: 3 |
134 parameter count: 1 | 134 parameter count: 1 |
135 bytecode array length: 36 | 135 bytecode array length: 37 |
136 bytecodes: [ | 136 bytecodes: [ |
137 /* 30 E> */ B(StackCheck), | 137 /* 30 E> */ B(StackCheck), |
138 /* 42 S> */ B(LdaSmi), U8(1), | 138 /* 42 S> */ B(LdaSmi), U8(1), |
139 /* 42 E> */ B(Star), R(1), | 139 /* 42 E> */ B(Star), R(1), |
140 /* 52 E> */ B(Nop), | 140 /* 52 E> */ B(Nop), |
141 B(Star), R(0), | 141 B(Star), R(0), |
142 /* 45 S> */ B(Star), R(2), | 142 /* 45 S> */ B(LdaSmi), U8(2), |
143 B(LdaSmi), U8(2), | 143 B(TestEqualStrict), R(0), |
144 B(TestEqualStrict), R(2), | 144 B(Mov), R(0), R(2), |
145 B(JumpIfTrue), U8(10), | 145 B(JumpIfToBooleanTrue), U8(10), |
146 B(LdaSmi), U8(3), | 146 B(LdaSmi), U8(3), |
147 B(TestEqualStrict), R(2), | 147 B(TestEqualStrict), R(2), |
148 B(JumpIfTrue), U8(6), | 148 B(JumpIfTrue), U8(6), |
149 B(Jump), U8(6), | 149 B(Jump), U8(6), |
150 /* 66 S> */ B(Jump), U8(10), | 150 /* 66 S> */ B(Jump), U8(10), |
151 /* 82 S> */ B(Jump), U8(8), | 151 /* 82 S> */ B(Jump), U8(8), |
152 /* 99 S> */ B(LdaSmi), U8(1), | 152 /* 99 S> */ B(LdaSmi), U8(1), |
153 B(Star), R(1), | 153 B(Star), R(1), |
154 /* 106 S> */ B(Jump), U8(2), | 154 /* 106 S> */ B(Jump), U8(2), |
155 B(LdaUndefined), | 155 B(LdaUndefined), |
156 /* 115 S> */ B(Return), | 156 /* 115 S> */ B(Return), |
157 ] | 157 ] |
158 constant pool: [ | 158 constant pool: [ |
159 ] | 159 ] |
160 handlers: [ | 160 handlers: [ |
161 ] | 161 ] |
162 | 162 |
163 --- | 163 --- |
164 snippet: " | 164 snippet: " |
165 var a = 1; | 165 var a = 1; |
166 switch(typeof(a)) { | 166 switch(typeof(a)) { |
167 case 2: a = 1; break; | 167 case 2: a = 1; break; |
168 case 3: a = 2; break; | 168 case 3: a = 2; break; |
169 default: a = 3; break; | 169 default: a = 3; break; |
170 } | 170 } |
171 " | 171 " |
172 frame size: 3 | 172 frame size: 3 |
173 parameter count: 1 | 173 parameter count: 1 |
174 bytecode array length: 44 | 174 bytecode array length: 45 |
175 bytecodes: [ | 175 bytecodes: [ |
176 /* 30 E> */ B(StackCheck), | 176 /* 30 E> */ B(StackCheck), |
177 /* 42 S> */ B(LdaSmi), U8(1), | 177 /* 42 S> */ B(LdaSmi), U8(1), |
178 /* 42 E> */ B(Star), R(1), | 178 /* 42 E> */ B(Star), R(1), |
179 B(TypeOf), | 179 B(TypeOf), |
180 B(Star), R(0), | 180 B(Star), R(0), |
181 /* 45 S> */ B(Star), R(2), | 181 /* 45 S> */ B(LdaSmi), U8(2), |
182 B(LdaSmi), U8(2), | 182 B(TestEqualStrict), R(0), |
183 B(TestEqualStrict), R(2), | 183 B(Mov), R(0), R(2), |
184 B(JumpIfTrue), U8(10), | 184 B(JumpIfToBooleanTrue), U8(10), |
185 B(LdaSmi), U8(3), | 185 B(LdaSmi), U8(3), |
186 B(TestEqualStrict), R(2), | 186 B(TestEqualStrict), R(2), |
187 B(JumpIfTrue), U8(10), | 187 B(JumpIfTrue), U8(10), |
188 B(Jump), U8(14), | 188 B(Jump), U8(14), |
189 /* 74 S> */ B(LdaSmi), U8(1), | 189 /* 74 S> */ B(LdaSmi), U8(1), |
190 B(Star), R(1), | 190 B(Star), R(1), |
191 /* 81 S> */ B(Jump), U8(14), | 191 /* 81 S> */ B(Jump), U8(14), |
192 /* 97 S> */ B(LdaSmi), U8(2), | 192 /* 97 S> */ B(LdaSmi), U8(2), |
193 B(Star), R(1), | 193 B(Star), R(1), |
194 /* 104 S> */ B(Jump), U8(8), | 194 /* 104 S> */ B(Jump), U8(8), |
(...skipping 11 matching lines...) Expand all Loading... |
206 --- | 206 --- |
207 snippet: " | 207 snippet: " |
208 var a = 1; | 208 var a = 1; |
209 switch(a) { | 209 switch(a) { |
210 case typeof(a): a = 1; break; | 210 case typeof(a): a = 1; break; |
211 default: a = 2; break; | 211 default: a = 2; break; |
212 } | 212 } |
213 " | 213 " |
214 frame size: 3 | 214 frame size: 3 |
215 parameter count: 1 | 215 parameter count: 1 |
216 bytecode array length: 33 | 216 bytecode array length: 32 |
217 bytecodes: [ | 217 bytecodes: [ |
218 /* 30 E> */ B(StackCheck), | 218 /* 30 E> */ B(StackCheck), |
219 /* 42 S> */ B(LdaSmi), U8(1), | 219 /* 42 S> */ B(LdaSmi), U8(1), |
220 /* 42 E> */ B(Star), R(1), | 220 /* 42 E> */ B(Star), R(1), |
221 /* 52 E> */ B(Nop), | 221 /* 52 E> */ B(Nop), |
222 B(Star), R(0), | 222 B(Star), R(0), |
223 /* 45 S> */ B(Star), R(2), | 223 /* 45 S> */ B(TypeOf), |
224 B(Ldar), R(1), | 224 B(TestEqualStrict), R(0), |
225 B(TypeOf), | 225 B(Mov), R(0), R(2), |
226 B(TestEqualStrict), R(2), | 226 B(JumpIfToBooleanTrue), U8(4), |
227 B(JumpIfTrue), U8(4), | |
228 B(Jump), U8(8), | 227 B(Jump), U8(8), |
229 /* 74 S> */ B(LdaSmi), U8(1), | 228 /* 74 S> */ B(LdaSmi), U8(1), |
230 B(Star), R(1), | 229 B(Star), R(1), |
231 /* 81 S> */ B(Jump), U8(8), | 230 /* 81 S> */ B(Jump), U8(8), |
232 /* 98 S> */ B(LdaSmi), U8(2), | 231 /* 98 S> */ B(LdaSmi), U8(2), |
233 B(Star), R(1), | 232 B(Star), R(1), |
234 /* 105 S> */ B(Jump), U8(2), | 233 /* 105 S> */ B(Jump), U8(2), |
235 B(LdaUndefined), | 234 B(LdaUndefined), |
236 /* 114 S> */ B(Return), | 235 /* 114 S> */ B(Return), |
237 ] | 236 ] |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
310 a = 2; | 309 a = 2; |
311 a = 2; | 310 a = 2; |
312 break; | 311 break; |
313 case 2: | 312 case 2: |
314 a = 3; | 313 a = 3; |
315 break; | 314 break; |
316 } | 315 } |
317 " | 316 " |
318 frame size: 3 | 317 frame size: 3 |
319 parameter count: 1 | 318 parameter count: 1 |
320 bytecode array length: 290 | 319 bytecode array length: 291 |
321 bytecodes: [ | 320 bytecodes: [ |
322 /* 30 E> */ B(StackCheck), | 321 /* 30 E> */ B(StackCheck), |
323 /* 42 S> */ B(LdaSmi), U8(1), | 322 /* 42 S> */ B(LdaSmi), U8(1), |
324 /* 42 E> */ B(Star), R(1), | 323 /* 42 E> */ B(Star), R(1), |
325 /* 52 E> */ B(Nop), | 324 /* 52 E> */ B(Nop), |
326 B(Star), R(0), | 325 B(Star), R(0), |
327 /* 45 S> */ B(Star), R(2), | 326 /* 45 S> */ B(LdaSmi), U8(1), |
328 B(LdaSmi), U8(1), | 327 B(TestEqualStrict), R(0), |
329 B(TestEqualStrict), R(2), | 328 B(Mov), R(0), R(2), |
330 B(JumpIfTrue), U8(10), | 329 B(JumpIfToBooleanTrue), U8(10), |
331 B(LdaSmi), U8(2), | 330 B(LdaSmi), U8(2), |
332 B(TestEqualStrict), R(2), | 331 B(TestEqualStrict), R(2), |
333 B(JumpIfTrueConstant), U8(0), | 332 B(JumpIfTrueConstant), U8(0), |
334 B(JumpConstant), U8(1), | 333 B(JumpConstant), U8(1), |
335 /* 68 S> */ B(LdaSmi), U8(2), | 334 /* 68 S> */ B(LdaSmi), U8(2), |
336 B(Star), R(1), | 335 B(Star), R(1), |
337 /* 77 S> */ B(LdaSmi), U8(2), | 336 /* 77 S> */ B(LdaSmi), U8(2), |
338 B(Star), R(1), | 337 B(Star), R(1), |
339 /* 86 S> */ B(LdaSmi), U8(2), | 338 /* 86 S> */ B(LdaSmi), U8(2), |
340 B(Star), R(1), | 339 B(Star), R(1), |
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
481 case 1: | 480 case 1: |
482 switch(a + 1) { | 481 switch(a + 1) { |
483 case 2 : a = 1; break; | 482 case 2 : a = 1; break; |
484 default : a = 2; break; | 483 default : a = 2; break; |
485 } // fall-through | 484 } // fall-through |
486 case 2: a = 3; | 485 case 2: a = 3; |
487 } | 486 } |
488 " | 487 " |
489 frame size: 5 | 488 frame size: 5 |
490 parameter count: 1 | 489 parameter count: 1 |
491 bytecode array length: 62 | 490 bytecode array length: 60 |
492 bytecodes: [ | 491 bytecodes: [ |
493 /* 30 E> */ B(StackCheck), | 492 /* 30 E> */ B(StackCheck), |
494 /* 42 S> */ B(LdaSmi), U8(1), | 493 /* 42 S> */ B(LdaSmi), U8(1), |
495 /* 42 E> */ B(Star), R(2), | 494 /* 42 E> */ B(Star), R(2), |
496 /* 52 E> */ B(Nop), | 495 /* 52 E> */ B(Nop), |
497 B(Star), R(0), | 496 B(Star), R(0), |
498 /* 45 S> */ B(Star), R(3), | 497 /* 45 S> */ B(LdaSmi), U8(1), |
499 B(LdaSmi), U8(1), | 498 B(TestEqualStrict), R(0), |
500 B(TestEqualStrict), R(3), | 499 B(Mov), R(0), R(3), |
501 B(JumpIfTrue), U8(10), | 500 B(JumpIfToBooleanTrue), U8(10), |
502 B(LdaSmi), U8(2), | 501 B(LdaSmi), U8(2), |
503 B(TestEqualStrict), R(3), | 502 B(TestEqualStrict), R(3), |
504 B(JumpIfTrue), U8(36), | 503 B(JumpIfTrue), U8(33), |
505 B(Jump), U8(38), | 504 B(Jump), U8(35), |
506 /* 77 E> */ B(Ldar), R(2), | 505 /* 77 E> */ B(LdaSmi), U8(1), |
507 B(Star), R(4), | 506 B(Add), R(2), |
508 B(LdaSmi), U8(1), | |
509 B(Add), R(4), | |
510 B(Star), R(1), | 507 B(Star), R(1), |
511 /* 70 S> */ B(Star), R(4), | 508 /* 70 S> */ B(LdaSmi), U8(2), |
512 B(LdaSmi), U8(2), | 509 B(TestEqualStrict), R(1), |
513 B(TestEqualStrict), R(4), | 510 B(Mov), R(1), R(4), |
514 B(JumpIfTrue), U8(4), | 511 B(JumpIfToBooleanTrue), U8(4), |
515 B(Jump), U8(8), | 512 B(Jump), U8(8), |
516 /* 101 S> */ B(LdaSmi), U8(1), | 513 /* 101 S> */ B(LdaSmi), U8(1), |
517 B(Star), R(2), | 514 B(Star), R(2), |
518 /* 108 S> */ B(Jump), U8(8), | 515 /* 108 S> */ B(Jump), U8(8), |
519 /* 131 S> */ B(LdaSmi), U8(2), | 516 /* 131 S> */ B(LdaSmi), U8(2), |
520 B(Star), R(2), | 517 B(Star), R(2), |
521 /* 138 S> */ B(Jump), U8(2), | 518 /* 138 S> */ B(Jump), U8(2), |
522 /* 176 S> */ B(LdaSmi), U8(3), | 519 /* 176 S> */ B(LdaSmi), U8(3), |
523 /* 178 E> */ B(Star), R(2), | 520 /* 178 E> */ B(Star), R(2), |
524 B(LdaUndefined), | 521 B(LdaUndefined), |
525 /* 185 S> */ B(Return), | 522 /* 185 S> */ B(Return), |
526 ] | 523 ] |
527 constant pool: [ | 524 constant pool: [ |
528 ] | 525 ] |
529 handlers: [ | 526 handlers: [ |
530 ] | 527 ] |
531 | 528 |
OLD | NEW |