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