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

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

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

Powered by Google App Engine
This is Rietveld 408576698