OLD | NEW |
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 for (var p of [0, 1, 2]) {} | 10 for (var p of [0, 1, 2]) {} |
11 " | 11 " |
12 frame size: 15 | 12 frame size: 15 |
13 parameter count: 1 | 13 parameter count: 1 |
14 bytecode array length: 282 | 14 bytecode array length: 274 |
15 bytecodes: [ | 15 bytecodes: [ |
16 /* 30 E> */ B(StackCheck), | 16 /* 30 E> */ B(StackCheck), |
17 B(LdaZero), | 17 B(LdaZero), |
18 B(Star), R(4), | 18 B(Star), R(4), |
19 B(Mov), R(context), R(11), | 19 B(Mov), R(context), R(11), |
20 B(Mov), R(context), R(12), | 20 B(Mov), R(context), R(12), |
21 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(9), | 21 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(9), |
22 B(Star), R(14), | 22 B(Star), R(14), |
23 B(LdaConstant), U8(1), | 23 B(LdaConstant), U8(1), |
24 /* 48 E> */ B(LdaKeyedProperty), R(14), U8(4), | 24 /* 48 E> */ B(LdaKeyedProperty), R(14), U8(4), |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 B(LdaCurrentContextSlot), U8(4), | 59 B(LdaCurrentContextSlot), U8(4), |
60 B(Star), R(13), | 60 B(Star), R(13), |
61 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), | 61 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), |
62 B(PopContext), R(8), | 62 B(PopContext), R(8), |
63 B(LdaSmi), U8(-1), | 63 B(LdaSmi), U8(-1), |
64 B(Star), R(9), | 64 B(Star), R(9), |
65 B(Jump), U8(7), | 65 B(Jump), U8(7), |
66 B(Star), R(10), | 66 B(Star), R(10), |
67 B(LdaZero), | 67 B(LdaZero), |
68 B(Star), R(9), | 68 B(Star), R(9), |
69 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 69 B(LdaTheHole), |
| 70 B(SetPendingMessage), |
70 B(Star), R(11), | 71 B(Star), R(11), |
71 B(LdaZero), | 72 B(LdaZero), |
72 B(TestEqualStrict), R(4), U8(15), | 73 B(TestEqualStrict), R(4), U8(15), |
73 B(JumpIfTrue), U8(122), | 74 B(JumpIfTrue), U8(119), |
74 B(LdaUndefined), | 75 B(LdaUndefined), |
75 B(TestEqualStrict), R(2), U8(16), | 76 B(TestEqualStrict), R(2), U8(16), |
76 B(JumpIfTrue), U8(116), | 77 B(JumpIfTrue), U8(113), |
77 B(LdaNamedProperty), R(2), U8(7), U8(17), | 78 B(LdaNamedProperty), R(2), U8(7), U8(17), |
78 B(Star), R(6), | 79 B(Star), R(6), |
79 B(LdaNull), | 80 B(LdaNull), |
80 B(TestEqual), R(6), U8(19), | 81 B(TestEqual), R(6), U8(19), |
81 B(JumpIfFalse), U8(4), | 82 B(JumpIfFalse), U8(4), |
82 B(Jump), U8(102), | 83 B(Jump), U8(99), |
83 B(LdaSmi), U8(1), | 84 B(LdaSmi), U8(1), |
84 B(TestEqualStrict), R(4), U8(20), | 85 B(TestEqualStrict), R(4), U8(20), |
85 B(JumpIfFalse), U8(70), | 86 B(JumpIfFalse), U8(67), |
86 B(Ldar), R(6), | 87 B(Ldar), R(6), |
87 B(TypeOf), | 88 B(TypeOf), |
88 B(Star), R(12), | 89 B(Star), R(12), |
89 B(LdaConstant), U8(8), | 90 B(LdaConstant), U8(8), |
90 B(TestEqualStrict), R(12), U8(21), | 91 B(TestEqualStrict), R(12), U8(21), |
91 B(JumpIfFalse), U8(4), | 92 B(JumpIfFalse), U8(4), |
92 B(Jump), U8(18), | 93 B(Jump), U8(18), |
93 B(Wide), B(LdaSmi), U16(130), | 94 B(Wide), B(LdaSmi), U16(130), |
94 B(Star), R(12), | 95 B(Star), R(12), |
95 B(LdaConstant), U8(9), | 96 B(LdaConstant), U8(9), |
96 B(Star), R(13), | 97 B(Star), R(13), |
97 B(CallRuntime), U16(Runtime::kNewTypeError), R(12), U8(2), | 98 B(CallRuntime), U16(Runtime::kNewTypeError), R(12), U8(2), |
98 B(Throw), | 99 B(Throw), |
99 B(Mov), R(context), R(12), | 100 B(Mov), R(context), R(12), |
100 B(Mov), R(6), R(13), | 101 B(Mov), R(6), R(13), |
101 B(Mov), R(2), R(14), | 102 B(Mov), R(2), R(14), |
102 B(InvokeIntrinsic), U8(Runtime::k_Call), R(13), U8(2), | 103 B(InvokeIntrinsic), U8(Runtime::k_Call), R(13), U8(2), |
103 B(Jump), U8(23), | 104 B(Jump), U8(20), |
104 B(Star), R(13), | 105 B(Star), R(13), |
105 B(Ldar), R(closure), | 106 B(Ldar), R(closure), |
106 B(CreateCatchContext), R(13), U8(5), U8(10), | 107 B(CreateCatchContext), R(13), U8(5), U8(10), |
107 B(Star), R(12), | 108 B(Star), R(12), |
108 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 109 B(LdaTheHole), |
| 110 B(SetPendingMessage), |
109 B(Ldar), R(12), | 111 B(Ldar), R(12), |
110 B(PushContext), R(8), | 112 B(PushContext), R(8), |
111 B(PopContext), R(8), | 113 B(PopContext), R(8), |
112 B(Jump), U8(27), | 114 B(Jump), U8(27), |
113 B(Mov), R(6), R(12), | 115 B(Mov), R(6), R(12), |
114 B(Mov), R(2), R(13), | 116 B(Mov), R(2), R(13), |
115 B(InvokeIntrinsic), U8(Runtime::k_Call), R(12), U8(2), | 117 B(InvokeIntrinsic), U8(Runtime::k_Call), R(12), U8(2), |
116 B(Star), R(7), | 118 B(Star), R(7), |
117 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(7), U8(1), | 119 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(7), U8(1), |
118 B(JumpIfToBooleanFalse), U8(4), | 120 B(JumpIfToBooleanFalse), U8(4), |
119 B(Jump), U8(7), | 121 B(Jump), U8(7), |
120 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(7), U8(1), | 122 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(7), U8(1), |
121 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
1), U8(1), | 123 B(Ldar), R(11), |
| 124 B(SetPendingMessage), |
122 B(LdaZero), | 125 B(LdaZero), |
123 B(TestEqualStrict), R(9), U8(0), | 126 B(TestEqualStrict), R(9), U8(0), |
124 B(JumpIfTrue), U8(4), | 127 B(JumpIfTrue), U8(4), |
125 B(Jump), U8(5), | 128 B(Jump), U8(5), |
126 B(Ldar), R(10), | 129 B(Ldar), R(10), |
127 B(ReThrow), | 130 B(ReThrow), |
128 B(LdaUndefined), | 131 B(LdaUndefined), |
129 /* 62 S> */ B(Return), | 132 /* 62 S> */ B(Return), |
130 ] | 133 ] |
131 constant pool: [ | 134 constant pool: [ |
132 FIXED_ARRAY_TYPE, | 135 FIXED_ARRAY_TYPE, |
133 SYMBOL_TYPE, | 136 SYMBOL_TYPE, |
134 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], | 137 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], |
135 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], | 138 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], |
136 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], | 139 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], |
137 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 140 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
138 FIXED_ARRAY_TYPE, | 141 FIXED_ARRAY_TYPE, |
139 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], | 142 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], |
140 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], | 143 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], |
141 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], | 144 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], |
142 FIXED_ARRAY_TYPE, | 145 FIXED_ARRAY_TYPE, |
143 ] | 146 ] |
144 handlers: [ | 147 handlers: [ |
145 [7, 120, 126], | 148 [7, 120, 126], |
146 [10, 84, 86], | 149 [10, 84, 86], |
147 [204, 214, 216], | 150 [201, 211, 213], |
148 ] | 151 ] |
149 | 152 |
150 --- | 153 --- |
151 snippet: " | 154 snippet: " |
152 var x = 'potatoes'; | 155 var x = 'potatoes'; |
153 for (var p of x) { return p; } | 156 for (var p of x) { return p; } |
154 " | 157 " |
155 frame size: 16 | 158 frame size: 16 |
156 parameter count: 1 | 159 parameter count: 1 |
157 bytecode array length: 293 | 160 bytecode array length: 285 |
158 bytecodes: [ | 161 bytecodes: [ |
159 /* 30 E> */ B(StackCheck), | 162 /* 30 E> */ B(StackCheck), |
160 /* 42 S> */ B(LdaConstant), U8(0), | 163 /* 42 S> */ B(LdaConstant), U8(0), |
161 B(Star), R(0), | 164 B(Star), R(0), |
162 B(LdaZero), | 165 B(LdaZero), |
163 B(Star), R(5), | 166 B(Star), R(5), |
164 B(Mov), R(context), R(12), | 167 B(Mov), R(context), R(12), |
165 B(Mov), R(context), R(13), | 168 B(Mov), R(context), R(13), |
166 /* 68 S> */ B(LdaConstant), U8(1), | 169 /* 68 S> */ B(LdaConstant), U8(1), |
167 /* 68 E> */ B(LdaKeyedProperty), R(0), U8(4), | 170 /* 68 E> */ B(LdaKeyedProperty), R(0), U8(4), |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
203 B(LdaCurrentContextSlot), U8(4), | 206 B(LdaCurrentContextSlot), U8(4), |
204 B(Star), R(14), | 207 B(Star), R(14), |
205 B(CallRuntime), U16(Runtime::kReThrow), R(14), U8(1), | 208 B(CallRuntime), U16(Runtime::kReThrow), R(14), U8(1), |
206 B(PopContext), R(9), | 209 B(PopContext), R(9), |
207 B(LdaSmi), U8(-1), | 210 B(LdaSmi), U8(-1), |
208 B(Star), R(10), | 211 B(Star), R(10), |
209 B(Jump), U8(8), | 212 B(Jump), U8(8), |
210 B(Star), R(11), | 213 B(Star), R(11), |
211 B(LdaSmi), U8(1), | 214 B(LdaSmi), U8(1), |
212 B(Star), R(10), | 215 B(Star), R(10), |
213 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 216 B(LdaTheHole), |
| 217 B(SetPendingMessage), |
214 B(Star), R(12), | 218 B(Star), R(12), |
215 B(LdaZero), | 219 B(LdaZero), |
216 B(TestEqualStrict), R(5), U8(15), | 220 B(TestEqualStrict), R(5), U8(15), |
217 B(JumpIfTrue), U8(122), | 221 B(JumpIfTrue), U8(119), |
218 B(LdaUndefined), | 222 B(LdaUndefined), |
219 B(TestEqualStrict), R(3), U8(16), | 223 B(TestEqualStrict), R(3), U8(16), |
220 B(JumpIfTrue), U8(116), | 224 B(JumpIfTrue), U8(113), |
221 B(LdaNamedProperty), R(3), U8(7), U8(17), | 225 B(LdaNamedProperty), R(3), U8(7), U8(17), |
222 B(Star), R(7), | 226 B(Star), R(7), |
223 B(LdaNull), | 227 B(LdaNull), |
224 B(TestEqual), R(7), U8(19), | 228 B(TestEqual), R(7), U8(19), |
225 B(JumpIfFalse), U8(4), | 229 B(JumpIfFalse), U8(4), |
226 B(Jump), U8(102), | 230 B(Jump), U8(99), |
227 B(LdaSmi), U8(1), | 231 B(LdaSmi), U8(1), |
228 B(TestEqualStrict), R(5), U8(20), | 232 B(TestEqualStrict), R(5), U8(20), |
229 B(JumpIfFalse), U8(70), | 233 B(JumpIfFalse), U8(67), |
230 B(Ldar), R(7), | 234 B(Ldar), R(7), |
231 B(TypeOf), | 235 B(TypeOf), |
232 B(Star), R(13), | 236 B(Star), R(13), |
233 B(LdaConstant), U8(8), | 237 B(LdaConstant), U8(8), |
234 B(TestEqualStrict), R(13), U8(21), | 238 B(TestEqualStrict), R(13), U8(21), |
235 B(JumpIfFalse), U8(4), | 239 B(JumpIfFalse), U8(4), |
236 B(Jump), U8(18), | 240 B(Jump), U8(18), |
237 B(Wide), B(LdaSmi), U16(130), | 241 B(Wide), B(LdaSmi), U16(130), |
238 B(Star), R(13), | 242 B(Star), R(13), |
239 B(LdaConstant), U8(9), | 243 B(LdaConstant), U8(9), |
240 B(Star), R(14), | 244 B(Star), R(14), |
241 B(CallRuntime), U16(Runtime::kNewTypeError), R(13), U8(2), | 245 B(CallRuntime), U16(Runtime::kNewTypeError), R(13), U8(2), |
242 B(Throw), | 246 B(Throw), |
243 B(Mov), R(context), R(13), | 247 B(Mov), R(context), R(13), |
244 B(Mov), R(7), R(14), | 248 B(Mov), R(7), R(14), |
245 B(Mov), R(3), R(15), | 249 B(Mov), R(3), R(15), |
246 B(InvokeIntrinsic), U8(Runtime::k_Call), R(14), U8(2), | 250 B(InvokeIntrinsic), U8(Runtime::k_Call), R(14), U8(2), |
247 B(Jump), U8(23), | 251 B(Jump), U8(20), |
248 B(Star), R(14), | 252 B(Star), R(14), |
249 B(Ldar), R(closure), | 253 B(Ldar), R(closure), |
250 B(CreateCatchContext), R(14), U8(5), U8(10), | 254 B(CreateCatchContext), R(14), U8(5), U8(10), |
251 B(Star), R(13), | 255 B(Star), R(13), |
252 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 256 B(LdaTheHole), |
| 257 B(SetPendingMessage), |
253 B(Ldar), R(13), | 258 B(Ldar), R(13), |
254 B(PushContext), R(9), | 259 B(PushContext), R(9), |
255 B(PopContext), R(9), | 260 B(PopContext), R(9), |
256 B(Jump), U8(27), | 261 B(Jump), U8(27), |
257 B(Mov), R(7), R(13), | 262 B(Mov), R(7), R(13), |
258 B(Mov), R(3), R(14), | 263 B(Mov), R(3), R(14), |
259 B(InvokeIntrinsic), U8(Runtime::k_Call), R(13), U8(2), | 264 B(InvokeIntrinsic), U8(Runtime::k_Call), R(13), U8(2), |
260 B(Star), R(8), | 265 B(Star), R(8), |
261 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(8), U8(1), | 266 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(8), U8(1), |
262 B(JumpIfToBooleanFalse), U8(4), | 267 B(JumpIfToBooleanFalse), U8(4), |
263 B(Jump), U8(7), | 268 B(Jump), U8(7), |
264 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(8), U8(1), | 269 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(8), U8(1), |
265 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
2), U8(1), | 270 B(Ldar), R(12), |
| 271 B(SetPendingMessage), |
266 B(LdaZero), | 272 B(LdaZero), |
267 B(TestEqualStrict), R(10), U8(0), | 273 B(TestEqualStrict), R(10), U8(0), |
268 B(JumpIfTrue), U8(11), | 274 B(JumpIfTrue), U8(11), |
269 B(LdaSmi), U8(1), | 275 B(LdaSmi), U8(1), |
270 B(TestEqualStrict), R(10), U8(0), | 276 B(TestEqualStrict), R(10), U8(0), |
271 B(JumpIfTrue), U8(7), | 277 B(JumpIfTrue), U8(7), |
272 B(Jump), U8(8), | 278 B(Jump), U8(8), |
273 B(Ldar), R(11), | 279 B(Ldar), R(11), |
274 /* 85 S> */ B(Return), | 280 /* 85 S> */ B(Return), |
275 B(Ldar), R(11), | 281 B(Ldar), R(11), |
(...skipping 10 matching lines...) Expand all Loading... |
286 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 292 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
287 FIXED_ARRAY_TYPE, | 293 FIXED_ARRAY_TYPE, |
288 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], | 294 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], |
289 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], | 295 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], |
290 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], | 296 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], |
291 FIXED_ARRAY_TYPE, | 297 FIXED_ARRAY_TYPE, |
292 ] | 298 ] |
293 handlers: [ | 299 handlers: [ |
294 [11, 120, 126], | 300 [11, 120, 126], |
295 [14, 84, 86], | 301 [14, 84, 86], |
296 [205, 215, 217], | 302 [202, 212, 214], |
297 ] | 303 ] |
298 | 304 |
299 --- | 305 --- |
300 snippet: " | 306 snippet: " |
301 for (var x of [10, 20, 30]) { | 307 for (var x of [10, 20, 30]) { |
302 if (x == 10) continue; | 308 if (x == 10) continue; |
303 if (x == 20) break; | 309 if (x == 20) break; |
304 } | 310 } |
305 " | 311 " |
306 frame size: 15 | 312 frame size: 15 |
307 parameter count: 1 | 313 parameter count: 1 |
308 bytecode array length: 300 | 314 bytecode array length: 292 |
309 bytecodes: [ | 315 bytecodes: [ |
310 /* 30 E> */ B(StackCheck), | 316 /* 30 E> */ B(StackCheck), |
311 B(LdaZero), | 317 B(LdaZero), |
312 B(Star), R(4), | 318 B(Star), R(4), |
313 B(Mov), R(context), R(11), | 319 B(Mov), R(context), R(11), |
314 B(Mov), R(context), R(12), | 320 B(Mov), R(context), R(12), |
315 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(9), | 321 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(9), |
316 B(Star), R(14), | 322 B(Star), R(14), |
317 B(LdaConstant), U8(1), | 323 B(LdaConstant), U8(1), |
318 /* 48 E> */ B(LdaKeyedProperty), R(14), U8(4), | 324 /* 48 E> */ B(LdaKeyedProperty), R(14), U8(4), |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
361 B(LdaCurrentContextSlot), U8(4), | 367 B(LdaCurrentContextSlot), U8(4), |
362 B(Star), R(13), | 368 B(Star), R(13), |
363 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), | 369 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), |
364 B(PopContext), R(8), | 370 B(PopContext), R(8), |
365 B(LdaSmi), U8(-1), | 371 B(LdaSmi), U8(-1), |
366 B(Star), R(9), | 372 B(Star), R(9), |
367 B(Jump), U8(7), | 373 B(Jump), U8(7), |
368 B(Star), R(10), | 374 B(Star), R(10), |
369 B(LdaZero), | 375 B(LdaZero), |
370 B(Star), R(9), | 376 B(Star), R(9), |
371 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 377 B(LdaTheHole), |
| 378 B(SetPendingMessage), |
372 B(Star), R(11), | 379 B(Star), R(11), |
373 B(LdaZero), | 380 B(LdaZero), |
374 B(TestEqualStrict), R(4), U8(17), | 381 B(TestEqualStrict), R(4), U8(17), |
375 B(JumpIfTrue), U8(122), | 382 B(JumpIfTrue), U8(119), |
376 B(LdaUndefined), | 383 B(LdaUndefined), |
377 B(TestEqualStrict), R(2), U8(18), | 384 B(TestEqualStrict), R(2), U8(18), |
378 B(JumpIfTrue), U8(116), | 385 B(JumpIfTrue), U8(113), |
379 B(LdaNamedProperty), R(2), U8(7), U8(19), | 386 B(LdaNamedProperty), R(2), U8(7), U8(19), |
380 B(Star), R(6), | 387 B(Star), R(6), |
381 B(LdaNull), | 388 B(LdaNull), |
382 B(TestEqual), R(6), U8(21), | 389 B(TestEqual), R(6), U8(21), |
383 B(JumpIfFalse), U8(4), | 390 B(JumpIfFalse), U8(4), |
384 B(Jump), U8(102), | 391 B(Jump), U8(99), |
385 B(LdaSmi), U8(1), | 392 B(LdaSmi), U8(1), |
386 B(TestEqualStrict), R(4), U8(22), | 393 B(TestEqualStrict), R(4), U8(22), |
387 B(JumpIfFalse), U8(70), | 394 B(JumpIfFalse), U8(67), |
388 B(Ldar), R(6), | 395 B(Ldar), R(6), |
389 B(TypeOf), | 396 B(TypeOf), |
390 B(Star), R(12), | 397 B(Star), R(12), |
391 B(LdaConstant), U8(8), | 398 B(LdaConstant), U8(8), |
392 B(TestEqualStrict), R(12), U8(23), | 399 B(TestEqualStrict), R(12), U8(23), |
393 B(JumpIfFalse), U8(4), | 400 B(JumpIfFalse), U8(4), |
394 B(Jump), U8(18), | 401 B(Jump), U8(18), |
395 B(Wide), B(LdaSmi), U16(130), | 402 B(Wide), B(LdaSmi), U16(130), |
396 B(Star), R(12), | 403 B(Star), R(12), |
397 B(LdaConstant), U8(9), | 404 B(LdaConstant), U8(9), |
398 B(Star), R(13), | 405 B(Star), R(13), |
399 B(CallRuntime), U16(Runtime::kNewTypeError), R(12), U8(2), | 406 B(CallRuntime), U16(Runtime::kNewTypeError), R(12), U8(2), |
400 B(Throw), | 407 B(Throw), |
401 B(Mov), R(context), R(12), | 408 B(Mov), R(context), R(12), |
402 B(Mov), R(6), R(13), | 409 B(Mov), R(6), R(13), |
403 B(Mov), R(2), R(14), | 410 B(Mov), R(2), R(14), |
404 B(InvokeIntrinsic), U8(Runtime::k_Call), R(13), U8(2), | 411 B(InvokeIntrinsic), U8(Runtime::k_Call), R(13), U8(2), |
405 B(Jump), U8(23), | 412 B(Jump), U8(20), |
406 B(Star), R(13), | 413 B(Star), R(13), |
407 B(Ldar), R(closure), | 414 B(Ldar), R(closure), |
408 B(CreateCatchContext), R(13), U8(5), U8(10), | 415 B(CreateCatchContext), R(13), U8(5), U8(10), |
409 B(Star), R(12), | 416 B(Star), R(12), |
410 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 417 B(LdaTheHole), |
| 418 B(SetPendingMessage), |
411 B(Ldar), R(12), | 419 B(Ldar), R(12), |
412 B(PushContext), R(8), | 420 B(PushContext), R(8), |
413 B(PopContext), R(8), | 421 B(PopContext), R(8), |
414 B(Jump), U8(27), | 422 B(Jump), U8(27), |
415 B(Mov), R(6), R(12), | 423 B(Mov), R(6), R(12), |
416 B(Mov), R(2), R(13), | 424 B(Mov), R(2), R(13), |
417 B(InvokeIntrinsic), U8(Runtime::k_Call), R(12), U8(2), | 425 B(InvokeIntrinsic), U8(Runtime::k_Call), R(12), U8(2), |
418 B(Star), R(7), | 426 B(Star), R(7), |
419 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(7), U8(1), | 427 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(7), U8(1), |
420 B(JumpIfToBooleanFalse), U8(4), | 428 B(JumpIfToBooleanFalse), U8(4), |
421 B(Jump), U8(7), | 429 B(Jump), U8(7), |
422 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(7), U8(1), | 430 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(7), U8(1), |
423 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
1), U8(1), | 431 B(Ldar), R(11), |
| 432 B(SetPendingMessage), |
424 B(LdaZero), | 433 B(LdaZero), |
425 B(TestEqualStrict), R(9), U8(0), | 434 B(TestEqualStrict), R(9), U8(0), |
426 B(JumpIfTrue), U8(4), | 435 B(JumpIfTrue), U8(4), |
427 B(Jump), U8(5), | 436 B(Jump), U8(5), |
428 B(Ldar), R(10), | 437 B(Ldar), R(10), |
429 B(ReThrow), | 438 B(ReThrow), |
430 B(LdaUndefined), | 439 B(LdaUndefined), |
431 /* 113 S> */ B(Return), | 440 /* 113 S> */ B(Return), |
432 ] | 441 ] |
433 constant pool: [ | 442 constant pool: [ |
434 FIXED_ARRAY_TYPE, | 443 FIXED_ARRAY_TYPE, |
435 SYMBOL_TYPE, | 444 SYMBOL_TYPE, |
436 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], | 445 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], |
437 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], | 446 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], |
438 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], | 447 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], |
439 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 448 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
440 FIXED_ARRAY_TYPE, | 449 FIXED_ARRAY_TYPE, |
441 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], | 450 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], |
442 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], | 451 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], |
443 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], | 452 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], |
444 FIXED_ARRAY_TYPE, | 453 FIXED_ARRAY_TYPE, |
445 ] | 454 ] |
446 handlers: [ | 455 handlers: [ |
447 [7, 138, 144], | 456 [7, 138, 144], |
448 [10, 102, 104], | 457 [10, 102, 104], |
449 [222, 232, 234], | 458 [219, 229, 231], |
450 ] | 459 ] |
451 | 460 |
452 --- | 461 --- |
453 snippet: " | 462 snippet: " |
454 var x = { 'a': 1, 'b': 2 }; | 463 var x = { 'a': 1, 'b': 2 }; |
455 for (x['a'] of [1,2,3]) { return x['a']; } | 464 for (x['a'] of [1,2,3]) { return x['a']; } |
456 " | 465 " |
457 frame size: 14 | 466 frame size: 14 |
458 parameter count: 1 | 467 parameter count: 1 |
459 bytecode array length: 307 | 468 bytecode array length: 299 |
460 bytecodes: [ | 469 bytecodes: [ |
461 /* 30 E> */ B(StackCheck), | 470 /* 30 E> */ B(StackCheck), |
462 /* 42 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), R(8), | 471 /* 42 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), R(8), |
463 B(Mov), R(8), R(0), | 472 B(Mov), R(8), R(0), |
464 B(LdaZero), | 473 B(LdaZero), |
465 B(Star), R(3), | 474 B(Star), R(3), |
466 B(Mov), R(context), R(10), | 475 B(Mov), R(context), R(10), |
467 B(Mov), R(context), R(11), | 476 B(Mov), R(context), R(11), |
468 /* 77 S> */ B(CreateArrayLiteral), U8(1), U8(1), U8(9), | 477 /* 77 S> */ B(CreateArrayLiteral), U8(1), U8(1), U8(9), |
469 B(Star), R(13), | 478 B(Star), R(13), |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
509 B(LdaCurrentContextSlot), U8(4), | 518 B(LdaCurrentContextSlot), U8(4), |
510 B(Star), R(12), | 519 B(Star), R(12), |
511 B(CallRuntime), U16(Runtime::kReThrow), R(12), U8(1), | 520 B(CallRuntime), U16(Runtime::kReThrow), R(12), U8(1), |
512 B(PopContext), R(7), | 521 B(PopContext), R(7), |
513 B(LdaSmi), U8(-1), | 522 B(LdaSmi), U8(-1), |
514 B(Star), R(8), | 523 B(Star), R(8), |
515 B(Jump), U8(8), | 524 B(Jump), U8(8), |
516 B(Star), R(9), | 525 B(Star), R(9), |
517 B(LdaSmi), U8(1), | 526 B(LdaSmi), U8(1), |
518 B(Star), R(8), | 527 B(Star), R(8), |
519 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 528 B(LdaTheHole), |
| 529 B(SetPendingMessage), |
520 B(Star), R(10), | 530 B(Star), R(10), |
521 B(LdaZero), | 531 B(LdaZero), |
522 B(TestEqualStrict), R(3), U8(19), | 532 B(TestEqualStrict), R(3), U8(19), |
523 B(JumpIfTrue), U8(122), | 533 B(JumpIfTrue), U8(119), |
524 B(LdaUndefined), | 534 B(LdaUndefined), |
525 B(TestEqualStrict), R(1), U8(20), | 535 B(TestEqualStrict), R(1), U8(20), |
526 B(JumpIfTrue), U8(116), | 536 B(JumpIfTrue), U8(113), |
527 B(LdaNamedProperty), R(1), U8(9), U8(21), | 537 B(LdaNamedProperty), R(1), U8(9), U8(21), |
528 B(Star), R(5), | 538 B(Star), R(5), |
529 B(LdaNull), | 539 B(LdaNull), |
530 B(TestEqual), R(5), U8(23), | 540 B(TestEqual), R(5), U8(23), |
531 B(JumpIfFalse), U8(4), | 541 B(JumpIfFalse), U8(4), |
532 B(Jump), U8(102), | 542 B(Jump), U8(99), |
533 B(LdaSmi), U8(1), | 543 B(LdaSmi), U8(1), |
534 B(TestEqualStrict), R(3), U8(24), | 544 B(TestEqualStrict), R(3), U8(24), |
535 B(JumpIfFalse), U8(70), | 545 B(JumpIfFalse), U8(67), |
536 B(Ldar), R(5), | 546 B(Ldar), R(5), |
537 B(TypeOf), | 547 B(TypeOf), |
538 B(Star), R(11), | 548 B(Star), R(11), |
539 B(LdaConstant), U8(10), | 549 B(LdaConstant), U8(10), |
540 B(TestEqualStrict), R(11), U8(25), | 550 B(TestEqualStrict), R(11), U8(25), |
541 B(JumpIfFalse), U8(4), | 551 B(JumpIfFalse), U8(4), |
542 B(Jump), U8(18), | 552 B(Jump), U8(18), |
543 B(Wide), B(LdaSmi), U16(130), | 553 B(Wide), B(LdaSmi), U16(130), |
544 B(Star), R(11), | 554 B(Star), R(11), |
545 B(LdaConstant), U8(11), | 555 B(LdaConstant), U8(11), |
546 B(Star), R(12), | 556 B(Star), R(12), |
547 B(CallRuntime), U16(Runtime::kNewTypeError), R(11), U8(2), | 557 B(CallRuntime), U16(Runtime::kNewTypeError), R(11), U8(2), |
548 B(Throw), | 558 B(Throw), |
549 B(Mov), R(context), R(11), | 559 B(Mov), R(context), R(11), |
550 B(Mov), R(5), R(12), | 560 B(Mov), R(5), R(12), |
551 B(Mov), R(1), R(13), | 561 B(Mov), R(1), R(13), |
552 B(InvokeIntrinsic), U8(Runtime::k_Call), R(12), U8(2), | 562 B(InvokeIntrinsic), U8(Runtime::k_Call), R(12), U8(2), |
553 B(Jump), U8(23), | 563 B(Jump), U8(20), |
554 B(Star), R(12), | 564 B(Star), R(12), |
555 B(Ldar), R(closure), | 565 B(Ldar), R(closure), |
556 B(CreateCatchContext), R(12), U8(7), U8(12), | 566 B(CreateCatchContext), R(12), U8(7), U8(12), |
557 B(Star), R(11), | 567 B(Star), R(11), |
558 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 568 B(LdaTheHole), |
| 569 B(SetPendingMessage), |
559 B(Ldar), R(11), | 570 B(Ldar), R(11), |
560 B(PushContext), R(7), | 571 B(PushContext), R(7), |
561 B(PopContext), R(7), | 572 B(PopContext), R(7), |
562 B(Jump), U8(27), | 573 B(Jump), U8(27), |
563 B(Mov), R(5), R(11), | 574 B(Mov), R(5), R(11), |
564 B(Mov), R(1), R(12), | 575 B(Mov), R(1), R(12), |
565 B(InvokeIntrinsic), U8(Runtime::k_Call), R(11), U8(2), | 576 B(InvokeIntrinsic), U8(Runtime::k_Call), R(11), U8(2), |
566 B(Star), R(6), | 577 B(Star), R(6), |
567 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(6), U8(1), | 578 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(6), U8(1), |
568 B(JumpIfToBooleanFalse), U8(4), | 579 B(JumpIfToBooleanFalse), U8(4), |
569 B(Jump), U8(7), | 580 B(Jump), U8(7), |
570 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(6), U8(1), | 581 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(6), U8(1), |
571 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
0), U8(1), | 582 B(Ldar), R(10), |
| 583 B(SetPendingMessage), |
572 B(LdaZero), | 584 B(LdaZero), |
573 B(TestEqualStrict), R(8), U8(0), | 585 B(TestEqualStrict), R(8), U8(0), |
574 B(JumpIfTrue), U8(11), | 586 B(JumpIfTrue), U8(11), |
575 B(LdaSmi), U8(1), | 587 B(LdaSmi), U8(1), |
576 B(TestEqualStrict), R(8), U8(0), | 588 B(TestEqualStrict), R(8), U8(0), |
577 B(JumpIfTrue), U8(7), | 589 B(JumpIfTrue), U8(7), |
578 B(Jump), U8(8), | 590 B(Jump), U8(8), |
579 B(Ldar), R(9), | 591 B(Ldar), R(9), |
580 /* 105 S> */ B(Return), | 592 /* 105 S> */ B(Return), |
581 B(Ldar), R(9), | 593 B(Ldar), R(9), |
(...skipping 12 matching lines...) Expand all Loading... |
594 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 606 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
595 FIXED_ARRAY_TYPE, | 607 FIXED_ARRAY_TYPE, |
596 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], | 608 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], |
597 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], | 609 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], |
598 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], | 610 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], |
599 FIXED_ARRAY_TYPE, | 611 FIXED_ARRAY_TYPE, |
600 ] | 612 ] |
601 handlers: [ | 613 handlers: [ |
602 [15, 134, 140], | 614 [15, 134, 140], |
603 [18, 98, 100], | 615 [18, 98, 100], |
604 [219, 229, 231], | 616 [216, 226, 228], |
605 ] | 617 ] |
606 | 618 |
OLD | NEW |