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

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

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

Powered by Google App Engine
This is Rietveld 408576698