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

Side by Side Diff: test/cctest/interpreter/bytecode_expectations/ForAwaitOf.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 async iteration: yes 8 async iteration: yes
9 9
10 --- 10 ---
11 snippet: " 11 snippet: "
12 async function f() { 12 async function f() {
13 for await (let x of [1, 2, 3]) {} 13 for await (let x of [1, 2, 3]) {}
14 } 14 }
15 f(); 15 f();
16 " 16 "
17 frame size: 27 17 frame size: 26
18 parameter count: 1 18 parameter count: 1
19 bytecode array length: 712 19 bytecode array length: 685
20 bytecodes: [ 20 bytecodes: [
21 B(Mov), R(new_target), R(11), 21 B(Mov), R(new_target), R(11),
22 B(Ldar), R(new_target), 22 B(Ldar), R(new_target),
23 B(JumpIfUndefined), U8(25), 23 B(JumpIfUndefined), U8(25),
24 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(11), U 8(1), 24 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(11), U 8(1),
25 B(PushContext), R(13), 25 B(PushContext), R(13),
26 B(RestoreGeneratorState), R(11), 26 B(RestoreGeneratorState), R(11),
27 B(Star), R(12), 27 B(Star), R(12),
28 B(SwitchOnSmiNoFeedback), U8(0), U8(3), I8(0), 28 B(SwitchOnSmiNoFeedback), U8(0), U8(3), I8(0),
29 B(LdaSmi), I8(79), 29 B(LdaSmi), I8(79),
30 B(Star), R(14), 30 B(Star), R(13),
31 B(CallRuntime), U16(Runtime::kAbort), R(14), U8(1), 31 B(CallRuntime), U16(Runtime::kAbort), R(13), U8(1),
32 B(LdaSmi), I8(-2), 32 B(LdaSmi), I8(-2),
33 B(Star), R(12), 33 B(Star), R(12),
34 B(Mov), R(closure), R(14), 34 B(Mov), R(closure), R(13),
35 B(Mov), R(this), R(15), 35 B(Mov), R(this), R(14),
36 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(14 ), U8(2), 36 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(13 ), U8(2),
37 B(Star), R(2), 37 B(Star), R(2),
38 /* 16 E> */ B(StackCheck), 38 /* 16 E> */ B(StackCheck),
39 B(LdaUndefined), 39 B(LdaUndefined),
40 B(Star), R(14), 40 B(Star), R(13),
41 B(CallJSRuntime), U8(%async_function_promise_create), R(14), U8( 1), 41 B(CallJSRuntime), U8(%async_function_promise_create), R(13), U8( 1),
42 B(Star), R(7), 42 B(Star), R(7),
43 B(Mov), R(context), R(15),
44 B(Mov), R(2), R(11),
43 B(Mov), R(context), R(16), 45 B(Mov), R(context), R(16),
44 B(Mov), R(2), R(11),
45 B(Mov), R(context), R(17),
46 B(LdaZero), 46 B(LdaZero),
47 B(Star), R(6), 47 B(Star), R(6),
48 B(Mov), R(context), R(19),
48 B(Mov), R(context), R(20), 49 B(Mov), R(context), R(20),
49 B(Mov), R(context), R(21),
50 /* 43 S> */ B(CreateArrayLiteral), U8(3), U8(3), U8(17), 50 /* 43 S> */ B(CreateArrayLiteral), U8(3), U8(3), U8(17),
51 B(Star), R(22), 51 B(Star), R(21),
52 B(LdaNamedProperty), R(22), U8(4), U8(8), 52 B(LdaNamedProperty), R(21), U8(4), U8(8),
53 B(JumpIfUndefined), U8(17), 53 B(JumpIfUndefined), U8(17),
54 B(JumpIfNull), U8(15), 54 B(JumpIfNull), U8(15),
55 B(Star), R(23), 55 B(Star), R(22),
56 B(CallProperty0), R(23), R(22), U8(10), 56 B(CallProperty0), R(22), R(21), U8(10),
57 B(JumpIfJSReceiver), U8(23), 57 B(JumpIfJSReceiver), U8(23),
58 B(CallRuntime), U16(Runtime::kThrowSymbolAsyncIteratorInvalid), R(0), U8(0), 58 B(CallRuntime), U16(Runtime::kThrowSymbolAsyncIteratorInvalid), R(0), U8(0),
59 B(LdaNamedProperty), R(22), U8(5), U8(4), 59 B(LdaNamedProperty), R(21), U8(5), U8(4),
60 B(Star), R(23), 60 B(Star), R(22),
61 B(CallProperty0), R(23), R(22), U8(6), 61 B(CallProperty0), R(22), R(21), U8(6),
62 B(Star), R(23), 62 B(Star), R(22),
63 B(InvokeIntrinsic), U8(Runtime::k_CreateAsyncFromSyncIterator), R(23), U8(1), 63 B(InvokeIntrinsic), U8(Runtime::k_CreateAsyncFromSyncIterator), R(22), U8(1),
64 B(Star), R(4), 64 B(Star), R(4),
65 B(Ldar), R(12), 65 B(Ldar), R(12),
66 B(SwitchOnSmiNoFeedback), U8(6), U8(1), I8(0), 66 B(SwitchOnSmiNoFeedback), U8(6), U8(1), I8(0),
67 B(LdaSmi), I8(-2), 67 B(LdaSmi), I8(-2),
68 /* 43 E> */ B(TestEqualStrictNoFeedback), R(12), 68 /* 43 E> */ B(TestEqualStrictNoFeedback), R(12),
69 B(JumpIfTrue), U8(11), 69 B(JumpIfTrue), U8(11),
70 B(LdaSmi), I8(79), 70 B(LdaSmi), I8(79),
71 B(Star), R(21),
72 B(CallRuntime), U16(Runtime::kAbort), R(21), U8(1),
73 /* 40 S> */ B(LdaUndefined),
71 B(Star), R(22), 74 B(Star), R(22),
72 B(CallRuntime), U16(Runtime::kAbort), R(22), U8(1),
73 /* 40 S> */ B(LdaUndefined),
74 B(Star), R(23),
75 /* 40 E> */ B(LdaNamedProperty), R(4), U8(7), U8(14), 75 /* 40 E> */ B(LdaNamedProperty), R(4), U8(7), U8(14),
76 B(Star), R(25), 76 B(Star), R(24),
77 B(CallProperty0), R(25), R(4), U8(12), 77 B(CallProperty0), R(24), R(4), U8(12),
78 B(Star), R(25), 78 B(Star), R(24),
79 B(Mov), R(2), R(24), 79 B(Mov), R(2), R(23),
80 B(Mov), R(7), R(26), 80 B(Mov), R(7), R(25),
81 B(CallJSRuntime), U8(%async_function_await_uncaught), R(23), U8( 4), 81 B(CallJSRuntime), U8(%async_function_await_uncaught), R(22), U8( 4),
82 B(LdaZero), 82 B(LdaZero),
83 B(Mov), R(2), R(22), 83 B(Mov), R(2), R(21),
84 B(Mov), R(7), R(23), 84 B(Mov), R(7), R(22),
85 B(SuspendGenerator), R(22), R(0), U8(23), U8(2), 85 B(SuspendGenerator), R(21), R(0), U8(22), U8(2),
86 B(Ldar), R(23), 86 B(Ldar), R(22),
87 /* 57 S> */ B(Return), 87 /* 57 S> */ B(Return),
88 B(RestoreGeneratorRegisters), R(11), R(0), U8(23), 88 B(RestoreGeneratorRegisters), R(11), R(0), U8(22),
89 B(LdaSmi), I8(-2), 89 B(LdaSmi), I8(-2),
90 B(Star), R(12), 90 B(Star), R(12),
91 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(22), U8(1), 91 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(21), U8(1),
92 B(Star), R(23), 92 B(Star), R(22),
93 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(22) , U8(1), 93 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(21) , U8(1),
94 B(SwitchOnSmiNoFeedback), U8(8), U8(2), I8(0), 94 B(SwitchOnSmiNoFeedback), U8(8), U8(2), I8(0),
95 B(Ldar), R(23), 95 B(Ldar), R(22),
96 /* 40 E> */ B(ReThrow), 96 /* 40 E> */ B(ReThrow),
97 B(LdaTrue),
98 B(Star), R(25),
99 B(Mov), R(23), R(24),
100 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(24) , U8(2),
101 B(Star), R(19),
102 B(LdaZero), 97 B(LdaZero),
103 B(Star), R(18), 98 B(Star), R(17),
99 B(Mov), R(22), R(18),
104 B(Jump), U8(98), 100 B(Jump), U8(98),
105 B(Mov), R(23), R(5), 101 B(Mov), R(22), R(5),
106 /* 40 E> */ B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(5), U8(1), 102 /* 40 E> */ B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(5), U8(1),
107 B(ToBooleanLogicalNot), 103 B(ToBooleanLogicalNot),
108 B(JumpIfFalse), U8(7), 104 B(JumpIfFalse), U8(7),
109 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (5), U8(1), 105 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (5), U8(1),
110 B(LdaNamedProperty), R(5), U8(10), U8(16), 106 B(LdaNamedProperty), R(5), U8(10), U8(16),
111 B(JumpIfToBooleanTrue), U8(25), 107 B(JumpIfToBooleanTrue), U8(25),
112 B(LdaNamedProperty), R(5), U8(11), U8(18), 108 B(LdaNamedProperty), R(5), U8(11), U8(18),
113 B(Star), R(8), 109 B(Star), R(8),
114 B(LdaSmi), I8(2), 110 B(LdaSmi), I8(2),
115 B(Star), R(6), 111 B(Star), R(6),
116 B(Mov), R(8), R(3), 112 B(Mov), R(8), R(3),
117 /* 23 E> */ B(StackCheck), 113 /* 23 E> */ B(StackCheck),
118 B(Mov), R(3), R(0), 114 B(Mov), R(3), R(0),
119 B(LdaZero), 115 B(LdaZero),
120 B(Star), R(6), 116 B(Star), R(6),
121 B(JumpLoop), U8(144), I8(0), 117 B(JumpLoop), U8(135), I8(0),
122 B(Jump), U8(40), 118 B(Jump), U8(40),
123 B(Star), R(22), 119 B(Star), R(21),
124 B(Ldar), R(closure), 120 B(Ldar), R(closure),
125 B(CreateCatchContext), R(22), U8(12), U8(13), 121 B(CreateCatchContext), R(21), U8(12), U8(13),
126 B(Star), R(21), 122 B(Star), R(20),
127 B(LdaTheHole), 123 B(LdaTheHole),
128 B(SetPendingMessage), 124 B(SetPendingMessage),
129 B(Ldar), R(21), 125 B(Ldar), R(20),
130 B(PushContext), R(22), 126 B(PushContext), R(21),
131 B(LdaSmi), I8(2), 127 B(LdaSmi), I8(2),
132 B(TestEqualStrict), R(6), U8(20), 128 B(TestEqualStrict), R(6), U8(20),
133 B(JumpIfFalse), U8(6), 129 B(JumpIfFalse), U8(6),
134 B(LdaSmi), I8(1), 130 B(LdaSmi), I8(1),
135 B(Star), R(6), 131 B(Star), R(6),
136 B(LdaImmutableCurrentContextSlot), U8(4), 132 B(LdaImmutableCurrentContextSlot), U8(4),
137 B(Star), R(23), 133 B(Star), R(22),
138 B(CallRuntime), U16(Runtime::kReThrow), R(23), U8(1), 134 B(CallRuntime), U16(Runtime::kReThrow), R(22), U8(1),
139 B(PopContext), R(22), 135 B(PopContext), R(21),
140 B(LdaSmi), I8(-1), 136 B(LdaSmi), I8(-1),
137 B(Star), R(17),
138 B(Jump), U8(8),
141 B(Star), R(18), 139 B(Star), R(18),
142 B(Jump), U8(8),
143 B(Star), R(19),
144 B(LdaSmi), I8(1), 140 B(LdaSmi), I8(1),
145 B(Star), R(18), 141 B(Star), R(17),
146 B(LdaTheHole), 142 B(LdaTheHole),
147 B(SetPendingMessage), 143 B(SetPendingMessage),
148 B(Star), R(20), 144 B(Star), R(19),
149 B(LdaZero), 145 B(LdaZero),
150 B(TestEqualStrict), R(6), U8(21), 146 B(TestEqualStrict), R(6), U8(21),
151 B(JumpIfTrue), U8(253), 147 B(JumpIfTrue), U8(235),
152 B(LdaNamedProperty), R(4), U8(14), U8(22), 148 B(LdaNamedProperty), R(4), U8(14), U8(22),
153 B(Star), R(9), 149 B(Star), R(9),
154 B(TestUndetectable), 150 B(TestUndetectable),
155 B(JumpIfFalse), U8(4), 151 B(JumpIfFalse), U8(4),
156 B(Jump), U8(242), 152 B(Jump), U8(224),
157 B(LdaSmi), I8(1), 153 B(LdaSmi), I8(1),
158 B(TestEqualStrict), R(6), U8(25), 154 B(TestEqualStrict), R(6), U8(25),
159 B(JumpIfFalse), U8(136), 155 B(JumpIfFalse), U8(127),
160 B(Ldar), R(9), 156 B(Ldar), R(9),
161 B(TestTypeOf), U8(5), 157 B(TestTypeOf), U8(5),
162 B(JumpIfFalse), U8(4), 158 B(JumpIfFalse), U8(4),
163 B(Jump), U8(18), 159 B(Jump), U8(18),
164 B(Wide), B(LdaSmi), I16(130), 160 B(Wide), B(LdaSmi), I16(130),
161 B(Star), R(20),
162 B(LdaConstant), U8(15),
165 B(Star), R(21), 163 B(Star), R(21),
166 B(LdaConstant), U8(15), 164 B(CallRuntime), U16(Runtime::kNewTypeError), R(20), U8(2),
167 B(Star), R(22),
168 B(CallRuntime), U16(Runtime::kNewTypeError), R(21), U8(2),
169 B(Throw), 165 B(Throw),
170 B(Mov), R(context), R(21), 166 B(Mov), R(context), R(20),
171 B(LdaUndefined),
172 B(Star), R(23),
173 B(Mov), R(9), R(25),
174 B(Mov), R(4), R(26),
175 B(InvokeIntrinsic), U8(Runtime::k_Call), R(25), U8(2),
176 B(Star), R(25),
177 B(Mov), R(2), R(24),
178 B(Mov), R(7), R(26),
179 B(CallJSRuntime), U8(%async_function_await_caught), R(23), U8(4) ,
180 B(LdaSmi), I8(1),
181 B(Mov), R(2), R(22),
182 B(Mov), R(7), R(23),
183 B(SuspendGenerator), R(22), R(0), U8(23), U8(2),
184 B(Ldar), R(23),
185 /* 57 S> */ B(Return),
186 B(RestoreGeneratorRegisters), R(11), R(0), U8(23),
187 B(LdaSmi), I8(-2),
188 B(Star), R(12),
189 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(22), U8(1),
190 B(Star), R(23),
191 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(22) , U8(1),
192 B(SwitchOnSmiNoFeedback), U8(16), U8(2), I8(0),
193 B(Ldar), R(23),
194 B(ReThrow),
195 B(LdaTrue),
196 B(Star), R(25),
197 B(Mov), R(23), R(24),
198 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(24) , U8(2),
199 B(Star), R(15),
200 B(LdaZero),
201 B(Star), R(14),
202 B(Jump), U8(225),
203 B(Ldar), R(23),
204 B(Jump), U8(20),
205 B(Star), R(22),
206 B(Ldar), R(closure),
207 B(CreateCatchContext), R(22), U8(12), U8(18),
208 B(Star), R(21),
209 B(LdaTheHole),
210 B(SetPendingMessage),
211 B(Ldar), R(21),
212 B(PushContext), R(22),
213 B(PopContext), R(22),
214 B(Jump), U8(101),
215 B(LdaUndefined), 167 B(LdaUndefined),
216 B(Star), R(22), 168 B(Star), R(22),
217 B(Mov), R(9), R(24), 169 B(Mov), R(9), R(24),
218 B(Mov), R(4), R(25), 170 B(Mov), R(4), R(25),
219 B(InvokeIntrinsic), U8(Runtime::k_Call), R(24), U8(2), 171 B(InvokeIntrinsic), U8(Runtime::k_Call), R(24), U8(2),
220 B(Star), R(24), 172 B(Star), R(24),
221 B(Mov), R(2), R(23), 173 B(Mov), R(2), R(23),
222 B(Mov), R(7), R(25), 174 B(Mov), R(7), R(25),
223 B(CallJSRuntime), U8(%async_function_await_uncaught), R(22), U8( 4), 175 B(CallJSRuntime), U8(%async_function_await_caught), R(22), U8(4) ,
224 B(LdaSmi), I8(2), 176 B(LdaSmi), I8(1),
225 B(Mov), R(2), R(21), 177 B(Mov), R(2), R(21),
226 B(Mov), R(7), R(22), 178 B(Mov), R(7), R(22),
227 B(SuspendGenerator), R(21), R(0), U8(22), U8(2), 179 B(SuspendGenerator), R(21), R(0), U8(22), U8(2),
228 B(Ldar), R(22), 180 B(Ldar), R(22),
229 /* 57 S> */ B(Return), 181 /* 57 S> */ B(Return),
230 B(RestoreGeneratorRegisters), R(11), R(0), U8(22), 182 B(RestoreGeneratorRegisters), R(11), R(0), U8(22),
231 B(LdaSmi), I8(-2), 183 B(LdaSmi), I8(-2),
232 B(Star), R(12), 184 B(Star), R(12),
233 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(21), U8(1), 185 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(21), U8(1),
234 B(Star), R(22), 186 B(Star), R(22),
235 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(21) , U8(1), 187 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(21) , U8(1),
236 B(SwitchOnSmiNoFeedback), U8(19), U8(2), I8(0), 188 B(SwitchOnSmiNoFeedback), U8(16), U8(2), I8(0),
237 B(Ldar), R(22), 189 B(Ldar), R(22),
238 B(ReThrow), 190 B(ReThrow),
239 B(LdaTrue),
240 B(Star), R(24),
241 B(Mov), R(22), R(23),
242 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(23) , U8(2),
243 B(Star), R(15),
244 B(LdaZero), 191 B(LdaZero),
245 B(Star), R(14), 192 B(Star), R(13),
193 B(Mov), R(22), R(14),
194 B(Jump), U8(216),
195 B(Ldar), R(22),
196 B(Jump), U8(20),
197 B(Star), R(21),
198 B(Ldar), R(closure),
199 B(CreateCatchContext), R(21), U8(12), U8(18),
200 B(Star), R(20),
201 B(LdaTheHole),
202 B(SetPendingMessage),
203 B(Ldar), R(20),
204 B(PushContext), R(21),
205 B(PopContext), R(21),
206 B(Jump), U8(92),
207 B(LdaUndefined),
208 B(Star), R(21),
209 B(Mov), R(9), R(23),
210 B(Mov), R(4), R(24),
211 B(InvokeIntrinsic), U8(Runtime::k_Call), R(23), U8(2),
212 B(Star), R(23),
213 B(Mov), R(2), R(22),
214 B(Mov), R(7), R(24),
215 B(CallJSRuntime), U8(%async_function_await_uncaught), R(21), U8( 4),
216 B(LdaSmi), I8(2),
217 B(Mov), R(2), R(20),
218 B(Mov), R(7), R(21),
219 B(SuspendGenerator), R(20), R(0), U8(21), U8(2),
220 B(Ldar), R(21),
221 /* 57 S> */ B(Return),
222 B(RestoreGeneratorRegisters), R(11), R(0), U8(21),
223 B(LdaSmi), I8(-2),
224 B(Star), R(12),
225 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(20), U8(1),
226 B(Star), R(21),
227 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(20) , U8(1),
228 B(SwitchOnSmiNoFeedback), U8(19), U8(2), I8(0),
229 B(Ldar), R(21),
230 B(ReThrow),
231 B(LdaZero),
232 B(Star), R(13),
233 B(Mov), R(21), R(14),
246 B(Jump), U8(118), 234 B(Jump), U8(118),
247 B(Mov), R(22), R(10), 235 B(Mov), R(21), R(10),
248 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(10), U8(1), 236 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(10), U8(1),
249 B(JumpIfToBooleanFalse), U8(4), 237 B(JumpIfToBooleanFalse), U8(4),
250 B(Jump), U8(7), 238 B(Jump), U8(7),
251 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (10), U8(1), 239 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (10), U8(1),
252 B(Ldar), R(20), 240 B(Ldar), R(19),
253 B(SetPendingMessage), 241 B(SetPendingMessage),
254 B(Ldar), R(18), 242 B(Ldar), R(17),
255 B(SwitchOnSmiNoFeedback), U8(21), U8(2), I8(0), 243 B(SwitchOnSmiNoFeedback), U8(21), U8(2), I8(0),
256 B(Jump), U8(13), 244 B(Jump), U8(13),
257 B(LdaZero), 245 B(LdaZero),
258 B(Star), R(14), 246 B(Star), R(13),
259 B(Mov), R(19), R(15), 247 B(Mov), R(18), R(14),
260 B(Jump), U8(83), 248 B(Jump), U8(83),
261 B(Ldar), R(19), 249 B(Ldar), R(18),
262 B(ReThrow), 250 B(ReThrow),
263 B(LdaUndefined), 251 B(LdaUndefined),
264 B(Star), R(18), 252 B(Star), R(17),
265 B(LdaUndefined), 253 B(LdaUndefined),
266 B(Star), R(20), 254 B(Star), R(19),
267 B(Mov), R(7), R(19), 255 B(Mov), R(7), R(18),
268 B(CallJSRuntime), U8(%promise_resolve), R(18), U8(3), 256 B(CallJSRuntime), U8(%promise_resolve), R(17), U8(3),
269 B(LdaZero), 257 B(LdaZero),
270 B(Star), R(14), 258 B(Star), R(13),
271 B(Mov), R(7), R(15), 259 B(Mov), R(7), R(14),
272 B(Jump), U8(59), 260 B(Jump), U8(59),
273 B(Jump), U8(45), 261 B(Jump), U8(45),
274 B(Star), R(18), 262 B(Star), R(17),
275 B(Ldar), R(closure), 263 B(Ldar), R(closure),
276 B(CreateCatchContext), R(18), U8(12), U8(23), 264 B(CreateCatchContext), R(17), U8(12), U8(23),
277 B(Star), R(17), 265 B(Star), R(16),
278 B(LdaTheHole), 266 B(LdaTheHole),
279 B(SetPendingMessage), 267 B(SetPendingMessage),
280 B(Ldar), R(17), 268 B(Ldar), R(16),
281 B(PushContext), R(18), 269 B(PushContext), R(17),
282 B(LdaUndefined), 270 B(LdaUndefined),
283 B(Star), R(19), 271 B(Star), R(18),
284 B(LdaImmutableCurrentContextSlot), U8(4), 272 B(LdaImmutableCurrentContextSlot), U8(4),
273 B(Star), R(20),
274 B(LdaFalse),
285 B(Star), R(21), 275 B(Star), R(21),
286 B(LdaFalse), 276 B(Mov), R(7), R(19),
287 B(Star), R(22), 277 B(CallJSRuntime), U8(%promise_internal_reject), R(18), U8(4),
288 B(Mov), R(7), R(20), 278 B(PopContext), R(17),
289 B(CallJSRuntime), U8(%promise_internal_reject), R(19), U8(4),
290 B(PopContext), R(18),
291 B(LdaZero), 279 B(LdaZero),
292 B(Star), R(14), 280 B(Star), R(13),
293 B(Mov), R(7), R(15), 281 B(Mov), R(7), R(14),
294 B(Jump), U8(14), 282 B(Jump), U8(14),
295 B(LdaSmi), I8(-1), 283 B(LdaSmi), I8(-1),
284 B(Star), R(13),
285 B(Jump), U8(8),
296 B(Star), R(14), 286 B(Star), R(14),
297 B(Jump), U8(8),
298 B(Star), R(15),
299 B(LdaSmi), I8(1), 287 B(LdaSmi), I8(1),
300 B(Star), R(14), 288 B(Star), R(13),
301 B(LdaTheHole), 289 B(LdaTheHole),
302 B(SetPendingMessage), 290 B(SetPendingMessage),
291 B(Star), R(15),
292 B(LdaUndefined),
303 B(Star), R(16), 293 B(Star), R(16),
304 B(LdaUndefined), 294 B(Mov), R(7), R(17),
305 B(Star), R(17), 295 B(CallJSRuntime), U8(%async_function_promise_release), R(16), U8 (2),
306 B(Mov), R(7), R(18), 296 B(Ldar), R(15),
307 B(CallJSRuntime), U8(%async_function_promise_release), R(17), U8 (2),
308 B(Ldar), R(16),
309 B(SetPendingMessage), 297 B(SetPendingMessage),
310 B(Ldar), R(14), 298 B(Ldar), R(13),
311 B(SwitchOnSmiNoFeedback), U8(24), U8(2), I8(0), 299 B(SwitchOnSmiNoFeedback), U8(24), U8(2), I8(0),
312 B(Jump), U8(8), 300 B(Jump), U8(8),
313 B(Ldar), R(15), 301 B(Ldar), R(14),
314 /* 57 S> */ B(Return), 302 /* 57 S> */ B(Return),
315 B(Ldar), R(15), 303 B(Ldar), R(14),
316 B(ReThrow), 304 B(ReThrow),
317 B(LdaUndefined), 305 B(LdaUndefined),
318 /* 57 S> */ B(Return), 306 /* 57 S> */ B(Return),
319 ] 307 ]
320 constant pool: [ 308 constant pool: [
321 Smi [102], 309 Smi [102],
322 Smi [397], 310 Smi [388],
323 Smi [504], 311 Smi [486],
324 TUPLE2_TYPE, 312 TUPLE2_TYPE,
325 SYMBOL_TYPE, 313 SYMBOL_TYPE,
326 SYMBOL_TYPE, 314 SYMBOL_TYPE,
327 Smi [59], 315 Smi [59],
328 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], 316 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"],
329 Smi [24], 317 Smi [15],
330 Smi [7], 318 Smi [7],
331 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], 319 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"],
332 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], 320 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"],
333 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], 321 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"],
334 FIXED_ARRAY_TYPE, 322 FIXED_ARRAY_TYPE,
335 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], 323 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"],
336 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], 324 ONE_BYTE_INTERNALIZED_STRING_TYPE [""],
337 Smi [24], 325 Smi [15],
338 Smi [7], 326 Smi [7],
339 FIXED_ARRAY_TYPE, 327 FIXED_ARRAY_TYPE,
340 Smi [24], 328 Smi [15],
341 Smi [7], 329 Smi [7],
342 Smi [6], 330 Smi [6],
343 Smi [14], 331 Smi [14],
344 FIXED_ARRAY_TYPE, 332 FIXED_ARRAY_TYPE,
345 Smi [6], 333 Smi [6],
346 Smi [9], 334 Smi [9],
347 ] 335 ]
348 handlers: [ 336 handlers: [
349 [62, 667, 673], 337 [62, 640, 646],
350 [65, 622, 624], 338 [65, 595, 597],
351 [71, 306, 312], 339 [71, 297, 303],
352 [74, 266, 268], 340 [74, 257, 259],
353 [373, 458, 460], 341 [364, 440, 442],
354 ] 342 ]
355 343
356 --- 344 ---
357 snippet: " 345 snippet: "
358 async function f() { 346 async function f() {
359 for await (let x of [1, 2, 3]) { return x; } 347 for await (let x of [1, 2, 3]) { return x; }
360 } 348 }
361 f(); 349 f();
362 " 350 "
363 frame size: 27 351 frame size: 26
364 parameter count: 1 352 parameter count: 1
365 bytecode array length: 740 353 bytecode array length: 713
366 bytecodes: [ 354 bytecodes: [
367 B(Mov), R(new_target), R(11), 355 B(Mov), R(new_target), R(11),
368 B(Ldar), R(new_target), 356 B(Ldar), R(new_target),
369 B(JumpIfUndefined), U8(25), 357 B(JumpIfUndefined), U8(25),
370 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(11), U 8(1), 358 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(11), U 8(1),
371 B(PushContext), R(13), 359 B(PushContext), R(13),
372 B(RestoreGeneratorState), R(11), 360 B(RestoreGeneratorState), R(11),
373 B(Star), R(12), 361 B(Star), R(12),
374 B(SwitchOnSmiNoFeedback), U8(0), U8(3), I8(0), 362 B(SwitchOnSmiNoFeedback), U8(0), U8(3), I8(0),
375 B(LdaSmi), I8(79), 363 B(LdaSmi), I8(79),
376 B(Star), R(14), 364 B(Star), R(13),
377 B(CallRuntime), U16(Runtime::kAbort), R(14), U8(1), 365 B(CallRuntime), U16(Runtime::kAbort), R(13), U8(1),
378 B(LdaSmi), I8(-2), 366 B(LdaSmi), I8(-2),
379 B(Star), R(12), 367 B(Star), R(12),
380 B(Mov), R(closure), R(14), 368 B(Mov), R(closure), R(13),
381 B(Mov), R(this), R(15), 369 B(Mov), R(this), R(14),
382 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(14 ), U8(2), 370 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(13 ), U8(2),
383 B(Star), R(2), 371 B(Star), R(2),
384 /* 16 E> */ B(StackCheck), 372 /* 16 E> */ B(StackCheck),
385 B(LdaUndefined), 373 B(LdaUndefined),
386 B(Star), R(14), 374 B(Star), R(13),
387 B(CallJSRuntime), U8(%async_function_promise_create), R(14), U8( 1), 375 B(CallJSRuntime), U8(%async_function_promise_create), R(13), U8( 1),
388 B(Star), R(7), 376 B(Star), R(7),
377 B(Mov), R(context), R(15),
378 B(Mov), R(2), R(11),
389 B(Mov), R(context), R(16), 379 B(Mov), R(context), R(16),
390 B(Mov), R(2), R(11),
391 B(Mov), R(context), R(17),
392 B(LdaZero), 380 B(LdaZero),
393 B(Star), R(6), 381 B(Star), R(6),
382 B(Mov), R(context), R(19),
394 B(Mov), R(context), R(20), 383 B(Mov), R(context), R(20),
395 B(Mov), R(context), R(21),
396 /* 43 S> */ B(CreateArrayLiteral), U8(3), U8(3), U8(17), 384 /* 43 S> */ B(CreateArrayLiteral), U8(3), U8(3), U8(17),
397 B(Star), R(22), 385 B(Star), R(21),
398 B(LdaNamedProperty), R(22), U8(4), U8(8), 386 B(LdaNamedProperty), R(21), U8(4), U8(8),
399 B(JumpIfUndefined), U8(17), 387 B(JumpIfUndefined), U8(17),
400 B(JumpIfNull), U8(15), 388 B(JumpIfNull), U8(15),
401 B(Star), R(23), 389 B(Star), R(22),
402 B(CallProperty0), R(23), R(22), U8(10), 390 B(CallProperty0), R(22), R(21), U8(10),
403 B(JumpIfJSReceiver), U8(23), 391 B(JumpIfJSReceiver), U8(23),
404 B(CallRuntime), U16(Runtime::kThrowSymbolAsyncIteratorInvalid), R(0), U8(0), 392 B(CallRuntime), U16(Runtime::kThrowSymbolAsyncIteratorInvalid), R(0), U8(0),
405 B(LdaNamedProperty), R(22), U8(5), U8(4), 393 B(LdaNamedProperty), R(21), U8(5), U8(4),
406 B(Star), R(23), 394 B(Star), R(22),
407 B(CallProperty0), R(23), R(22), U8(6), 395 B(CallProperty0), R(22), R(21), U8(6),
408 B(Star), R(23), 396 B(Star), R(22),
409 B(InvokeIntrinsic), U8(Runtime::k_CreateAsyncFromSyncIterator), R(23), U8(1), 397 B(InvokeIntrinsic), U8(Runtime::k_CreateAsyncFromSyncIterator), R(22), U8(1),
410 B(Star), R(4), 398 B(Star), R(4),
411 B(Ldar), R(12), 399 B(Ldar), R(12),
412 B(SwitchOnSmiNoFeedback), U8(6), U8(1), I8(0), 400 B(SwitchOnSmiNoFeedback), U8(6), U8(1), I8(0),
413 B(LdaSmi), I8(-2), 401 B(LdaSmi), I8(-2),
414 /* 43 E> */ B(TestEqualStrictNoFeedback), R(12), 402 /* 43 E> */ B(TestEqualStrictNoFeedback), R(12),
415 B(JumpIfTrue), U8(11), 403 B(JumpIfTrue), U8(11),
416 B(LdaSmi), I8(79), 404 B(LdaSmi), I8(79),
405 B(Star), R(21),
406 B(CallRuntime), U16(Runtime::kAbort), R(21), U8(1),
407 /* 40 S> */ B(LdaUndefined),
417 B(Star), R(22), 408 B(Star), R(22),
418 B(CallRuntime), U16(Runtime::kAbort), R(22), U8(1),
419 /* 40 S> */ B(LdaUndefined),
420 B(Star), R(23),
421 /* 40 E> */ B(LdaNamedProperty), R(4), U8(7), U8(14), 409 /* 40 E> */ B(LdaNamedProperty), R(4), U8(7), U8(14),
422 B(Star), R(25), 410 B(Star), R(24),
423 B(CallProperty0), R(25), R(4), U8(12), 411 B(CallProperty0), R(24), R(4), U8(12),
424 B(Star), R(25), 412 B(Star), R(24),
425 B(Mov), R(2), R(24), 413 B(Mov), R(2), R(23),
426 B(Mov), R(7), R(26), 414 B(Mov), R(7), R(25),
427 B(CallJSRuntime), U8(%async_function_await_uncaught), R(23), U8( 4), 415 B(CallJSRuntime), U8(%async_function_await_uncaught), R(22), U8( 4),
428 B(LdaZero), 416 B(LdaZero),
429 B(Mov), R(2), R(22), 417 B(Mov), R(2), R(21),
430 B(Mov), R(7), R(23), 418 B(Mov), R(7), R(22),
431 B(SuspendGenerator), R(22), R(0), U8(23), U8(2), 419 B(SuspendGenerator), R(21), R(0), U8(22), U8(2),
432 B(Ldar), R(23), 420 B(Ldar), R(22),
433 /* 68 S> */ B(Return), 421 /* 68 S> */ B(Return),
434 B(RestoreGeneratorRegisters), R(11), R(0), U8(23), 422 B(RestoreGeneratorRegisters), R(11), R(0), U8(22),
435 B(LdaSmi), I8(-2), 423 B(LdaSmi), I8(-2),
436 B(Star), R(12), 424 B(Star), R(12),
437 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(22), U8(1), 425 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(21), U8(1),
438 B(Star), R(23), 426 B(Star), R(22),
439 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(22) , U8(1), 427 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(21) , U8(1),
440 B(SwitchOnSmiNoFeedback), U8(8), U8(2), I8(0), 428 B(SwitchOnSmiNoFeedback), U8(8), U8(2), I8(0),
441 B(Ldar), R(23), 429 B(Ldar), R(22),
442 /* 40 E> */ B(ReThrow), 430 /* 40 E> */ B(ReThrow),
443 B(LdaTrue),
444 B(Star), R(25),
445 B(Mov), R(23), R(24),
446 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(24) , U8(2),
447 B(Star), R(19),
448 B(LdaZero), 431 B(LdaZero),
449 B(Star), R(18), 432 B(Star), R(17),
433 B(Mov), R(22), R(18),
450 B(Jump), U8(101), 434 B(Jump), U8(101),
451 B(Mov), R(23), R(5), 435 B(Mov), R(22), R(5),
452 /* 40 E> */ B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(5), U8(1), 436 /* 40 E> */ B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(5), U8(1),
453 B(ToBooleanLogicalNot), 437 B(ToBooleanLogicalNot),
454 B(JumpIfFalse), U8(7), 438 B(JumpIfFalse), U8(7),
455 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (5), U8(1), 439 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (5), U8(1),
456 B(LdaNamedProperty), R(5), U8(10), U8(16), 440 B(LdaNamedProperty), R(5), U8(10), U8(16),
457 B(JumpIfToBooleanTrue), U8(28), 441 B(JumpIfToBooleanTrue), U8(28),
458 B(LdaNamedProperty), R(5), U8(11), U8(18), 442 B(LdaNamedProperty), R(5), U8(11), U8(18),
459 B(Star), R(8), 443 B(Star), R(8),
460 B(LdaSmi), I8(2), 444 B(LdaSmi), I8(2),
461 B(Star), R(6), 445 B(Star), R(6),
462 B(Mov), R(8), R(3), 446 B(Mov), R(8), R(3),
463 /* 23 E> */ B(StackCheck), 447 /* 23 E> */ B(StackCheck),
464 B(Mov), R(3), R(0), 448 B(Mov), R(3), R(0),
465 /* 56 S> */ B(LdaSmi), I8(1), 449 /* 56 S> */ B(LdaSmi), I8(1),
466 B(Star), R(18), 450 B(Star), R(17),
467 B(Mov), R(0), R(19), 451 B(Mov), R(0), R(18),
468 B(Jump), U8(54), 452 B(Jump), U8(54),
469 B(Jump), U8(40), 453 B(Jump), U8(40),
470 B(Star), R(22), 454 B(Star), R(21),
471 B(Ldar), R(closure), 455 B(Ldar), R(closure),
472 B(CreateCatchContext), R(22), U8(12), U8(13), 456 B(CreateCatchContext), R(21), U8(12), U8(13),
473 B(Star), R(21), 457 B(Star), R(20),
474 B(LdaTheHole), 458 B(LdaTheHole),
475 B(SetPendingMessage), 459 B(SetPendingMessage),
476 B(Ldar), R(21), 460 B(Ldar), R(20),
477 B(PushContext), R(22), 461 B(PushContext), R(21),
478 B(LdaSmi), I8(2), 462 B(LdaSmi), I8(2),
479 B(TestEqualStrict), R(6), U8(20), 463 B(TestEqualStrict), R(6), U8(20),
480 B(JumpIfFalse), U8(6), 464 B(JumpIfFalse), U8(6),
481 B(LdaSmi), I8(1), 465 B(LdaSmi), I8(1),
482 B(Star), R(6), 466 B(Star), R(6),
483 B(LdaImmutableCurrentContextSlot), U8(4), 467 B(LdaImmutableCurrentContextSlot), U8(4),
484 B(Star), R(23), 468 B(Star), R(22),
485 B(CallRuntime), U16(Runtime::kReThrow), R(23), U8(1), 469 B(CallRuntime), U16(Runtime::kReThrow), R(22), U8(1),
486 B(PopContext), R(22), 470 B(PopContext), R(21),
487 B(LdaSmi), I8(-1), 471 B(LdaSmi), I8(-1),
472 B(Star), R(17),
473 B(Jump), U8(8),
488 B(Star), R(18), 474 B(Star), R(18),
489 B(Jump), U8(8),
490 B(Star), R(19),
491 B(LdaSmi), I8(2), 475 B(LdaSmi), I8(2),
492 B(Star), R(18), 476 B(Star), R(17),
493 B(LdaTheHole), 477 B(LdaTheHole),
494 B(SetPendingMessage), 478 B(SetPendingMessage),
495 B(Star), R(20), 479 B(Star), R(19),
496 B(LdaZero), 480 B(LdaZero),
497 B(TestEqualStrict), R(6), U8(21), 481 B(TestEqualStrict), R(6), U8(21),
498 B(JumpIfTrue), U8(253), 482 B(JumpIfTrue), U8(235),
499 B(LdaNamedProperty), R(4), U8(14), U8(22), 483 B(LdaNamedProperty), R(4), U8(14), U8(22),
500 B(Star), R(9), 484 B(Star), R(9),
501 B(TestUndetectable), 485 B(TestUndetectable),
502 B(JumpIfFalse), U8(4), 486 B(JumpIfFalse), U8(4),
503 B(Jump), U8(242), 487 B(Jump), U8(224),
504 B(LdaSmi), I8(1), 488 B(LdaSmi), I8(1),
505 B(TestEqualStrict), R(6), U8(25), 489 B(TestEqualStrict), R(6), U8(25),
506 B(JumpIfFalse), U8(136), 490 B(JumpIfFalse), U8(127),
507 B(Ldar), R(9), 491 B(Ldar), R(9),
508 B(TestTypeOf), U8(5), 492 B(TestTypeOf), U8(5),
509 B(JumpIfFalse), U8(4), 493 B(JumpIfFalse), U8(4),
510 B(Jump), U8(18), 494 B(Jump), U8(18),
511 B(Wide), B(LdaSmi), I16(130), 495 B(Wide), B(LdaSmi), I16(130),
496 B(Star), R(20),
497 B(LdaConstant), U8(15),
512 B(Star), R(21), 498 B(Star), R(21),
513 B(LdaConstant), U8(15), 499 B(CallRuntime), U16(Runtime::kNewTypeError), R(20), U8(2),
514 B(Star), R(22),
515 B(CallRuntime), U16(Runtime::kNewTypeError), R(21), U8(2),
516 B(Throw), 500 B(Throw),
517 B(Mov), R(context), R(21), 501 B(Mov), R(context), R(20),
518 B(LdaUndefined),
519 B(Star), R(23),
520 B(Mov), R(9), R(25),
521 B(Mov), R(4), R(26),
522 B(InvokeIntrinsic), U8(Runtime::k_Call), R(25), U8(2),
523 B(Star), R(25),
524 B(Mov), R(2), R(24),
525 B(Mov), R(7), R(26),
526 B(CallJSRuntime), U8(%async_function_await_caught), R(23), U8(4) ,
527 B(LdaSmi), I8(1),
528 B(Mov), R(2), R(22),
529 B(Mov), R(7), R(23),
530 B(SuspendGenerator), R(22), R(0), U8(23), U8(2),
531 B(Ldar), R(23),
532 /* 68 S> */ B(Return),
533 B(RestoreGeneratorRegisters), R(11), R(0), U8(23),
534 B(LdaSmi), I8(-2),
535 B(Star), R(12),
536 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(22), U8(1),
537 B(Star), R(23),
538 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(22) , U8(1),
539 B(SwitchOnSmiNoFeedback), U8(16), U8(2), I8(0),
540 B(Ldar), R(23),
541 B(ReThrow),
542 B(LdaTrue),
543 B(Star), R(25),
544 B(Mov), R(23), R(24),
545 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(24) , U8(2),
546 B(Star), R(15),
547 B(LdaZero),
548 B(Star), R(14),
549 B(Jump), U8(234),
550 B(Ldar), R(23),
551 B(Jump), U8(20),
552 B(Star), R(22),
553 B(Ldar), R(closure),
554 B(CreateCatchContext), R(22), U8(12), U8(18),
555 B(Star), R(21),
556 B(LdaTheHole),
557 B(SetPendingMessage),
558 B(Ldar), R(21),
559 B(PushContext), R(22),
560 B(PopContext), R(22),
561 B(Jump), U8(101),
562 B(LdaUndefined), 502 B(LdaUndefined),
563 B(Star), R(22), 503 B(Star), R(22),
564 B(Mov), R(9), R(24), 504 B(Mov), R(9), R(24),
565 B(Mov), R(4), R(25), 505 B(Mov), R(4), R(25),
566 B(InvokeIntrinsic), U8(Runtime::k_Call), R(24), U8(2), 506 B(InvokeIntrinsic), U8(Runtime::k_Call), R(24), U8(2),
567 B(Star), R(24), 507 B(Star), R(24),
568 B(Mov), R(2), R(23), 508 B(Mov), R(2), R(23),
569 B(Mov), R(7), R(25), 509 B(Mov), R(7), R(25),
570 B(CallJSRuntime), U8(%async_function_await_uncaught), R(22), U8( 4), 510 B(CallJSRuntime), U8(%async_function_await_caught), R(22), U8(4) ,
571 B(LdaSmi), I8(2), 511 B(LdaSmi), I8(1),
572 B(Mov), R(2), R(21), 512 B(Mov), R(2), R(21),
573 B(Mov), R(7), R(22), 513 B(Mov), R(7), R(22),
574 B(SuspendGenerator), R(21), R(0), U8(22), U8(2), 514 B(SuspendGenerator), R(21), R(0), U8(22), U8(2),
575 B(Ldar), R(22), 515 B(Ldar), R(22),
576 /* 68 S> */ B(Return), 516 /* 68 S> */ B(Return),
577 B(RestoreGeneratorRegisters), R(11), R(0), U8(22), 517 B(RestoreGeneratorRegisters), R(11), R(0), U8(22),
578 B(LdaSmi), I8(-2), 518 B(LdaSmi), I8(-2),
579 B(Star), R(12), 519 B(Star), R(12),
580 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(21), U8(1), 520 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(21), U8(1),
581 B(Star), R(22), 521 B(Star), R(22),
582 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(21) , U8(1), 522 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(21) , U8(1),
583 B(SwitchOnSmiNoFeedback), U8(19), U8(2), I8(0), 523 B(SwitchOnSmiNoFeedback), U8(16), U8(2), I8(0),
584 B(Ldar), R(22), 524 B(Ldar), R(22),
585 B(ReThrow), 525 B(ReThrow),
586 B(LdaTrue),
587 B(Star), R(24),
588 B(Mov), R(22), R(23),
589 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(23) , U8(2),
590 B(Star), R(15),
591 B(LdaZero), 526 B(LdaZero),
592 B(Star), R(14), 527 B(Star), R(13),
528 B(Mov), R(22), R(14),
529 B(Jump), U8(225),
530 B(Ldar), R(22),
531 B(Jump), U8(20),
532 B(Star), R(21),
533 B(Ldar), R(closure),
534 B(CreateCatchContext), R(21), U8(12), U8(18),
535 B(Star), R(20),
536 B(LdaTheHole),
537 B(SetPendingMessage),
538 B(Ldar), R(20),
539 B(PushContext), R(21),
540 B(PopContext), R(21),
541 B(Jump), U8(92),
542 B(LdaUndefined),
543 B(Star), R(21),
544 B(Mov), R(9), R(23),
545 B(Mov), R(4), R(24),
546 B(InvokeIntrinsic), U8(Runtime::k_Call), R(23), U8(2),
547 B(Star), R(23),
548 B(Mov), R(2), R(22),
549 B(Mov), R(7), R(24),
550 B(CallJSRuntime), U8(%async_function_await_uncaught), R(21), U8( 4),
551 B(LdaSmi), I8(2),
552 B(Mov), R(2), R(20),
553 B(Mov), R(7), R(21),
554 B(SuspendGenerator), R(20), R(0), U8(21), U8(2),
555 B(Ldar), R(21),
556 /* 68 S> */ B(Return),
557 B(RestoreGeneratorRegisters), R(11), R(0), U8(21),
558 B(LdaSmi), I8(-2),
559 B(Star), R(12),
560 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(20), U8(1),
561 B(Star), R(21),
562 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(20) , U8(1),
563 B(SwitchOnSmiNoFeedback), U8(19), U8(2), I8(0),
564 B(Ldar), R(21),
565 B(ReThrow),
566 B(LdaZero),
567 B(Star), R(13),
568 B(Mov), R(21), R(14),
593 B(Jump), U8(127), 569 B(Jump), U8(127),
594 B(Mov), R(22), R(10), 570 B(Mov), R(21), R(10),
595 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(10), U8(1), 571 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(10), U8(1),
596 B(JumpIfToBooleanFalse), U8(4), 572 B(JumpIfToBooleanFalse), U8(4),
597 B(Jump), U8(7), 573 B(Jump), U8(7),
598 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (10), U8(1), 574 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (10), U8(1),
599 B(Ldar), R(20), 575 B(Ldar), R(19),
600 B(SetPendingMessage), 576 B(SetPendingMessage),
601 B(Ldar), R(18), 577 B(Ldar), R(17),
602 B(SwitchOnSmiNoFeedback), U8(21), U8(3), I8(0), 578 B(SwitchOnSmiNoFeedback), U8(21), U8(3), I8(0),
603 B(Jump), U8(22), 579 B(Jump), U8(22),
604 B(LdaZero), 580 B(LdaZero),
605 B(Star), R(14), 581 B(Star), R(13),
606 B(Mov), R(19), R(15), 582 B(Mov), R(18), R(14),
607 B(Jump), U8(92), 583 B(Jump), U8(92),
608 B(LdaSmi), I8(1), 584 B(LdaSmi), I8(1),
609 B(Star), R(14), 585 B(Star), R(13),
610 B(Mov), R(19), R(15), 586 B(Mov), R(18), R(14),
611 B(Jump), U8(83), 587 B(Jump), U8(83),
612 B(Ldar), R(19), 588 B(Ldar), R(18),
613 B(ReThrow), 589 B(ReThrow),
614 B(LdaUndefined), 590 B(LdaUndefined),
615 B(Star), R(18), 591 B(Star), R(17),
616 B(LdaUndefined), 592 B(LdaUndefined),
617 B(Star), R(20), 593 B(Star), R(19),
618 B(Mov), R(7), R(19), 594 B(Mov), R(7), R(18),
619 B(CallJSRuntime), U8(%promise_resolve), R(18), U8(3), 595 B(CallJSRuntime), U8(%promise_resolve), R(17), U8(3),
620 B(LdaZero), 596 B(LdaZero),
621 B(Star), R(14), 597 B(Star), R(13),
622 B(Mov), R(7), R(15), 598 B(Mov), R(7), R(14),
623 B(Jump), U8(59), 599 B(Jump), U8(59),
624 B(Jump), U8(45), 600 B(Jump), U8(45),
625 B(Star), R(18), 601 B(Star), R(17),
626 B(Ldar), R(closure), 602 B(Ldar), R(closure),
627 B(CreateCatchContext), R(18), U8(12), U8(24), 603 B(CreateCatchContext), R(17), U8(12), U8(24),
628 B(Star), R(17), 604 B(Star), R(16),
629 B(LdaTheHole), 605 B(LdaTheHole),
630 B(SetPendingMessage), 606 B(SetPendingMessage),
631 B(Ldar), R(17), 607 B(Ldar), R(16),
632 B(PushContext), R(18), 608 B(PushContext), R(17),
633 B(LdaUndefined), 609 B(LdaUndefined),
634 B(Star), R(19), 610 B(Star), R(18),
635 B(LdaImmutableCurrentContextSlot), U8(4), 611 B(LdaImmutableCurrentContextSlot), U8(4),
612 B(Star), R(20),
613 B(LdaFalse),
636 B(Star), R(21), 614 B(Star), R(21),
637 B(LdaFalse), 615 B(Mov), R(7), R(19),
638 B(Star), R(22), 616 B(CallJSRuntime), U8(%promise_internal_reject), R(18), U8(4),
639 B(Mov), R(7), R(20), 617 B(PopContext), R(17),
640 B(CallJSRuntime), U8(%promise_internal_reject), R(19), U8(4),
641 B(PopContext), R(18),
642 B(LdaZero), 618 B(LdaZero),
643 B(Star), R(14), 619 B(Star), R(13),
644 B(Mov), R(7), R(15), 620 B(Mov), R(7), R(14),
645 B(Jump), U8(14), 621 B(Jump), U8(14),
646 B(LdaSmi), I8(-1), 622 B(LdaSmi), I8(-1),
623 B(Star), R(13),
624 B(Jump), U8(8),
647 B(Star), R(14), 625 B(Star), R(14),
648 B(Jump), U8(8),
649 B(Star), R(15),
650 B(LdaSmi), I8(2), 626 B(LdaSmi), I8(2),
651 B(Star), R(14), 627 B(Star), R(13),
652 B(LdaTheHole), 628 B(LdaTheHole),
653 B(SetPendingMessage), 629 B(SetPendingMessage),
630 B(Star), R(15),
631 B(LdaUndefined),
654 B(Star), R(16), 632 B(Star), R(16),
655 B(LdaUndefined), 633 B(Mov), R(7), R(17),
656 B(Star), R(17), 634 B(CallJSRuntime), U8(%async_function_promise_release), R(16), U8 (2),
657 B(Mov), R(7), R(18), 635 B(Ldar), R(15),
658 B(CallJSRuntime), U8(%async_function_promise_release), R(17), U8 (2),
659 B(Ldar), R(16),
660 B(SetPendingMessage), 636 B(SetPendingMessage),
661 B(Ldar), R(14), 637 B(Ldar), R(13),
662 B(SwitchOnSmiNoFeedback), U8(25), U8(3), I8(0), 638 B(SwitchOnSmiNoFeedback), U8(25), U8(3), I8(0),
663 B(Jump), U8(24), 639 B(Jump), U8(24),
664 B(Ldar), R(15), 640 B(Ldar), R(14),
665 /* 68 S> */ B(Return), 641 /* 68 S> */ B(Return),
666 B(LdaUndefined), 642 B(LdaUndefined),
667 B(Star), R(17), 643 B(Star), R(16),
668 B(Mov), R(7), R(18), 644 B(Mov), R(7), R(17),
669 B(Mov), R(15), R(19), 645 B(Mov), R(14), R(18),
670 B(CallJSRuntime), U8(%promise_resolve), R(17), U8(3), 646 B(CallJSRuntime), U8(%promise_resolve), R(16), U8(3),
671 B(Ldar), R(7), 647 B(Ldar), R(7),
672 /* 68 S> */ B(Return), 648 /* 68 S> */ B(Return),
673 B(Ldar), R(15), 649 B(Ldar), R(14),
674 B(ReThrow), 650 B(ReThrow),
675 B(LdaUndefined), 651 B(LdaUndefined),
676 /* 68 S> */ B(Return), 652 /* 68 S> */ B(Return),
677 ] 653 ]
678 constant pool: [ 654 constant pool: [
679 Smi [102], 655 Smi [102],
680 Smi [400], 656 Smi [391],
681 Smi [507], 657 Smi [489],
682 TUPLE2_TYPE, 658 TUPLE2_TYPE,
683 SYMBOL_TYPE, 659 SYMBOL_TYPE,
684 SYMBOL_TYPE, 660 SYMBOL_TYPE,
685 Smi [59], 661 Smi [59],
686 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], 662 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"],
687 Smi [24], 663 Smi [15],
688 Smi [7], 664 Smi [7],
689 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], 665 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"],
690 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], 666 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"],
691 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], 667 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"],
692 FIXED_ARRAY_TYPE, 668 FIXED_ARRAY_TYPE,
693 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], 669 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"],
694 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], 670 ONE_BYTE_INTERNALIZED_STRING_TYPE [""],
695 Smi [24], 671 Smi [15],
696 Smi [7], 672 Smi [7],
697 FIXED_ARRAY_TYPE, 673 FIXED_ARRAY_TYPE,
698 Smi [24], 674 Smi [15],
699 Smi [7], 675 Smi [7],
700 Smi [6], 676 Smi [6],
701 Smi [14], 677 Smi [14],
702 Smi [23], 678 Smi [23],
703 FIXED_ARRAY_TYPE, 679 FIXED_ARRAY_TYPE,
704 Smi [6], 680 Smi [6],
705 Smi [9], 681 Smi [9],
706 Smi [25], 682 Smi [25],
707 ] 683 ]
708 handlers: [ 684 handlers: [
709 [62, 679, 685], 685 [62, 652, 658],
710 [65, 634, 636], 686 [65, 607, 609],
711 [71, 309, 315], 687 [71, 300, 306],
712 [74, 269, 271], 688 [74, 260, 262],
713 [376, 461, 463], 689 [367, 443, 445],
714 ] 690 ]
715 691
716 --- 692 ---
717 snippet: " 693 snippet: "
718 async function f() { 694 async function f() {
719 for await (let x of [10, 20, 30]) { 695 for await (let x of [10, 20, 30]) {
720 if (x == 10) continue; 696 if (x == 10) continue;
721 if (x == 20) break; 697 if (x == 20) break;
722 } 698 }
723 } 699 }
724 f(); 700 f();
725 " 701 "
726 frame size: 27 702 frame size: 26
727 parameter count: 1 703 parameter count: 1
728 bytecode array length: 730 704 bytecode array length: 703
729 bytecodes: [ 705 bytecodes: [
730 B(Mov), R(new_target), R(11), 706 B(Mov), R(new_target), R(11),
731 B(Ldar), R(new_target), 707 B(Ldar), R(new_target),
732 B(JumpIfUndefined), U8(25), 708 B(JumpIfUndefined), U8(25),
733 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(11), U 8(1), 709 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(11), U 8(1),
734 B(PushContext), R(13), 710 B(PushContext), R(13),
735 B(RestoreGeneratorState), R(11), 711 B(RestoreGeneratorState), R(11),
736 B(Star), R(12), 712 B(Star), R(12),
737 B(SwitchOnSmiNoFeedback), U8(0), U8(3), I8(0), 713 B(SwitchOnSmiNoFeedback), U8(0), U8(3), I8(0),
738 B(LdaSmi), I8(79), 714 B(LdaSmi), I8(79),
739 B(Star), R(14), 715 B(Star), R(13),
740 B(CallRuntime), U16(Runtime::kAbort), R(14), U8(1), 716 B(CallRuntime), U16(Runtime::kAbort), R(13), U8(1),
741 B(LdaSmi), I8(-2), 717 B(LdaSmi), I8(-2),
742 B(Star), R(12), 718 B(Star), R(12),
743 B(Mov), R(closure), R(14), 719 B(Mov), R(closure), R(13),
744 B(Mov), R(this), R(15), 720 B(Mov), R(this), R(14),
745 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(14 ), U8(2), 721 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(13 ), U8(2),
746 B(Star), R(2), 722 B(Star), R(2),
747 /* 16 E> */ B(StackCheck), 723 /* 16 E> */ B(StackCheck),
748 B(LdaUndefined), 724 B(LdaUndefined),
749 B(Star), R(14), 725 B(Star), R(13),
750 B(CallJSRuntime), U8(%async_function_promise_create), R(14), U8( 1), 726 B(CallJSRuntime), U8(%async_function_promise_create), R(13), U8( 1),
751 B(Star), R(7), 727 B(Star), R(7),
728 B(Mov), R(context), R(15),
729 B(Mov), R(2), R(11),
752 B(Mov), R(context), R(16), 730 B(Mov), R(context), R(16),
753 B(Mov), R(2), R(11),
754 B(Mov), R(context), R(17),
755 B(LdaZero), 731 B(LdaZero),
756 B(Star), R(6), 732 B(Star), R(6),
733 B(Mov), R(context), R(19),
757 B(Mov), R(context), R(20), 734 B(Mov), R(context), R(20),
758 B(Mov), R(context), R(21),
759 /* 43 S> */ B(CreateArrayLiteral), U8(3), U8(3), U8(17), 735 /* 43 S> */ B(CreateArrayLiteral), U8(3), U8(3), U8(17),
760 B(Star), R(22), 736 B(Star), R(21),
761 B(LdaNamedProperty), R(22), U8(4), U8(8), 737 B(LdaNamedProperty), R(21), U8(4), U8(8),
762 B(JumpIfUndefined), U8(17), 738 B(JumpIfUndefined), U8(17),
763 B(JumpIfNull), U8(15), 739 B(JumpIfNull), U8(15),
764 B(Star), R(23), 740 B(Star), R(22),
765 B(CallProperty0), R(23), R(22), U8(10), 741 B(CallProperty0), R(22), R(21), U8(10),
766 B(JumpIfJSReceiver), U8(23), 742 B(JumpIfJSReceiver), U8(23),
767 B(CallRuntime), U16(Runtime::kThrowSymbolAsyncIteratorInvalid), R(0), U8(0), 743 B(CallRuntime), U16(Runtime::kThrowSymbolAsyncIteratorInvalid), R(0), U8(0),
768 B(LdaNamedProperty), R(22), U8(5), U8(4), 744 B(LdaNamedProperty), R(21), U8(5), U8(4),
769 B(Star), R(23), 745 B(Star), R(22),
770 B(CallProperty0), R(23), R(22), U8(6), 746 B(CallProperty0), R(22), R(21), U8(6),
771 B(Star), R(23), 747 B(Star), R(22),
772 B(InvokeIntrinsic), U8(Runtime::k_CreateAsyncFromSyncIterator), R(23), U8(1), 748 B(InvokeIntrinsic), U8(Runtime::k_CreateAsyncFromSyncIterator), R(22), U8(1),
773 B(Star), R(4), 749 B(Star), R(4),
774 B(Ldar), R(12), 750 B(Ldar), R(12),
775 B(SwitchOnSmiNoFeedback), U8(6), U8(1), I8(0), 751 B(SwitchOnSmiNoFeedback), U8(6), U8(1), I8(0),
776 B(LdaSmi), I8(-2), 752 B(LdaSmi), I8(-2),
777 /* 43 E> */ B(TestEqualStrictNoFeedback), R(12), 753 /* 43 E> */ B(TestEqualStrictNoFeedback), R(12),
778 B(JumpIfTrue), U8(11), 754 B(JumpIfTrue), U8(11),
779 B(LdaSmi), I8(79), 755 B(LdaSmi), I8(79),
756 B(Star), R(21),
757 B(CallRuntime), U16(Runtime::kAbort), R(21), U8(1),
758 /* 40 S> */ B(LdaUndefined),
780 B(Star), R(22), 759 B(Star), R(22),
781 B(CallRuntime), U16(Runtime::kAbort), R(22), U8(1),
782 /* 40 S> */ B(LdaUndefined),
783 B(Star), R(23),
784 /* 40 E> */ B(LdaNamedProperty), R(4), U8(7), U8(14), 760 /* 40 E> */ B(LdaNamedProperty), R(4), U8(7), U8(14),
785 B(Star), R(25), 761 B(Star), R(24),
786 B(CallProperty0), R(25), R(4), U8(12), 762 B(CallProperty0), R(24), R(4), U8(12),
787 B(Star), R(25), 763 B(Star), R(24),
788 B(Mov), R(2), R(24), 764 B(Mov), R(2), R(23),
789 B(Mov), R(7), R(26), 765 B(Mov), R(7), R(25),
790 B(CallJSRuntime), U8(%async_function_await_uncaught), R(23), U8( 4), 766 B(CallJSRuntime), U8(%async_function_await_uncaught), R(22), U8( 4),
791 B(LdaZero), 767 B(LdaZero),
792 B(Mov), R(2), R(22), 768 B(Mov), R(2), R(21),
793 B(Mov), R(7), R(23), 769 B(Mov), R(7), R(22),
794 B(SuspendGenerator), R(22), R(0), U8(23), U8(2), 770 B(SuspendGenerator), R(21), R(0), U8(22), U8(2),
795 B(Ldar), R(23), 771 B(Ldar), R(22),
796 /* 114 S> */ B(Return), 772 /* 114 S> */ B(Return),
797 B(RestoreGeneratorRegisters), R(11), R(0), U8(23), 773 B(RestoreGeneratorRegisters), R(11), R(0), U8(22),
798 B(LdaSmi), I8(-2), 774 B(LdaSmi), I8(-2),
799 B(Star), R(12), 775 B(Star), R(12),
800 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(22), U8(1), 776 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(21), U8(1),
801 B(Star), R(23), 777 B(Star), R(22),
802 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(22) , U8(1), 778 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(21) , U8(1),
803 B(SwitchOnSmiNoFeedback), U8(8), U8(2), I8(0), 779 B(SwitchOnSmiNoFeedback), U8(8), U8(2), I8(0),
804 B(Ldar), R(23), 780 B(Ldar), R(22),
805 /* 40 E> */ B(ReThrow), 781 /* 40 E> */ B(ReThrow),
806 B(LdaTrue),
807 B(Star), R(25),
808 B(Mov), R(23), R(24),
809 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(24) , U8(2),
810 B(Star), R(19),
811 B(LdaZero), 782 B(LdaZero),
812 B(Star), R(18), 783 B(Star), R(17),
784 B(Mov), R(22), R(18),
813 B(Jump), U8(116), 785 B(Jump), U8(116),
814 B(Mov), R(23), R(5), 786 B(Mov), R(22), R(5),
815 /* 40 E> */ B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(5), U8(1), 787 /* 40 E> */ B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(5), U8(1),
816 B(ToBooleanLogicalNot), 788 B(ToBooleanLogicalNot),
817 B(JumpIfFalse), U8(7), 789 B(JumpIfFalse), U8(7),
818 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (5), U8(1), 790 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (5), U8(1),
819 B(LdaNamedProperty), R(5), U8(10), U8(16), 791 B(LdaNamedProperty), R(5), U8(10), U8(16),
820 B(JumpIfToBooleanTrue), U8(43), 792 B(JumpIfToBooleanTrue), U8(43),
821 B(LdaNamedProperty), R(5), U8(11), U8(18), 793 B(LdaNamedProperty), R(5), U8(11), U8(18),
822 B(Star), R(8), 794 B(Star), R(8),
823 B(LdaSmi), I8(2), 795 B(LdaSmi), I8(2),
824 B(Star), R(6), 796 B(Star), R(6),
825 B(Mov), R(8), R(3), 797 B(Mov), R(8), R(3),
826 /* 23 E> */ B(StackCheck), 798 /* 23 E> */ B(StackCheck),
827 B(Mov), R(3), R(0), 799 B(Mov), R(3), R(0),
828 /* 63 S> */ B(LdaSmi), I8(10), 800 /* 63 S> */ B(LdaSmi), I8(10),
829 /* 69 E> */ B(TestEqual), R(0), U8(20), 801 /* 69 E> */ B(TestEqual), R(0), U8(20),
830 B(JumpIfFalse), U8(4), 802 B(JumpIfFalse), U8(4),
831 /* 76 S> */ B(Jump), U8(14), 803 /* 76 S> */ B(Jump), U8(14),
832 /* 90 S> */ B(LdaSmi), I8(20), 804 /* 90 S> */ B(LdaSmi), I8(20),
833 /* 96 E> */ B(TestEqual), R(0), U8(21), 805 /* 96 E> */ B(TestEqual), R(0), U8(21),
834 B(JumpIfFalse), U8(4), 806 B(JumpIfFalse), U8(4),
835 /* 103 S> */ B(Jump), U8(8), 807 /* 103 S> */ B(Jump), U8(8),
836 B(LdaZero), 808 B(LdaZero),
837 B(Star), R(6), 809 B(Star), R(6),
838 B(JumpLoop), U8(162), I8(0), 810 B(JumpLoop), U8(153), I8(0),
839 B(Jump), U8(40), 811 B(Jump), U8(40),
840 B(Star), R(22), 812 B(Star), R(21),
841 B(Ldar), R(closure), 813 B(Ldar), R(closure),
842 B(CreateCatchContext), R(22), U8(12), U8(13), 814 B(CreateCatchContext), R(21), U8(12), U8(13),
843 B(Star), R(21), 815 B(Star), R(20),
844 B(LdaTheHole), 816 B(LdaTheHole),
845 B(SetPendingMessage), 817 B(SetPendingMessage),
846 B(Ldar), R(21), 818 B(Ldar), R(20),
847 B(PushContext), R(22), 819 B(PushContext), R(21),
848 B(LdaSmi), I8(2), 820 B(LdaSmi), I8(2),
849 B(TestEqualStrict), R(6), U8(22), 821 B(TestEqualStrict), R(6), U8(22),
850 B(JumpIfFalse), U8(6), 822 B(JumpIfFalse), U8(6),
851 B(LdaSmi), I8(1), 823 B(LdaSmi), I8(1),
852 B(Star), R(6), 824 B(Star), R(6),
853 B(LdaImmutableCurrentContextSlot), U8(4), 825 B(LdaImmutableCurrentContextSlot), U8(4),
854 B(Star), R(23), 826 B(Star), R(22),
855 B(CallRuntime), U16(Runtime::kReThrow), R(23), U8(1), 827 B(CallRuntime), U16(Runtime::kReThrow), R(22), U8(1),
856 B(PopContext), R(22), 828 B(PopContext), R(21),
857 B(LdaSmi), I8(-1), 829 B(LdaSmi), I8(-1),
830 B(Star), R(17),
831 B(Jump), U8(8),
858 B(Star), R(18), 832 B(Star), R(18),
859 B(Jump), U8(8),
860 B(Star), R(19),
861 B(LdaSmi), I8(1), 833 B(LdaSmi), I8(1),
862 B(Star), R(18), 834 B(Star), R(17),
863 B(LdaTheHole), 835 B(LdaTheHole),
864 B(SetPendingMessage), 836 B(SetPendingMessage),
865 B(Star), R(20), 837 B(Star), R(19),
866 B(LdaZero), 838 B(LdaZero),
867 B(TestEqualStrict), R(6), U8(23), 839 B(TestEqualStrict), R(6), U8(23),
868 B(JumpIfTrue), U8(253), 840 B(JumpIfTrue), U8(235),
869 B(LdaNamedProperty), R(4), U8(14), U8(24), 841 B(LdaNamedProperty), R(4), U8(14), U8(24),
870 B(Star), R(9), 842 B(Star), R(9),
871 B(TestUndetectable), 843 B(TestUndetectable),
872 B(JumpIfFalse), U8(4), 844 B(JumpIfFalse), U8(4),
873 B(Jump), U8(242), 845 B(Jump), U8(224),
874 B(LdaSmi), I8(1), 846 B(LdaSmi), I8(1),
875 B(TestEqualStrict), R(6), U8(27), 847 B(TestEqualStrict), R(6), U8(27),
876 B(JumpIfFalse), U8(136), 848 B(JumpIfFalse), U8(127),
877 B(Ldar), R(9), 849 B(Ldar), R(9),
878 B(TestTypeOf), U8(5), 850 B(TestTypeOf), U8(5),
879 B(JumpIfFalse), U8(4), 851 B(JumpIfFalse), U8(4),
880 B(Jump), U8(18), 852 B(Jump), U8(18),
881 B(Wide), B(LdaSmi), I16(130), 853 B(Wide), B(LdaSmi), I16(130),
854 B(Star), R(20),
855 B(LdaConstant), U8(15),
882 B(Star), R(21), 856 B(Star), R(21),
883 B(LdaConstant), U8(15), 857 B(CallRuntime), U16(Runtime::kNewTypeError), R(20), U8(2),
884 B(Star), R(22),
885 B(CallRuntime), U16(Runtime::kNewTypeError), R(21), U8(2),
886 B(Throw), 858 B(Throw),
887 B(Mov), R(context), R(21), 859 B(Mov), R(context), R(20),
888 B(LdaUndefined),
889 B(Star), R(23),
890 B(Mov), R(9), R(25),
891 B(Mov), R(4), R(26),
892 B(InvokeIntrinsic), U8(Runtime::k_Call), R(25), U8(2),
893 B(Star), R(25),
894 B(Mov), R(2), R(24),
895 B(Mov), R(7), R(26),
896 B(CallJSRuntime), U8(%async_function_await_caught), R(23), U8(4) ,
897 B(LdaSmi), I8(1),
898 B(Mov), R(2), R(22),
899 B(Mov), R(7), R(23),
900 B(SuspendGenerator), R(22), R(0), U8(23), U8(2),
901 B(Ldar), R(23),
902 /* 114 S> */ B(Return),
903 B(RestoreGeneratorRegisters), R(11), R(0), U8(23),
904 B(LdaSmi), I8(-2),
905 B(Star), R(12),
906 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(22), U8(1),
907 B(Star), R(23),
908 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(22) , U8(1),
909 B(SwitchOnSmiNoFeedback), U8(16), U8(2), I8(0),
910 B(Ldar), R(23),
911 B(ReThrow),
912 B(LdaTrue),
913 B(Star), R(25),
914 B(Mov), R(23), R(24),
915 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(24) , U8(2),
916 B(Star), R(15),
917 B(LdaZero),
918 B(Star), R(14),
919 B(Jump), U8(225),
920 B(Ldar), R(23),
921 B(Jump), U8(20),
922 B(Star), R(22),
923 B(Ldar), R(closure),
924 B(CreateCatchContext), R(22), U8(12), U8(18),
925 B(Star), R(21),
926 B(LdaTheHole),
927 B(SetPendingMessage),
928 B(Ldar), R(21),
929 B(PushContext), R(22),
930 B(PopContext), R(22),
931 B(Jump), U8(101),
932 B(LdaUndefined), 860 B(LdaUndefined),
933 B(Star), R(22), 861 B(Star), R(22),
934 B(Mov), R(9), R(24), 862 B(Mov), R(9), R(24),
935 B(Mov), R(4), R(25), 863 B(Mov), R(4), R(25),
936 B(InvokeIntrinsic), U8(Runtime::k_Call), R(24), U8(2), 864 B(InvokeIntrinsic), U8(Runtime::k_Call), R(24), U8(2),
937 B(Star), R(24), 865 B(Star), R(24),
938 B(Mov), R(2), R(23), 866 B(Mov), R(2), R(23),
939 B(Mov), R(7), R(25), 867 B(Mov), R(7), R(25),
940 B(CallJSRuntime), U8(%async_function_await_uncaught), R(22), U8( 4), 868 B(CallJSRuntime), U8(%async_function_await_caught), R(22), U8(4) ,
941 B(LdaSmi), I8(2), 869 B(LdaSmi), I8(1),
942 B(Mov), R(2), R(21), 870 B(Mov), R(2), R(21),
943 B(Mov), R(7), R(22), 871 B(Mov), R(7), R(22),
944 B(SuspendGenerator), R(21), R(0), U8(22), U8(2), 872 B(SuspendGenerator), R(21), R(0), U8(22), U8(2),
945 B(Ldar), R(22), 873 B(Ldar), R(22),
946 /* 114 S> */ B(Return), 874 /* 114 S> */ B(Return),
947 B(RestoreGeneratorRegisters), R(11), R(0), U8(22), 875 B(RestoreGeneratorRegisters), R(11), R(0), U8(22),
948 B(LdaSmi), I8(-2), 876 B(LdaSmi), I8(-2),
949 B(Star), R(12), 877 B(Star), R(12),
950 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(21), U8(1), 878 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(21), U8(1),
951 B(Star), R(22), 879 B(Star), R(22),
952 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(21) , U8(1), 880 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(21) , U8(1),
953 B(SwitchOnSmiNoFeedback), U8(19), U8(2), I8(0), 881 B(SwitchOnSmiNoFeedback), U8(16), U8(2), I8(0),
954 B(Ldar), R(22), 882 B(Ldar), R(22),
955 B(ReThrow), 883 B(ReThrow),
956 B(LdaTrue),
957 B(Star), R(24),
958 B(Mov), R(22), R(23),
959 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(23) , U8(2),
960 B(Star), R(15),
961 B(LdaZero), 884 B(LdaZero),
962 B(Star), R(14), 885 B(Star), R(13),
886 B(Mov), R(22), R(14),
887 B(Jump), U8(216),
888 B(Ldar), R(22),
889 B(Jump), U8(20),
890 B(Star), R(21),
891 B(Ldar), R(closure),
892 B(CreateCatchContext), R(21), U8(12), U8(18),
893 B(Star), R(20),
894 B(LdaTheHole),
895 B(SetPendingMessage),
896 B(Ldar), R(20),
897 B(PushContext), R(21),
898 B(PopContext), R(21),
899 B(Jump), U8(92),
900 B(LdaUndefined),
901 B(Star), R(21),
902 B(Mov), R(9), R(23),
903 B(Mov), R(4), R(24),
904 B(InvokeIntrinsic), U8(Runtime::k_Call), R(23), U8(2),
905 B(Star), R(23),
906 B(Mov), R(2), R(22),
907 B(Mov), R(7), R(24),
908 B(CallJSRuntime), U8(%async_function_await_uncaught), R(21), U8( 4),
909 B(LdaSmi), I8(2),
910 B(Mov), R(2), R(20),
911 B(Mov), R(7), R(21),
912 B(SuspendGenerator), R(20), R(0), U8(21), U8(2),
913 B(Ldar), R(21),
914 /* 114 S> */ B(Return),
915 B(RestoreGeneratorRegisters), R(11), R(0), U8(21),
916 B(LdaSmi), I8(-2),
917 B(Star), R(12),
918 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(20), U8(1),
919 B(Star), R(21),
920 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(20) , U8(1),
921 B(SwitchOnSmiNoFeedback), U8(19), U8(2), I8(0),
922 B(Ldar), R(21),
923 B(ReThrow),
924 B(LdaZero),
925 B(Star), R(13),
926 B(Mov), R(21), R(14),
963 B(Jump), U8(118), 927 B(Jump), U8(118),
964 B(Mov), R(22), R(10), 928 B(Mov), R(21), R(10),
965 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(10), U8(1), 929 B(InvokeIntrinsic), U8(Runtime::k_IsJSReceiver), R(10), U8(1),
966 B(JumpIfToBooleanFalse), U8(4), 930 B(JumpIfToBooleanFalse), U8(4),
967 B(Jump), U8(7), 931 B(Jump), U8(7),
968 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (10), U8(1), 932 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R (10), U8(1),
969 B(Ldar), R(20), 933 B(Ldar), R(19),
970 B(SetPendingMessage), 934 B(SetPendingMessage),
971 B(Ldar), R(18), 935 B(Ldar), R(17),
972 B(SwitchOnSmiNoFeedback), U8(21), U8(2), I8(0), 936 B(SwitchOnSmiNoFeedback), U8(21), U8(2), I8(0),
973 B(Jump), U8(13), 937 B(Jump), U8(13),
974 B(LdaZero), 938 B(LdaZero),
975 B(Star), R(14), 939 B(Star), R(13),
976 B(Mov), R(19), R(15), 940 B(Mov), R(18), R(14),
977 B(Jump), U8(83), 941 B(Jump), U8(83),
978 B(Ldar), R(19), 942 B(Ldar), R(18),
979 B(ReThrow), 943 B(ReThrow),
980 B(LdaUndefined), 944 B(LdaUndefined),
981 B(Star), R(18), 945 B(Star), R(17),
982 B(LdaUndefined), 946 B(LdaUndefined),
983 B(Star), R(20), 947 B(Star), R(19),
984 B(Mov), R(7), R(19), 948 B(Mov), R(7), R(18),
985 B(CallJSRuntime), U8(%promise_resolve), R(18), U8(3), 949 B(CallJSRuntime), U8(%promise_resolve), R(17), U8(3),
986 B(LdaZero), 950 B(LdaZero),
987 B(Star), R(14), 951 B(Star), R(13),
988 B(Mov), R(7), R(15), 952 B(Mov), R(7), R(14),
989 B(Jump), U8(59), 953 B(Jump), U8(59),
990 B(Jump), U8(45), 954 B(Jump), U8(45),
991 B(Star), R(18), 955 B(Star), R(17),
992 B(Ldar), R(closure), 956 B(Ldar), R(closure),
993 B(CreateCatchContext), R(18), U8(12), U8(23), 957 B(CreateCatchContext), R(17), U8(12), U8(23),
994 B(Star), R(17), 958 B(Star), R(16),
995 B(LdaTheHole), 959 B(LdaTheHole),
996 B(SetPendingMessage), 960 B(SetPendingMessage),
997 B(Ldar), R(17), 961 B(Ldar), R(16),
998 B(PushContext), R(18), 962 B(PushContext), R(17),
999 B(LdaUndefined), 963 B(LdaUndefined),
1000 B(Star), R(19), 964 B(Star), R(18),
1001 B(LdaImmutableCurrentContextSlot), U8(4), 965 B(LdaImmutableCurrentContextSlot), U8(4),
966 B(Star), R(20),
967 B(LdaFalse),
1002 B(Star), R(21), 968 B(Star), R(21),
1003 B(LdaFalse), 969 B(Mov), R(7), R(19),
1004 B(Star), R(22), 970 B(CallJSRuntime), U8(%promise_internal_reject), R(18), U8(4),
1005 B(Mov), R(7), R(20), 971 B(PopContext), R(17),
1006 B(CallJSRuntime), U8(%promise_internal_reject), R(19), U8(4),
1007 B(PopContext), R(18),
1008 B(LdaZero), 972 B(LdaZero),
1009 B(Star), R(14), 973 B(Star), R(13),
1010 B(Mov), R(7), R(15), 974 B(Mov), R(7), R(14),
1011 B(Jump), U8(14), 975 B(Jump), U8(14),
1012 B(LdaSmi), I8(-1), 976 B(LdaSmi), I8(-1),
977 B(Star), R(13),
978 B(Jump), U8(8),
1013 B(Star), R(14), 979 B(Star), R(14),
1014 B(Jump), U8(8),
1015 B(Star), R(15),
1016 B(LdaSmi), I8(1), 980 B(LdaSmi), I8(1),
1017 B(Star), R(14), 981 B(Star), R(13),
1018 B(LdaTheHole), 982 B(LdaTheHole),
1019 B(SetPendingMessage), 983 B(SetPendingMessage),
984 B(Star), R(15),
985 B(LdaUndefined),
1020 B(Star), R(16), 986 B(Star), R(16),
1021 B(LdaUndefined), 987 B(Mov), R(7), R(17),
1022 B(Star), R(17), 988 B(CallJSRuntime), U8(%async_function_promise_release), R(16), U8 (2),
1023 B(Mov), R(7), R(18), 989 B(Ldar), R(15),
1024 B(CallJSRuntime), U8(%async_function_promise_release), R(17), U8 (2),
1025 B(Ldar), R(16),
1026 B(SetPendingMessage), 990 B(SetPendingMessage),
1027 B(Ldar), R(14), 991 B(Ldar), R(13),
1028 B(SwitchOnSmiNoFeedback), U8(24), U8(2), I8(0), 992 B(SwitchOnSmiNoFeedback), U8(24), U8(2), I8(0),
1029 B(Jump), U8(8), 993 B(Jump), U8(8),
1030 B(Ldar), R(15), 994 B(Ldar), R(14),
1031 /* 114 S> */ B(Return), 995 /* 114 S> */ B(Return),
1032 B(Ldar), R(15), 996 B(Ldar), R(14),
1033 B(ReThrow), 997 B(ReThrow),
1034 B(LdaUndefined), 998 B(LdaUndefined),
1035 /* 114 S> */ B(Return), 999 /* 114 S> */ B(Return),
1036 ] 1000 ]
1037 constant pool: [ 1001 constant pool: [
1038 Smi [102], 1002 Smi [102],
1039 Smi [415], 1003 Smi [406],
1040 Smi [522], 1004 Smi [504],
1041 TUPLE2_TYPE, 1005 TUPLE2_TYPE,
1042 SYMBOL_TYPE, 1006 SYMBOL_TYPE,
1043 SYMBOL_TYPE, 1007 SYMBOL_TYPE,
1044 Smi [59], 1008 Smi [59],
1045 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], 1009 ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"],
1046 Smi [24], 1010 Smi [15],
1047 Smi [7], 1011 Smi [7],
1048 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], 1012 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"],
1049 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], 1013 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"],
1050 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], 1014 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"],
1051 FIXED_ARRAY_TYPE, 1015 FIXED_ARRAY_TYPE,
1052 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], 1016 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"],
1053 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], 1017 ONE_BYTE_INTERNALIZED_STRING_TYPE [""],
1054 Smi [24], 1018 Smi [15],
1055 Smi [7], 1019 Smi [7],
1056 FIXED_ARRAY_TYPE, 1020 FIXED_ARRAY_TYPE,
1057 Smi [24], 1021 Smi [15],
1058 Smi [7], 1022 Smi [7],
1059 Smi [6], 1023 Smi [6],
1060 Smi [14], 1024 Smi [14],
1061 FIXED_ARRAY_TYPE, 1025 FIXED_ARRAY_TYPE,
1062 Smi [6], 1026 Smi [6],
1063 Smi [9], 1027 Smi [9],
1064 ] 1028 ]
1065 handlers: [ 1029 handlers: [
1066 [62, 685, 691], 1030 [62, 658, 664],
1067 [65, 640, 642], 1031 [65, 613, 615],
1068 [71, 324, 330], 1032 [71, 315, 321],
1069 [74, 284, 286], 1033 [74, 275, 277],
1070 [391, 476, 478], 1034 [382, 458, 460],
1071 ] 1035 ]
1072 1036
1073 --- 1037 ---
1074 snippet: " 1038 snippet: "
1075 async function f() { 1039 async function f() {
1076 var x = { 'a': 1, 'b': 2 }; 1040 var x = { 'a': 1, 'b': 2 };
1077 for (x['a'] of [1,2,3]) { return x['a']; } 1041 for (x['a'] of [1,2,3]) { return x['a']; }
1078 } 1042 }
1079 f(); 1043 f();
1080 " 1044 "
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
1293 Smi [25], 1257 Smi [25],
1294 ] 1258 ]
1295 handlers: [ 1259 handlers: [
1296 [13, 371, 377], 1260 [13, 371, 377],
1297 [16, 325, 327], 1261 [16, 325, 327],
1298 [30, 157, 163], 1262 [30, 157, 163],
1299 [33, 117, 119], 1263 [33, 117, 119],
1300 [224, 234, 236], 1264 [224, 234, 236],
1301 ] 1265 ]
1302 1266
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698