Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(134)

Side by Side Diff: test/cctest/interpreter/bytecode_expectations/BasicLoops.golden

Issue 2677163003: WIP: type profiling. (Closed)
Patch Set: Rebaseline. Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # 1 #
2 # Autogenerated by generate-bytecode-expectations. 2 # Autogenerated by generate-bytecode-expectations.
3 # 3 #
4 4
5 --- 5 ---
6 wrap: yes 6 wrap: yes
7 7
8 --- 8 ---
9 snippet: " 9 snippet: "
10 var x = 0; 10 var x = 0;
11 while (false) { x = 99; break; continue; } 11 while (false) { x = 99; break; continue; }
12 return x; 12 return x;
13 " 13 "
14 frame size: 1 14 frame size: 2
15 parameter count: 1 15 parameter count: 1
16 bytecode array length: 6 16 bytecode array length: 10
17 bytecodes: [ 17 bytecodes: [
18 /* 30 E> */ B(StackCheck), 18 /* 30 E> */ B(StackCheck),
19 /* 42 S> */ B(LdaZero), 19 /* 42 S> */ B(LdaConstant), U8(0),
20 B(Star), R(1),
21 B(LdaZero),
20 B(Star), R(0), 22 B(Star), R(0),
21 /* 88 S> */ B(Nop), 23 /* 88 S> */ B(Nop),
22 /* 98 S> */ B(Return), 24 /* 98 S> */ B(Return),
23 ] 25 ]
24 constant pool: [ 26 constant pool: [
27 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
25 ] 28 ]
26 handlers: [ 29 handlers: [
27 ] 30 ]
28 31
29 --- 32 ---
30 snippet: " 33 snippet: "
31 var x = 0; 34 var x = 0;
32 while (false) { 35 while (false) {
33 x = x + 1; 36 x = x + 1;
34 }; 37 };
35 return x; 38 return x;
36 " 39 "
37 frame size: 1 40 frame size: 2
38 parameter count: 1 41 parameter count: 1
39 bytecode array length: 6 42 bytecode array length: 10
40 bytecodes: [ 43 bytecodes: [
41 /* 30 E> */ B(StackCheck), 44 /* 30 E> */ B(StackCheck),
42 /* 42 S> */ B(LdaZero), 45 /* 42 S> */ B(LdaConstant), U8(0),
46 B(Star), R(1),
47 B(LdaZero),
43 B(Star), R(0), 48 B(Star), R(0),
44 /* 77 S> */ B(Nop), 49 /* 77 S> */ B(Nop),
45 /* 87 S> */ B(Return), 50 /* 87 S> */ B(Return),
46 ] 51 ]
47 constant pool: [ 52 constant pool: [
53 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
48 ] 54 ]
49 handlers: [ 55 handlers: [
50 ] 56 ]
51 57
52 --- 58 ---
53 snippet: " 59 snippet: "
54 var x = 0; 60 var x = 0;
55 var y = 1; 61 var y = 1;
56 while (x < 10) { 62 while (x < 10) {
57 y = y * 12; 63 y = y * 12;
58 x = x + 1; 64 x = x + 1;
59 if (x == 3) continue; 65 if (x == 3) continue;
60 if (x == 4) break; 66 if (x == 4) break;
61 } 67 }
62 return y; 68 return y;
63 " 69 "
64 frame size: 2 70 frame size: 3
65 parameter count: 1 71 parameter count: 1
66 bytecode array length: 54 72 bytecode array length: 69
67 bytecodes: [ 73 bytecodes: [
68 /* 30 E> */ B(StackCheck), 74 /* 30 E> */ B(StackCheck),
69 /* 42 S> */ B(LdaZero), 75 /* 42 S> */ B(LdaConstant), U8(0),
76 B(Star), R(2),
77 B(LdaZero),
70 B(Star), R(0), 78 B(Star), R(0),
71 /* 53 S> */ B(LdaSmi), I8(1), 79 /* 53 S> */ B(LdaConstant), U8(1),
80 B(Star), R(2),
81 B(LdaSmi), I8(1),
72 B(Star), R(1), 82 B(Star), R(1),
73 /* 65 S> */ B(LdaSmi), I8(10), 83 /* 65 S> */ B(LdaSmi), I8(10),
74 /* 65 E> */ B(TestLessThan), R(0), U8(2), 84 /* 65 E> */ B(TestLessThan), R(0), U8(6),
75 B(JumpIfFalse), U8(38), 85 B(JumpIfFalse), U8(45),
76 /* 56 E> */ B(StackCheck), 86 /* 56 E> */ B(StackCheck),
77 /* 75 S> */ B(LdaSmi), I8(12), 87 /* 75 S> */ B(LdaConstant), U8(1),
78 /* 81 E> */ B(Mul), R(1), U8(3), 88 B(Star), R(2),
89 B(LdaSmi), I8(12),
90 /* 81 E> */ B(Mul), R(1), U8(7),
79 B(Star), R(1), 91 B(Star), R(1),
80 /* 89 S> */ B(LdaSmi), I8(1), 92 /* 89 S> */ B(LdaConstant), U8(0),
81 /* 95 E> */ B(Add), R(0), U8(4), 93 B(Star), R(2),
94 /* 95 E> */ B(AddSmi), I8(1), R(0), U8(10),
82 B(Star), R(0), 95 B(Star), R(0),
83 /* 102 S> */ B(LdaSmi), I8(3), 96 /* 102 S> */ B(LdaSmi), I8(3),
84 /* 108 E> */ B(TestEqual), R(0), U8(5), 97 /* 108 E> */ B(TestEqual), R(0), U8(13),
85 B(JumpIfFalse), U8(4), 98 B(JumpIfFalse), U8(4),
86 /* 114 S> */ B(Jump), U8(11), 99 /* 114 S> */ B(Jump), U8(11),
87 /* 126 S> */ B(LdaSmi), I8(4), 100 /* 126 S> */ B(LdaSmi), I8(4),
88 /* 132 E> */ B(TestEqual), R(0), U8(6), 101 /* 132 E> */ B(TestEqual), R(0), U8(14),
89 B(JumpIfFalse), U8(4), 102 B(JumpIfFalse), U8(4),
90 /* 138 S> */ B(Jump), U8(5), 103 /* 138 S> */ B(Jump), U8(5),
91 B(JumpLoop), U8(40), I8(0), 104 B(JumpLoop), U8(47), I8(0),
92 /* 147 S> */ B(Ldar), R(1), 105 /* 147 S> */ B(Ldar), R(1),
93 /* 157 S> */ B(Return), 106 /* 157 S> */ B(Return),
94 ] 107 ]
95 constant pool: [ 108 constant pool: [
109 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
110 ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
96 ] 111 ]
97 handlers: [ 112 handlers: [
98 ] 113 ]
99 114
100 --- 115 ---
101 snippet: " 116 snippet: "
102 var i = 0; 117 var i = 0;
103 while (true) { 118 while (true) {
104 if (i < 0) continue; 119 if (i < 0) continue;
105 if (i == 3) break; 120 if (i == 3) break;
106 if (i == 4) break; 121 if (i == 4) break;
107 if (i == 10) continue; 122 if (i == 10) continue;
108 if (i == 5) break; 123 if (i == 5) break;
109 i = i + 1; 124 i = i + 1;
110 } 125 }
111 return i; 126 return i;
112 " 127 "
113 frame size: 1 128 frame size: 2
114 parameter count: 1 129 parameter count: 1
115 bytecode array length: 62 130 bytecode array length: 69
116 bytecodes: [ 131 bytecodes: [
117 /* 30 E> */ B(StackCheck), 132 /* 30 E> */ B(StackCheck),
118 /* 42 S> */ B(LdaZero), 133 /* 42 S> */ B(LdaConstant), U8(0),
134 B(Star), R(1),
135 B(LdaZero),
119 B(Star), R(0), 136 B(Star), R(0),
120 /* 45 E> */ B(StackCheck), 137 /* 45 E> */ B(StackCheck),
121 /* 62 S> */ B(LdaZero), 138 /* 62 S> */ B(LdaZero),
122 /* 68 E> */ B(TestLessThan), R(0), U8(2), 139 /* 68 E> */ B(TestLessThan), R(0), U8(4),
123 B(JumpIfFalse), U8(4), 140 B(JumpIfFalse), U8(4),
124 /* 73 S> */ B(Jump), U8(45), 141 /* 73 S> */ B(Jump), U8(48),
125 /* 85 S> */ B(LdaSmi), I8(3), 142 /* 85 S> */ B(LdaSmi), I8(3),
126 /* 91 E> */ B(TestEqual), R(0), U8(3), 143 /* 91 E> */ B(TestEqual), R(0), U8(5),
127 B(JumpIfFalse), U8(4), 144 B(JumpIfFalse), U8(4),
128 /* 97 S> */ B(Jump), U8(39), 145 /* 97 S> */ B(Jump), U8(42),
129 /* 106 S> */ B(LdaSmi), I8(4), 146 /* 106 S> */ B(LdaSmi), I8(4),
130 /* 112 E> */ B(TestEqual), R(0), U8(4), 147 /* 112 E> */ B(TestEqual), R(0), U8(6),
131 B(JumpIfFalse), U8(4), 148 B(JumpIfFalse), U8(4),
132 /* 118 S> */ B(Jump), U8(30), 149 /* 118 S> */ B(Jump), U8(33),
133 /* 127 S> */ B(LdaSmi), I8(10), 150 /* 127 S> */ B(LdaSmi), I8(10),
134 /* 133 E> */ B(TestEqual), R(0), U8(5), 151 /* 133 E> */ B(TestEqual), R(0), U8(7),
135 B(JumpIfFalse), U8(4), 152 B(JumpIfFalse), U8(4),
136 /* 140 S> */ B(Jump), U8(18), 153 /* 140 S> */ B(Jump), U8(21),
137 /* 152 S> */ B(LdaSmi), I8(5), 154 /* 152 S> */ B(LdaSmi), I8(5),
138 /* 158 E> */ B(TestEqual), R(0), U8(6), 155 /* 158 E> */ B(TestEqual), R(0), U8(8),
139 B(JumpIfFalse), U8(4), 156 B(JumpIfFalse), U8(4),
140 /* 164 S> */ B(Jump), U8(12), 157 /* 164 S> */ B(Jump), U8(15),
141 /* 173 S> */ B(LdaSmi), I8(1), 158 /* 173 S> */ B(LdaConstant), U8(0),
142 /* 179 E> */ B(Add), R(0), U8(7), 159 B(Star), R(1),
160 /* 179 E> */ B(AddSmi), I8(1), R(0), U8(9),
143 B(Star), R(0), 161 B(Star), R(0),
144 B(JumpLoop), U8(52), I8(0), 162 B(JumpLoop), U8(55), I8(0),
145 /* 186 S> */ B(Ldar), R(0), 163 /* 186 S> */ B(Ldar), R(0),
146 /* 196 S> */ B(Return), 164 /* 196 S> */ B(Return),
147 ] 165 ]
148 constant pool: [ 166 constant pool: [
167 ONE_BYTE_INTERNALIZED_STRING_TYPE ["i"],
149 ] 168 ]
150 handlers: [ 169 handlers: [
151 ] 170 ]
152 171
153 --- 172 ---
154 snippet: " 173 snippet: "
155 var i = 0; 174 var i = 0;
156 while (true) { 175 while (true) {
157 while (i < 3) { 176 while (i < 3) {
158 if (i == 2) break; 177 if (i == 2) break;
159 i = i + 1; 178 i = i + 1;
160 } 179 }
161 i = i + 1; 180 i = i + 1;
162 break; 181 break;
163 } 182 }
164 return i; 183 return i;
165 " 184 "
166 frame size: 1 185 frame size: 2
167 parameter count: 1 186 parameter count: 1
168 bytecode array length: 44 187 bytecode array length: 54
169 bytecodes: [ 188 bytecodes: [
170 /* 30 E> */ B(StackCheck), 189 /* 30 E> */ B(StackCheck),
171 /* 42 S> */ B(LdaZero), 190 /* 42 S> */ B(LdaConstant), U8(0),
191 B(Star), R(1),
192 B(LdaZero),
172 B(Star), R(0), 193 B(Star), R(0),
173 /* 45 E> */ B(StackCheck), 194 /* 45 E> */ B(StackCheck),
174 /* 71 S> */ B(LdaSmi), I8(3), 195 /* 71 S> */ B(LdaSmi), I8(3),
175 /* 71 E> */ B(TestLessThan), R(0), U8(2), 196 /* 71 E> */ B(TestLessThan), R(0), U8(4),
176 B(JumpIfFalse), U8(22), 197 B(JumpIfFalse), U8(25),
177 /* 62 E> */ B(StackCheck), 198 /* 62 E> */ B(StackCheck),
178 /* 82 S> */ B(LdaSmi), I8(2), 199 /* 82 S> */ B(LdaSmi), I8(2),
179 /* 88 E> */ B(TestEqual), R(0), U8(3), 200 /* 88 E> */ B(TestEqual), R(0), U8(5),
180 B(JumpIfFalse), U8(4), 201 B(JumpIfFalse), U8(4),
181 /* 94 S> */ B(Jump), U8(12), 202 /* 94 S> */ B(Jump), U8(15),
182 /* 105 S> */ B(LdaSmi), I8(1), 203 /* 105 S> */ B(LdaConstant), U8(0),
183 /* 111 E> */ B(Add), R(0), U8(4), 204 B(Star), R(1),
205 /* 111 E> */ B(AddSmi), I8(1), R(0), U8(6),
184 B(Star), R(0), 206 B(Star), R(0),
185 B(JumpLoop), U8(24), I8(1), 207 B(JumpLoop), U8(27), I8(1),
186 /* 122 S> */ B(LdaSmi), I8(1), 208 /* 122 S> */ B(LdaConstant), U8(0),
187 /* 128 E> */ B(Add), R(0), U8(5), 209 B(Star), R(1),
210 /* 128 E> */ B(AddSmi), I8(1), R(0), U8(9),
188 B(Star), R(0), 211 B(Star), R(0),
189 /* 135 S> */ B(Jump), U8(2), 212 /* 135 S> */ B(Jump), U8(2),
190 /* 144 S> */ B(Ldar), R(0), 213 /* 144 S> */ B(Ldar), R(0),
191 /* 154 S> */ B(Return), 214 /* 154 S> */ B(Return),
192 ] 215 ]
193 constant pool: [ 216 constant pool: [
217 ONE_BYTE_INTERNALIZED_STRING_TYPE ["i"],
194 ] 218 ]
195 handlers: [ 219 handlers: [
196 ] 220 ]
197 221
198 --- 222 ---
199 snippet: " 223 snippet: "
200 var x = 10; 224 var x = 10;
201 var y = 1; 225 var y = 1;
202 while (x) { 226 while (x) {
203 y = y * 12; 227 y = y * 12;
204 x = x - 1; 228 x = x - 1;
205 } 229 }
206 return y; 230 return y;
207 " 231 "
208 frame size: 2 232 frame size: 3
209 parameter count: 1 233 parameter count: 1
210 bytecode array length: 34 234 bytecode array length: 49
211 bytecodes: [ 235 bytecodes: [
212 /* 30 E> */ B(StackCheck), 236 /* 30 E> */ B(StackCheck),
213 /* 42 S> */ B(LdaSmi), I8(10), 237 /* 42 S> */ B(LdaConstant), U8(0),
238 B(Star), R(2),
239 B(LdaSmi), I8(10),
214 B(Star), R(0), 240 B(Star), R(0),
215 /* 54 S> */ B(LdaSmi), I8(1), 241 /* 54 S> */ B(LdaConstant), U8(1),
242 B(Star), R(2),
243 B(LdaSmi), I8(1),
216 B(Star), R(1), 244 B(Star), R(1),
217 /* 64 S> */ B(Ldar), R(0), 245 /* 64 S> */ B(Ldar), R(0),
218 B(JumpIfToBooleanFalse), U8(20), 246 B(JumpIfToBooleanFalse), U8(27),
219 /* 57 E> */ B(StackCheck), 247 /* 57 E> */ B(StackCheck),
220 /* 71 S> */ B(LdaSmi), I8(12), 248 /* 71 S> */ B(LdaConstant), U8(1),
221 /* 77 E> */ B(Mul), R(1), U8(2), 249 B(Star), R(2),
250 B(LdaSmi), I8(12),
251 /* 77 E> */ B(Mul), R(1), U8(6),
222 B(Star), R(1), 252 B(Star), R(1),
223 /* 85 S> */ B(LdaSmi), I8(1), 253 /* 85 S> */ B(LdaConstant), U8(0),
224 /* 91 E> */ B(Sub), R(0), U8(3), 254 B(Star), R(2),
255 /* 91 E> */ B(SubSmi), I8(1), R(0), U8(9),
225 B(Star), R(0), 256 B(Star), R(0),
226 B(JumpLoop), U8(19), I8(0), 257 B(JumpLoop), U8(26), I8(0),
227 /* 98 S> */ B(Ldar), R(1), 258 /* 98 S> */ B(Ldar), R(1),
228 /* 108 S> */ B(Return), 259 /* 108 S> */ B(Return),
229 ] 260 ]
230 constant pool: [ 261 constant pool: [
262 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
263 ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
231 ] 264 ]
232 handlers: [ 265 handlers: [
233 ] 266 ]
234 267
235 --- 268 ---
236 snippet: " 269 snippet: "
237 var x = 0; var y = 1; 270 var x = 0; var y = 1;
238 do { 271 do {
239 y = y * 10; 272 y = y * 10;
240 if (x == 5) break; 273 if (x == 5) break;
241 if (x == 6) continue; 274 if (x == 6) continue;
242 x = x + 1; 275 x = x + 1;
243 } while (x < 10); 276 } while (x < 10);
244 return y; 277 return y;
245 " 278 "
246 frame size: 2 279 frame size: 3
247 parameter count: 1 280 parameter count: 1
248 bytecode array length: 54 281 bytecode array length: 69
249 bytecodes: [ 282 bytecodes: [
250 /* 30 E> */ B(StackCheck), 283 /* 30 E> */ B(StackCheck),
251 /* 42 S> */ B(LdaZero), 284 /* 42 S> */ B(LdaConstant), U8(0),
285 B(Star), R(2),
286 B(LdaZero),
252 B(Star), R(0), 287 B(Star), R(0),
253 /* 53 S> */ B(LdaSmi), I8(1), 288 /* 53 S> */ B(LdaConstant), U8(1),
289 B(Star), R(2),
290 B(LdaSmi), I8(1),
254 B(Star), R(1), 291 B(Star), R(1),
255 /* 56 E> */ B(StackCheck), 292 /* 56 E> */ B(StackCheck),
256 /* 63 S> */ B(LdaSmi), I8(10), 293 /* 63 S> */ B(LdaConstant), U8(1),
257 /* 69 E> */ B(Mul), R(1), U8(2), 294 B(Star), R(2),
295 B(LdaSmi), I8(10),
296 /* 69 E> */ B(Mul), R(1), U8(6),
258 B(Star), R(1), 297 B(Star), R(1),
259 /* 77 S> */ B(LdaSmi), I8(5), 298 /* 77 S> */ B(LdaSmi), I8(5),
260 /* 83 E> */ B(TestEqual), R(0), U8(3), 299 /* 83 E> */ B(TestEqual), R(0), U8(9),
261 B(JumpIfFalse), U8(4), 300 B(JumpIfFalse), U8(4),
262 /* 89 S> */ B(Jump), U8(28), 301 /* 89 S> */ B(Jump), U8(31),
263 /* 98 S> */ B(LdaSmi), I8(6), 302 /* 98 S> */ B(LdaSmi), I8(6),
264 /* 104 E> */ B(TestEqual), R(0), U8(4), 303 /* 104 E> */ B(TestEqual), R(0), U8(10),
265 B(JumpIfFalse), U8(4), 304 B(JumpIfFalse), U8(4),
266 /* 110 S> */ B(Jump), U8(9), 305 /* 110 S> */ B(Jump), U8(12),
267 /* 122 S> */ B(LdaSmi), I8(1), 306 /* 122 S> */ B(LdaConstant), U8(0),
268 /* 128 E> */ B(Add), R(0), U8(5), 307 B(Star), R(2),
308 /* 128 E> */ B(AddSmi), I8(1), R(0), U8(11),
269 B(Star), R(0), 309 B(Star), R(0),
270 /* 144 S> */ B(LdaSmi), I8(10), 310 /* 144 S> */ B(LdaSmi), I8(10),
271 /* 144 E> */ B(TestLessThan), R(0), U8(6), 311 /* 144 E> */ B(TestLessThan), R(0), U8(14),
272 B(JumpIfFalse), U8(5), 312 B(JumpIfFalse), U8(5),
273 B(JumpLoop), U8(40), I8(0), 313 B(JumpLoop), U8(47), I8(0),
274 /* 151 S> */ B(Ldar), R(1), 314 /* 151 S> */ B(Ldar), R(1),
275 /* 161 S> */ B(Return), 315 /* 161 S> */ B(Return),
276 ] 316 ]
277 constant pool: [ 317 constant pool: [
318 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
319 ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
278 ] 320 ]
279 handlers: [ 321 handlers: [
280 ] 322 ]
281 323
282 --- 324 ---
283 snippet: " 325 snippet: "
284 var x = 10; 326 var x = 10;
285 var y = 1; 327 var y = 1;
286 do { 328 do {
287 y = y * 12; 329 y = y * 12;
288 x = x - 1; 330 x = x - 1;
289 } while (x); 331 } while (x);
290 return y; 332 return y;
291 " 333 "
292 frame size: 2 334 frame size: 3
293 parameter count: 1 335 parameter count: 1
294 bytecode array length: 32 336 bytecode array length: 47
295 bytecodes: [ 337 bytecodes: [
296 /* 30 E> */ B(StackCheck), 338 /* 30 E> */ B(StackCheck),
297 /* 42 S> */ B(LdaSmi), I8(10), 339 /* 42 S> */ B(LdaConstant), U8(0),
340 B(Star), R(2),
341 B(LdaSmi), I8(10),
298 B(Star), R(0), 342 B(Star), R(0),
299 /* 54 S> */ B(LdaSmi), I8(1), 343 /* 54 S> */ B(LdaConstant), U8(1),
344 B(Star), R(2),
345 B(LdaSmi), I8(1),
300 B(Star), R(1), 346 B(Star), R(1),
301 /* 57 E> */ B(StackCheck), 347 /* 57 E> */ B(StackCheck),
302 /* 64 S> */ B(LdaSmi), I8(12), 348 /* 64 S> */ B(LdaConstant), U8(1),
303 /* 70 E> */ B(Mul), R(1), U8(2), 349 B(Star), R(2),
350 B(LdaSmi), I8(12),
351 /* 70 E> */ B(Mul), R(1), U8(6),
304 B(Star), R(1), 352 B(Star), R(1),
305 /* 78 S> */ B(LdaSmi), I8(1), 353 /* 78 S> */ B(LdaConstant), U8(0),
306 /* 84 E> */ B(Sub), R(0), U8(3), 354 B(Star), R(2),
355 /* 84 E> */ B(SubSmi), I8(1), R(0), U8(9),
307 B(Star), R(0), 356 B(Star), R(0),
308 /* 98 S> */ B(JumpIfToBooleanFalse), U8(5), 357 /* 98 S> */ B(JumpIfToBooleanFalse), U8(5),
309 B(JumpLoop), U8(17), I8(0), 358 B(JumpLoop), U8(24), I8(0),
310 /* 102 S> */ B(Ldar), R(1), 359 /* 102 S> */ B(Ldar), R(1),
311 /* 112 S> */ B(Return), 360 /* 112 S> */ B(Return),
312 ] 361 ]
313 constant pool: [ 362 constant pool: [
363 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
364 ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
314 ] 365 ]
315 handlers: [ 366 handlers: [
316 ] 367 ]
317 368
318 --- 369 ---
319 snippet: " 370 snippet: "
320 var x = 0; var y = 1; 371 var x = 0; var y = 1;
321 do { 372 do {
322 y = y * 10; 373 y = y * 10;
323 if (x == 5) break; 374 if (x == 5) break;
324 x = x + 1; 375 x = x + 1;
325 if (x == 6) continue; 376 if (x == 6) continue;
326 } while (false); 377 } while (false);
327 return y; 378 return y;
328 " 379 "
329 frame size: 2 380 frame size: 3
330 parameter count: 1 381 parameter count: 1
331 bytecode array length: 44 382 bytecode array length: 59
332 bytecodes: [ 383 bytecodes: [
333 /* 30 E> */ B(StackCheck), 384 /* 30 E> */ B(StackCheck),
334 /* 42 S> */ B(LdaZero), 385 /* 42 S> */ B(LdaConstant), U8(0),
386 B(Star), R(2),
387 B(LdaZero),
335 B(Star), R(0), 388 B(Star), R(0),
336 /* 53 S> */ B(LdaSmi), I8(1), 389 /* 53 S> */ B(LdaConstant), U8(1),
390 B(Star), R(2),
391 B(LdaSmi), I8(1),
337 B(Star), R(1), 392 B(Star), R(1),
338 /* 56 E> */ B(StackCheck), 393 /* 56 E> */ B(StackCheck),
339 /* 63 S> */ B(LdaSmi), I8(10), 394 /* 63 S> */ B(LdaConstant), U8(1),
340 /* 69 E> */ B(Mul), R(1), U8(2), 395 B(Star), R(2),
396 B(LdaSmi), I8(10),
397 /* 69 E> */ B(Mul), R(1), U8(6),
341 B(Star), R(1), 398 B(Star), R(1),
342 /* 77 S> */ B(LdaSmi), I8(5), 399 /* 77 S> */ B(LdaSmi), I8(5),
343 /* 83 E> */ B(TestEqual), R(0), U8(3), 400 /* 83 E> */ B(TestEqual), R(0), U8(9),
344 B(JumpIfFalse), U8(4), 401 B(JumpIfFalse), U8(4),
345 /* 89 S> */ B(Jump), U8(18), 402 /* 89 S> */ B(Jump), U8(21),
346 /* 98 S> */ B(LdaSmi), I8(1), 403 /* 98 S> */ B(LdaConstant), U8(0),
347 /* 104 E> */ B(Add), R(0), U8(4), 404 B(Star), R(2),
405 /* 104 E> */ B(AddSmi), I8(1), R(0), U8(10),
348 B(Star), R(0), 406 B(Star), R(0),
349 /* 111 S> */ B(LdaSmi), I8(6), 407 /* 111 S> */ B(LdaSmi), I8(6),
350 /* 117 E> */ B(TestEqual), R(0), U8(5), 408 /* 117 E> */ B(TestEqual), R(0), U8(13),
351 B(JumpIfFalse), U8(4), 409 B(JumpIfFalse), U8(4),
352 /* 123 S> */ B(Jump), U8(2), 410 /* 123 S> */ B(Jump), U8(2),
353 /* 150 S> */ B(Ldar), R(1), 411 /* 150 S> */ B(Ldar), R(1),
354 /* 160 S> */ B(Return), 412 /* 160 S> */ B(Return),
355 ] 413 ]
356 constant pool: [ 414 constant pool: [
415 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
416 ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
357 ] 417 ]
358 handlers: [ 418 handlers: [
359 ] 419 ]
360 420
361 --- 421 ---
362 snippet: " 422 snippet: "
363 var x = 0; var y = 1; 423 var x = 0; var y = 1;
364 do { 424 do {
365 y = y * 10; 425 y = y * 10;
366 if (x == 5) break; 426 if (x == 5) break;
367 x = x + 1; 427 x = x + 1;
368 if (x == 6) continue; 428 if (x == 6) continue;
369 } while (true); 429 } while (true);
370 return y; 430 return y;
371 " 431 "
372 frame size: 2 432 frame size: 3
373 parameter count: 1 433 parameter count: 1
374 bytecode array length: 47 434 bytecode array length: 62
375 bytecodes: [ 435 bytecodes: [
376 /* 30 E> */ B(StackCheck), 436 /* 30 E> */ B(StackCheck),
377 /* 42 S> */ B(LdaZero), 437 /* 42 S> */ B(LdaConstant), U8(0),
438 B(Star), R(2),
439 B(LdaZero),
378 B(Star), R(0), 440 B(Star), R(0),
379 /* 53 S> */ B(LdaSmi), I8(1), 441 /* 53 S> */ B(LdaConstant), U8(1),
442 B(Star), R(2),
443 B(LdaSmi), I8(1),
380 B(Star), R(1), 444 B(Star), R(1),
381 /* 56 E> */ B(StackCheck), 445 /* 56 E> */ B(StackCheck),
382 /* 63 S> */ B(LdaSmi), I8(10), 446 /* 63 S> */ B(LdaConstant), U8(1),
383 /* 69 E> */ B(Mul), R(1), U8(2), 447 B(Star), R(2),
448 B(LdaSmi), I8(10),
449 /* 69 E> */ B(Mul), R(1), U8(6),
384 B(Star), R(1), 450 B(Star), R(1),
385 /* 77 S> */ B(LdaSmi), I8(5), 451 /* 77 S> */ B(LdaSmi), I8(5),
386 /* 83 E> */ B(TestEqual), R(0), U8(3), 452 /* 83 E> */ B(TestEqual), R(0), U8(9),
387 B(JumpIfFalse), U8(4), 453 B(JumpIfFalse), U8(4),
388 /* 89 S> */ B(Jump), U8(21), 454 /* 89 S> */ B(Jump), U8(24),
389 /* 98 S> */ B(LdaSmi), I8(1), 455 /* 98 S> */ B(LdaConstant), U8(0),
390 /* 104 E> */ B(Add), R(0), U8(4), 456 B(Star), R(2),
457 /* 104 E> */ B(AddSmi), I8(1), R(0), U8(10),
391 B(Star), R(0), 458 B(Star), R(0),
392 /* 111 S> */ B(LdaSmi), I8(6), 459 /* 111 S> */ B(LdaSmi), I8(6),
393 /* 117 E> */ B(TestEqual), R(0), U8(5), 460 /* 117 E> */ B(TestEqual), R(0), U8(13),
394 B(JumpIfFalse), U8(4), 461 B(JumpIfFalse), U8(4),
395 /* 123 S> */ B(Jump), U8(2), 462 /* 123 S> */ B(Jump), U8(2),
396 B(JumpLoop), U8(33), I8(0), 463 B(JumpLoop), U8(40), I8(0),
397 /* 149 S> */ B(Ldar), R(1), 464 /* 149 S> */ B(Ldar), R(1),
398 /* 159 S> */ B(Return), 465 /* 159 S> */ B(Return),
399 ] 466 ]
400 constant pool: [ 467 constant pool: [
468 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
469 ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
401 ] 470 ]
402 handlers: [ 471 handlers: [
403 ] 472 ]
404 473
405 --- 474 ---
406 snippet: " 475 snippet: "
407 var x = 0; 476 var x = 0;
408 for (;;) { 477 for (;;) {
409 if (x == 1) break; 478 if (x == 1) break;
410 if (x == 2) continue; 479 if (x == 2) continue;
411 x = x + 1; 480 x = x + 1;
412 } 481 }
413 " 482 "
414 frame size: 1 483 frame size: 2
415 parameter count: 1 484 parameter count: 1
416 bytecode array length: 35 485 bytecode array length: 42
417 bytecodes: [ 486 bytecodes: [
418 /* 30 E> */ B(StackCheck), 487 /* 30 E> */ B(StackCheck),
419 /* 42 S> */ B(LdaZero), 488 /* 42 S> */ B(LdaConstant), U8(0),
489 B(Star), R(1),
490 B(LdaZero),
420 B(Star), R(0), 491 B(Star), R(0),
421 /* 45 E> */ B(StackCheck), 492 /* 45 E> */ B(StackCheck),
422 /* 58 S> */ B(LdaSmi), I8(1), 493 /* 58 S> */ B(LdaSmi), I8(1),
423 /* 64 E> */ B(TestEqual), R(0), U8(2), 494 /* 64 E> */ B(TestEqual), R(0), U8(4),
424 B(JumpIfFalse), U8(4), 495 B(JumpIfFalse), U8(4),
425 /* 70 S> */ B(Jump), U8(21), 496 /* 70 S> */ B(Jump), U8(24),
426 /* 79 S> */ B(LdaSmi), I8(2), 497 /* 79 S> */ B(LdaSmi), I8(2),
427 /* 85 E> */ B(TestEqual), R(0), U8(3), 498 /* 85 E> */ B(TestEqual), R(0), U8(5),
428 B(JumpIfFalse), U8(4), 499 B(JumpIfFalse), U8(4),
429 /* 91 S> */ B(Jump), U8(9), 500 /* 91 S> */ B(Jump), U8(12),
430 /* 103 S> */ B(LdaSmi), I8(1), 501 /* 103 S> */ B(LdaConstant), U8(0),
431 /* 109 E> */ B(Add), R(0), U8(4), 502 B(Star), R(1),
503 /* 109 E> */ B(AddSmi), I8(1), R(0), U8(6),
432 B(Star), R(0), 504 B(Star), R(0),
433 B(JumpLoop), U8(26), I8(0), 505 B(JumpLoop), U8(29), I8(0),
434 B(LdaUndefined), 506 B(LdaUndefined),
435 /* 116 S> */ B(Return), 507 /* 116 S> */ B(Return),
436 ] 508 ]
437 constant pool: [ 509 constant pool: [
510 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
438 ] 511 ]
439 handlers: [ 512 handlers: [
440 ] 513 ]
441 514
442 --- 515 ---
443 snippet: " 516 snippet: "
444 for (var x = 0;;) { 517 for (var x = 0;;) {
445 if (x == 1) break; 518 if (x == 1) break;
446 if (x == 2) continue; 519 if (x == 2) continue;
447 x = x + 1; 520 x = x + 1;
448 } 521 }
449 " 522 "
450 frame size: 1 523 frame size: 2
451 parameter count: 1 524 parameter count: 1
452 bytecode array length: 35 525 bytecode array length: 42
453 bytecodes: [ 526 bytecodes: [
454 /* 30 E> */ B(StackCheck), 527 /* 30 E> */ B(StackCheck),
455 /* 47 S> */ B(LdaZero), 528 /* 47 S> */ B(LdaConstant), U8(0),
529 B(Star), R(1),
530 B(LdaZero),
456 B(Star), R(0), 531 B(Star), R(0),
457 /* 34 E> */ B(StackCheck), 532 /* 34 E> */ B(StackCheck),
458 /* 56 S> */ B(LdaSmi), I8(1), 533 /* 56 S> */ B(LdaSmi), I8(1),
459 /* 62 E> */ B(TestEqual), R(0), U8(2), 534 /* 62 E> */ B(TestEqual), R(0), U8(4),
460 B(JumpIfFalse), U8(4), 535 B(JumpIfFalse), U8(4),
461 /* 68 S> */ B(Jump), U8(21), 536 /* 68 S> */ B(Jump), U8(24),
462 /* 77 S> */ B(LdaSmi), I8(2), 537 /* 77 S> */ B(LdaSmi), I8(2),
463 /* 83 E> */ B(TestEqual), R(0), U8(3), 538 /* 83 E> */ B(TestEqual), R(0), U8(5),
464 B(JumpIfFalse), U8(4), 539 B(JumpIfFalse), U8(4),
465 /* 89 S> */ B(Jump), U8(9), 540 /* 89 S> */ B(Jump), U8(12),
466 /* 101 S> */ B(LdaSmi), I8(1), 541 /* 101 S> */ B(LdaConstant), U8(0),
467 /* 107 E> */ B(Add), R(0), U8(4), 542 B(Star), R(1),
543 /* 107 E> */ B(AddSmi), I8(1), R(0), U8(6),
468 B(Star), R(0), 544 B(Star), R(0),
469 B(JumpLoop), U8(26), I8(0), 545 B(JumpLoop), U8(29), I8(0),
470 B(LdaUndefined), 546 B(LdaUndefined),
471 /* 114 S> */ B(Return), 547 /* 114 S> */ B(Return),
472 ] 548 ]
473 constant pool: [ 549 constant pool: [
550 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
474 ] 551 ]
475 handlers: [ 552 handlers: [
476 ] 553 ]
477 554
478 --- 555 ---
479 snippet: " 556 snippet: "
480 var x = 0; 557 var x = 0;
481 for (;; x = x + 1) { 558 for (;; x = x + 1) {
482 if (x == 1) break; 559 if (x == 1) break;
483 if (x == 2) continue; 560 if (x == 2) continue;
484 } 561 }
485 " 562 "
486 frame size: 1 563 frame size: 2
487 parameter count: 1 564 parameter count: 1
488 bytecode array length: 35 565 bytecode array length: 42
489 bytecodes: [ 566 bytecodes: [
490 /* 30 E> */ B(StackCheck), 567 /* 30 E> */ B(StackCheck),
491 /* 42 S> */ B(LdaZero), 568 /* 42 S> */ B(LdaConstant), U8(0),
569 B(Star), R(1),
570 B(LdaZero),
492 B(Star), R(0), 571 B(Star), R(0),
493 /* 45 E> */ B(StackCheck), 572 /* 45 E> */ B(StackCheck),
494 /* 68 S> */ B(LdaSmi), I8(1), 573 /* 68 S> */ B(LdaSmi), I8(1),
495 /* 74 E> */ B(TestEqual), R(0), U8(3), 574 /* 74 E> */ B(TestEqual), R(0), U8(7),
496 B(JumpIfFalse), U8(4), 575 B(JumpIfFalse), U8(4),
497 /* 80 S> */ B(Jump), U8(21), 576 /* 80 S> */ B(Jump), U8(24),
498 /* 89 S> */ B(LdaSmi), I8(2), 577 /* 89 S> */ B(LdaSmi), I8(2),
499 /* 95 E> */ B(TestEqual), R(0), U8(4), 578 /* 95 E> */ B(TestEqual), R(0), U8(8),
500 B(JumpIfFalse), U8(4), 579 B(JumpIfFalse), U8(4),
501 /* 101 S> */ B(Jump), U8(2), 580 /* 101 S> */ B(Jump), U8(2),
502 /* 55 S> */ B(LdaSmi), I8(1), 581 /* 55 S> */ B(LdaConstant), U8(0),
503 /* 59 E> */ B(Add), R(0), U8(2), 582 B(Star), R(1),
583 /* 59 E> */ B(AddSmi), I8(1), R(0), U8(4),
504 B(Star), R(0), 584 B(Star), R(0),
505 B(JumpLoop), U8(26), I8(0), 585 B(JumpLoop), U8(29), I8(0),
506 B(LdaUndefined), 586 B(LdaUndefined),
507 /* 113 S> */ B(Return), 587 /* 113 S> */ B(Return),
508 ] 588 ]
509 constant pool: [ 589 constant pool: [
590 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
510 ] 591 ]
511 handlers: [ 592 handlers: [
512 ] 593 ]
513 594
514 --- 595 ---
515 snippet: " 596 snippet: "
516 for (var x = 0;; x = x + 1) { 597 for (var x = 0;; x = x + 1) {
517 if (x == 1) break; 598 if (x == 1) break;
518 if (x == 2) continue; 599 if (x == 2) continue;
519 } 600 }
520 " 601 "
521 frame size: 1 602 frame size: 2
522 parameter count: 1 603 parameter count: 1
523 bytecode array length: 35 604 bytecode array length: 42
524 bytecodes: [ 605 bytecodes: [
525 /* 30 E> */ B(StackCheck), 606 /* 30 E> */ B(StackCheck),
526 /* 47 S> */ B(LdaZero), 607 /* 47 S> */ B(LdaConstant), U8(0),
608 B(Star), R(1),
609 B(LdaZero),
527 B(Star), R(0), 610 B(Star), R(0),
528 /* 34 E> */ B(StackCheck), 611 /* 34 E> */ B(StackCheck),
529 /* 66 S> */ B(LdaSmi), I8(1), 612 /* 66 S> */ B(LdaSmi), I8(1),
530 /* 72 E> */ B(TestEqual), R(0), U8(3), 613 /* 72 E> */ B(TestEqual), R(0), U8(7),
531 B(JumpIfFalse), U8(4), 614 B(JumpIfFalse), U8(4),
532 /* 78 S> */ B(Jump), U8(21), 615 /* 78 S> */ B(Jump), U8(24),
533 /* 87 S> */ B(LdaSmi), I8(2), 616 /* 87 S> */ B(LdaSmi), I8(2),
534 /* 93 E> */ B(TestEqual), R(0), U8(4), 617 /* 93 E> */ B(TestEqual), R(0), U8(8),
535 B(JumpIfFalse), U8(4), 618 B(JumpIfFalse), U8(4),
536 /* 99 S> */ B(Jump), U8(2), 619 /* 99 S> */ B(Jump), U8(2),
537 /* 53 S> */ B(LdaSmi), I8(1), 620 /* 53 S> */ B(LdaConstant), U8(0),
538 /* 57 E> */ B(Add), R(0), U8(2), 621 B(Star), R(1),
622 /* 57 E> */ B(AddSmi), I8(1), R(0), U8(4),
539 B(Star), R(0), 623 B(Star), R(0),
540 B(JumpLoop), U8(26), I8(0), 624 B(JumpLoop), U8(29), I8(0),
541 B(LdaUndefined), 625 B(LdaUndefined),
542 /* 111 S> */ B(Return), 626 /* 111 S> */ B(Return),
543 ] 627 ]
544 constant pool: [ 628 constant pool: [
629 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
545 ] 630 ]
546 handlers: [ 631 handlers: [
547 ] 632 ]
548 633
549 --- 634 ---
550 snippet: " 635 snippet: "
551 var u = 0; 636 var u = 0;
552 for (var i = 0; i < 100; i = i + 1) { 637 for (var i = 0; i < 100; i = i + 1) {
553 u = u + 1; 638 u = u + 1;
554 continue; 639 continue;
555 } 640 }
556 " 641 "
557 frame size: 2 642 frame size: 3
558 parameter count: 1 643 parameter count: 1
559 bytecode array length: 36 644 bytecode array length: 50
560 bytecodes: [ 645 bytecodes: [
561 /* 30 E> */ B(StackCheck), 646 /* 30 E> */ B(StackCheck),
562 /* 42 S> */ B(LdaZero), 647 /* 42 S> */ B(LdaConstant), U8(0),
648 B(Star), R(2),
649 B(LdaZero),
563 B(Star), R(0), 650 B(Star), R(0),
564 /* 58 S> */ B(LdaZero), 651 /* 58 S> */ B(LdaConstant), U8(1),
652 B(Star), R(2),
653 B(LdaZero),
565 B(Star), R(1), 654 B(Star), R(1),
566 /* 63 S> */ B(LdaSmi), I8(100), 655 /* 63 S> */ B(LdaSmi), I8(100),
567 /* 63 E> */ B(TestLessThan), R(1), U8(2), 656 /* 63 E> */ B(TestLessThan), R(1), U8(6),
568 B(JumpIfFalse), U8(22), 657 B(JumpIfFalse), U8(28),
569 /* 45 E> */ B(StackCheck), 658 /* 45 E> */ B(StackCheck),
570 /* 85 S> */ B(LdaSmi), I8(1), 659 /* 85 S> */ B(LdaConstant), U8(0),
571 /* 91 E> */ B(Add), R(0), U8(4), 660 B(Star), R(2),
661 /* 91 E> */ B(AddSmi), I8(1), R(0), U8(10),
572 B(Star), R(0), 662 B(Star), R(0),
573 /* 98 S> */ B(Jump), U8(2), 663 /* 98 S> */ B(Jump), U8(2),
574 /* 72 S> */ B(LdaSmi), I8(1), 664 /* 72 S> */ B(LdaConstant), U8(1),
575 /* 76 E> */ B(Add), R(1), U8(3), 665 B(Star), R(2),
666 /* 76 E> */ B(AddSmi), I8(1), R(1), U8(7),
576 B(Star), R(1), 667 B(Star), R(1),
577 B(JumpLoop), U8(24), I8(0), 668 B(JumpLoop), U8(30), I8(0),
578 B(LdaUndefined), 669 B(LdaUndefined),
579 /* 110 S> */ B(Return), 670 /* 110 S> */ B(Return),
580 ] 671 ]
581 constant pool: [ 672 constant pool: [
673 ONE_BYTE_INTERNALIZED_STRING_TYPE ["u"],
674 ONE_BYTE_INTERNALIZED_STRING_TYPE ["i"],
582 ] 675 ]
583 handlers: [ 676 handlers: [
584 ] 677 ]
585 678
586 --- 679 ---
587 snippet: " 680 snippet: "
588 var y = 1; 681 var y = 1;
589 for (var x = 10; x; --x) { 682 for (var x = 10; x; --x) {
590 y = y * 12; 683 y = y * 12;
591 } 684 }
592 return y; 685 return y;
593 " 686 "
594 frame size: 2 687 frame size: 3
595 parameter count: 1 688 parameter count: 1
596 bytecode array length: 33 689 bytecode array length: 45
597 bytecodes: [ 690 bytecodes: [
598 /* 30 E> */ B(StackCheck), 691 /* 30 E> */ B(StackCheck),
599 /* 42 S> */ B(LdaSmi), I8(1), 692 /* 42 S> */ B(LdaConstant), U8(0),
693 B(Star), R(2),
694 B(LdaSmi), I8(1),
600 B(Star), R(0), 695 B(Star), R(0),
601 /* 58 S> */ B(LdaSmi), I8(10), 696 /* 58 S> */ B(LdaConstant), U8(1),
697 B(Star), R(2),
698 B(LdaSmi), I8(10),
602 B(Star), R(1), 699 B(Star), R(1),
603 /* 62 S> */ B(Ldar), R(1), 700 /* 62 S> */ B(Ldar), R(1),
604 B(JumpIfToBooleanFalse), U8(19), 701 B(JumpIfToBooleanFalse), U8(23),
605 /* 45 E> */ B(StackCheck), 702 /* 45 E> */ B(StackCheck),
606 /* 74 S> */ B(LdaSmi), I8(12), 703 /* 74 S> */ B(LdaConstant), U8(0),
607 /* 80 E> */ B(Mul), R(0), U8(3), 704 B(Star), R(2),
705 B(LdaSmi), I8(12),
706 /* 80 E> */ B(Mul), R(0), U8(7),
608 B(Star), R(0), 707 B(Star), R(0),
609 /* 67 S> */ B(Ldar), R(1), 708 /* 67 S> */ B(Ldar), R(1),
610 B(Dec), U8(2), 709 B(Dec), U8(6),
611 B(Star), R(1), 710 B(Star), R(1),
612 B(JumpLoop), U8(18), I8(0), 711 B(JumpLoop), U8(22), I8(0),
613 /* 88 S> */ B(Ldar), R(0), 712 /* 88 S> */ B(Ldar), R(0),
614 /* 98 S> */ B(Return), 713 /* 98 S> */ B(Return),
615 ] 714 ]
616 constant pool: [ 715 constant pool: [
716 ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
717 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
617 ] 718 ]
618 handlers: [ 719 handlers: [
619 ] 720 ]
620 721
621 --- 722 ---
622 snippet: " 723 snippet: "
623 var x = 0; 724 var x = 0;
624 for (var i = 0; false; i++) { 725 for (var i = 0; false; i++) {
625 x = x + 1; 726 x = x + 1;
626 }; 727 };
627 return x; 728 return x;
628 " 729 "
629 frame size: 2 730 frame size: 3
630 parameter count: 1 731 parameter count: 1
631 bytecode array length: 10 732 bytecode array length: 18
632 bytecodes: [ 733 bytecodes: [
633 /* 30 E> */ B(StackCheck), 734 /* 30 E> */ B(StackCheck),
634 /* 42 S> */ B(LdaZero), 735 /* 42 S> */ B(LdaConstant), U8(0),
736 B(Star), R(2),
737 B(LdaZero),
635 B(Star), R(0), 738 B(Star), R(0),
636 /* 58 S> */ B(LdaZero), 739 /* 58 S> */ B(LdaConstant), U8(1),
740 B(Star), R(2),
741 B(LdaZero),
637 B(Star), R(1), 742 B(Star), R(1),
638 /* 91 S> */ B(Ldar), R(0), 743 /* 91 S> */ B(Ldar), R(0),
639 /* 101 S> */ B(Return), 744 /* 101 S> */ B(Return),
640 ] 745 ]
641 constant pool: [ 746 constant pool: [
747 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
748 ONE_BYTE_INTERNALIZED_STRING_TYPE ["i"],
642 ] 749 ]
643 handlers: [ 750 handlers: [
644 ] 751 ]
645 752
646 --- 753 ---
647 snippet: " 754 snippet: "
648 var x = 0; 755 var x = 0;
649 for (var i = 0; true; ++i) { 756 for (var i = 0; true; ++i) {
650 x = x + 1; 757 x = x + 1;
651 if (x == 20) break; 758 if (x == 20) break;
652 }; 759 };
653 return x; 760 return x;
654 " 761 "
655 frame size: 2 762 frame size: 3
656 parameter count: 1 763 parameter count: 1
657 bytecode array length: 36 764 bytecode array length: 47
658 bytecodes: [ 765 bytecodes: [
659 /* 30 E> */ B(StackCheck), 766 /* 30 E> */ B(StackCheck),
660 /* 42 S> */ B(LdaZero), 767 /* 42 S> */ B(LdaConstant), U8(0),
768 B(Star), R(2),
769 B(LdaZero),
661 B(Star), R(0), 770 B(Star), R(0),
662 /* 58 S> */ B(LdaZero), 771 /* 58 S> */ B(LdaConstant), U8(1),
772 B(Star), R(2),
773 B(LdaZero),
663 B(Star), R(1), 774 B(Star), R(1),
664 /* 45 E> */ B(StackCheck), 775 /* 45 E> */ B(StackCheck),
665 /* 76 S> */ B(LdaSmi), I8(1), 776 /* 76 S> */ B(LdaConstant), U8(0),
666 /* 82 E> */ B(Add), R(0), U8(3), 777 B(Star), R(2),
778 /* 82 E> */ B(AddSmi), I8(1), R(0), U8(7),
667 B(Star), R(0), 779 B(Star), R(0),
668 /* 89 S> */ B(LdaSmi), I8(20), 780 /* 89 S> */ B(LdaSmi), I8(20),
669 /* 95 E> */ B(TestEqual), R(0), U8(4), 781 /* 95 E> */ B(TestEqual), R(0), U8(10),
670 B(JumpIfFalse), U8(4), 782 B(JumpIfFalse), U8(4),
671 /* 102 S> */ B(Jump), U8(11), 783 /* 102 S> */ B(Jump), U8(11),
672 /* 69 S> */ B(Ldar), R(1), 784 /* 69 S> */ B(Ldar), R(1),
673 B(Inc), U8(2), 785 B(Inc), U8(6),
674 B(Star), R(1), 786 B(Star), R(1),
675 B(JumpLoop), U8(23), I8(0), 787 B(JumpLoop), U8(26), I8(0),
676 /* 112 S> */ B(Ldar), R(0), 788 /* 112 S> */ B(Ldar), R(0),
677 /* 122 S> */ B(Return), 789 /* 122 S> */ B(Return),
678 ] 790 ]
679 constant pool: [ 791 constant pool: [
792 ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
793 ONE_BYTE_INTERNALIZED_STRING_TYPE ["i"],
680 ] 794 ]
681 handlers: [ 795 handlers: [
682 ] 796 ]
683 797
684 --- 798 ---
685 snippet: " 799 snippet: "
686 var a = 0; 800 var a = 0;
687 while (a) { 801 while (a) {
688 { 802 {
689 let z = 1; 803 let z = 1;
690 function f() { z = 2; } 804 function f() { z = 2; }
691 if (z) continue; 805 if (z) continue;
692 z++; 806 z++;
693 } 807 }
694 } 808 }
695 " 809 "
696 frame size: 4 810 frame size: 5
697 parameter count: 1 811 parameter count: 1
698 bytecode array length: 54 812 bytecode array length: 66
699 bytecodes: [ 813 bytecodes: [
700 /* 30 E> */ B(StackCheck), 814 /* 30 E> */ B(StackCheck),
701 /* 42 S> */ B(LdaZero), 815 /* 42 S> */ B(LdaConstant), U8(0),
816 B(Star), R(4),
817 B(LdaZero),
702 B(Star), R(1), 818 B(Star), R(1),
703 /* 52 S> */ B(Ldar), R(1), 819 /* 52 S> */ B(Ldar), R(1),
704 B(JumpIfToBooleanFalse), U8(46), 820 B(JumpIfToBooleanFalse), U8(54),
705 /* 45 E> */ B(StackCheck), 821 /* 45 E> */ B(StackCheck),
706 B(Ldar), R(closure), 822 B(Ldar), R(closure),
707 B(CreateBlockContext), U8(0), 823 B(CreateBlockContext), U8(1),
708 B(PushContext), R(3), 824 B(PushContext), R(3),
709 B(LdaTheHole), 825 B(LdaTheHole),
710 B(StaCurrentContextSlot), U8(4), 826 B(StaCurrentContextSlot), U8(4),
711 B(CreateClosure), U8(1), U8(2), U8(2), 827 B(CreateClosure), U8(2), U8(4), U8(2),
712 B(Star), R(0), 828 B(Star), R(0),
713 /* 73 S> */ B(LdaSmi), I8(1), 829 /* 73 S> */ B(LdaConstant), U8(3),
830 B(Star), R(4),
831 B(LdaSmi), I8(1),
714 /* 73 E> */ B(StaCurrentContextSlot), U8(4), 832 /* 73 E> */ B(StaCurrentContextSlot), U8(4),
833 B(LdaConstant), U8(4),
834 B(Star), R(4),
715 B(Mov), R(0), R(2), 835 B(Mov), R(0), R(2),
716 /* 106 S> */ B(LdaCurrentContextSlot), U8(4), 836 /* 106 S> */ B(LdaCurrentContextSlot), U8(4),
717 B(JumpIfToBooleanFalse), U8(8), 837 B(JumpIfToBooleanFalse), U8(8),
718 /* 113 S> */ B(PopContext), R(3), 838 /* 113 S> */ B(PopContext), R(3),
719 B(PopContext), R(3), 839 B(PopContext), R(3),
720 B(Jump), U8(10), 840 B(Jump), U8(10),
721 /* 126 S> */ B(LdaCurrentContextSlot), U8(4), 841 /* 126 S> */ B(LdaCurrentContextSlot), U8(4),
722 B(Inc), U8(3), 842 B(Inc), U8(9),
723 /* 127 E> */ B(StaCurrentContextSlot), U8(4), 843 /* 127 E> */ B(StaCurrentContextSlot), U8(4),
724 B(PopContext), R(3), 844 B(PopContext), R(3),
725 B(JumpLoop), U8(45), I8(0), 845 B(JumpLoop), U8(53), I8(0),
726 B(LdaUndefined), 846 B(LdaUndefined),
727 /* 137 S> */ B(Return), 847 /* 137 S> */ B(Return),
728 ] 848 ]
729 constant pool: [ 849 constant pool: [
850 ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
730 FIXED_ARRAY_TYPE, 851 FIXED_ARRAY_TYPE,
731 SHARED_FUNCTION_INFO_TYPE, 852 SHARED_FUNCTION_INFO_TYPE,
853 ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"],
854 ONE_BYTE_INTERNALIZED_STRING_TYPE ["f"],
732 ] 855 ]
733 handlers: [ 856 handlers: [
734 ] 857 ]
735 858
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698