1#
2# Autogenerated by generate-bytecode-expectations.
3#
4
5---
6wrap: yes
7
8---
9snippet: "
10  {
11    class A {
12      a;
13      ['b'];
14      static c;
15      static ['d'];
16    }
17
18    class B {
19      a = 1;
20      ['b'] = this.a;
21      static c = 3;
22      static ['d'] = this.c;
23    }
24    new A;
25    new B;
26  }
27"
28frame size: 9
29parameter count: 1
30bytecode array length: 168
31bytecodes: [
32  /*   30 E> */ B(CreateBlockContext), U8(0),
33                B(PushContext), R(2),
34                B(LdaTheHole),
35                B(StaCurrentContextSlot), U8(2),
36                B(LdaTheHole),
37                B(StaCurrentContextSlot), U8(3),
38                B(LdaTheHole),
39                B(Star6),
40                B(CreateClosure), U8(2), U8(0), U8(2),
41                B(Star3),
42                B(LdaConstant), U8(1),
43                B(Star4),
44  /*   60 S> */ B(LdaConstant), U8(3),
45                B(StaCurrentContextSlot), U8(2),
46                B(Star7),
47  /*   92 S> */ B(LdaConstant), U8(4),
48                B(Star8),
49                B(LdaConstant), U8(5),
50                B(TestEqualStrict), R(8), U8(0),
51                B(Mov), R(3), R(5),
52                B(JumpIfFalse), U8(7),
53                B(CallRuntime), U16(Runtime::kThrowStaticPrototypeError), R(0), U8(0),
54                B(Ldar), R(8),
55                B(StaCurrentContextSlot), U8(3),
56                B(CallRuntime), U16(Runtime::kDefineClass), R(4), U8(5),
57                B(Star4),
58                B(CreateClosure), U8(6), U8(1), U8(2),
59                B(Star5),
60                B(StaNamedProperty), R(3), U8(7), U8(1),
61                B(CreateClosure), U8(8), U8(2), U8(2),
62                B(Star7),
63                B(CallProperty0), R(7), R(3), U8(3),
64                B(PopContext), R(2),
65                B(Mov), R(3), R(0),
66  /*   38 E> */ B(CreateBlockContext), U8(9),
67                B(PushContext), R(2),
68                B(LdaTheHole),
69                B(StaCurrentContextSlot), U8(2),
70                B(LdaTheHole),
71                B(StaCurrentContextSlot), U8(3),
72                B(LdaTheHole),
73                B(Star6),
74                B(CreateClosure), U8(11), U8(3), U8(2),
75                B(Star3),
76                B(LdaConstant), U8(10),
77                B(Star4),
78  /*  131 S> */ B(LdaConstant), U8(3),
79                B(StaCurrentContextSlot), U8(2),
80                B(Star7),
81  /*  176 S> */ B(LdaConstant), U8(4),
82                B(Star8),
83                B(LdaConstant), U8(5),
84                B(TestEqualStrict), R(8), U8(0),
85                B(Mov), R(3), R(5),
86                B(JumpIfFalse), U8(7),
87                B(CallRuntime), U16(Runtime::kThrowStaticPrototypeError), R(0), U8(0),
88                B(Ldar), R(8),
89                B(StaCurrentContextSlot), U8(3),
90                B(CallRuntime), U16(Runtime::kDefineClass), R(4), U8(5),
91                B(Star4),
92                B(CreateClosure), U8(12), U8(4), U8(2),
93                B(Star5),
94                B(StaNamedProperty), R(3), U8(7), U8(5),
95                B(CreateClosure), U8(13), U8(5), U8(2),
96                B(Star7),
97                B(CallProperty0), R(7), R(3), U8(7),
98                B(PopContext), R(2),
99                B(Mov), R(3), R(1),
100  /*  197 S> */ B(Ldar), R(0),
101  /*  197 E> */ B(Construct), R(0), R(0), U8(0), U8(9),
102  /*  206 S> */ B(Ldar), R(1),
103  /*  206 E> */ B(Construct), R(1), R(0), U8(0), U8(11),
104                B(LdaUndefined),
105  /*  215 S> */ B(Return),
106]
107constant pool: [
108  SCOPE_INFO_TYPE,
109  FIXED_ARRAY_TYPE,
110  SHARED_FUNCTION_INFO_TYPE,
111  ONE_BYTE_INTERNALIZED_STRING_TYPE ["b"],
112  ONE_BYTE_INTERNALIZED_STRING_TYPE ["d"],
113  ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"],
114  SHARED_FUNCTION_INFO_TYPE,
115  SYMBOL_TYPE,
116  SHARED_FUNCTION_INFO_TYPE,
117  SCOPE_INFO_TYPE,
118  FIXED_ARRAY_TYPE,
119  SHARED_FUNCTION_INFO_TYPE,
120  SHARED_FUNCTION_INFO_TYPE,
121  SHARED_FUNCTION_INFO_TYPE,
122]
123handlers: [
124]
125
126---
127snippet: "
128  {
129    class A extends class {} {
130      a;
131      ['b'];
132      static c;
133      static ['d'];
134    }
135
136    class B extends class {} {
137      a = 1;
138      ['b'] = this.a;
139      static c = 3;
140      static ['d'] = this.c;
141      foo() { return 1; }
142      constructor() {
143        super();
144      }
145    }
146
147    class C extends B {
148      a = 1;
149      ['b'] = this.a;
150      static c = 3;
151      static ['d'] = super.foo();
152      constructor() {
153        (() => super())();
154      }
155    }
156
157    new A;
158    new B;
159    new C;
160  }
161"
162frame size: 12
163parameter count: 1
164bytecode array length: 303
165bytecodes: [
166  /*   30 E> */ B(CreateBlockContext), U8(0),
167                B(PushContext), R(3),
168                B(LdaTheHole),
169                B(StaCurrentContextSlot), U8(2),
170                B(LdaTheHole),
171                B(StaCurrentContextSlot), U8(3),
172                B(LdaTheHole),
173                B(Star11),
174                B(CreateClosure), U8(3), U8(0), U8(2),
175                B(Star8),
176                B(LdaConstant), U8(2),
177                B(Star9),
178                B(Mov), R(8), R(10),
179                B(CallRuntime), U16(Runtime::kDefineClass), R(9), U8(3),
180                B(Star9),
181                B(CreateClosure), U8(4), U8(1), U8(2),
182                B(Star4),
183                B(LdaConstant), U8(1),
184                B(Star5),
185  /*   77 S> */ B(LdaConstant), U8(5),
186                B(StaCurrentContextSlot), U8(2),
187                B(Star8),
188  /*  109 S> */ B(LdaConstant), U8(6),
189                B(Star9),
190                B(LdaConstant), U8(7),
191                B(TestEqualStrict), R(9), U8(0),
192                B(Mov), R(10), R(7),
193                B(Mov), R(4), R(6),
194                B(JumpIfFalse), U8(7),
195                B(CallRuntime), U16(Runtime::kThrowStaticPrototypeError), R(0), U8(0),
196                B(Ldar), R(9),
197                B(StaCurrentContextSlot), U8(3),
198                B(CallRuntime), U16(Runtime::kDefineClass), R(5), U8(5),
199                B(Star5),
200                B(CreateClosure), U8(8), U8(2), U8(2),
201                B(Star6),
202                B(StaNamedProperty), R(4), U8(9), U8(1),
203                B(CreateClosure), U8(10), U8(3), U8(2),
204                B(Star8),
205                B(CallProperty0), R(8), R(4), U8(3),
206                B(PopContext), R(3),
207                B(Mov), R(4), R(0),
208  /*   38 E> */ B(CreateBlockContext), U8(11),
209                B(PushContext), R(3),
210                B(LdaTheHole),
211                B(StaCurrentContextSlot), U8(2),
212                B(LdaTheHole),
213                B(StaCurrentContextSlot), U8(3),
214                B(LdaTheHole),
215                B(Star11),
216                B(CreateClosure), U8(14), U8(4), U8(2),
217                B(Star8),
218                B(LdaConstant), U8(13),
219                B(Star9),
220                B(Mov), R(8), R(10),
221                B(CallRuntime), U16(Runtime::kDefineClass), R(9), U8(3),
222                B(Star9),
223                B(CreateClosure), U8(15), U8(5), U8(2),
224                B(Star4),
225                B(LdaConstant), U8(12),
226                B(Star5),
227  /*  165 S> */ B(LdaConstant), U8(5),
228                B(StaCurrentContextSlot), U8(2),
229                B(Star8),
230  /*  210 S> */ B(LdaConstant), U8(6),
231                B(Star9),
232                B(LdaConstant), U8(7),
233                B(TestEqualStrict), R(9), U8(0),
234                B(Mov), R(4), R(6),
235                B(Mov), R(10), R(7),
236                B(JumpIfFalse), U8(7),
237                B(CallRuntime), U16(Runtime::kThrowStaticPrototypeError), R(0), U8(0),
238                B(Ldar), R(9),
239                B(StaCurrentContextSlot), U8(3),
240                B(CreateClosure), U8(16), U8(6), U8(2),
241                B(Star10),
242                B(CallRuntime), U16(Runtime::kDefineClass), R(5), U8(6),
243                B(Star5),
244                B(CreateClosure), U8(17), U8(7), U8(2),
245                B(Star6),
246                B(StaNamedProperty), R(4), U8(9), U8(5),
247                B(CreateClosure), U8(18), U8(8), U8(2),
248                B(Star8),
249                B(CallProperty0), R(8), R(4), U8(7),
250                B(PopContext), R(3),
251                B(Mov), R(4), R(1),
252  /*  122 E> */ B(CreateBlockContext), U8(19),
253                B(PushContext), R(3),
254                B(LdaTheHole),
255                B(StaCurrentContextSlot), U8(2),
256                B(LdaTheHole),
257                B(StaCurrentContextSlot), U8(3),
258  /*  313 E> */ B(CreateClosure), U8(21), U8(9), U8(2),
259                B(Star4),
260                B(LdaConstant), U8(20),
261                B(Star5),
262  /*  333 S> */ B(LdaConstant), U8(5),
263                B(StaCurrentContextSlot), U8(2),
264                B(Star8),
265  /*  378 S> */ B(LdaConstant), U8(6),
266                B(Star9),
267                B(LdaConstant), U8(7),
268                B(TestEqualStrict), R(9), U8(0),
269                B(Mov), R(4), R(6),
270                B(Mov), R(1), R(7),
271                B(JumpIfFalse), U8(7),
272                B(CallRuntime), U16(Runtime::kThrowStaticPrototypeError), R(0), U8(0),
273                B(Ldar), R(9),
274                B(StaCurrentContextSlot), U8(3),
275                B(CallRuntime), U16(Runtime::kDefineClass), R(5), U8(5),
276                B(StaCurrentContextSlot), U8(4),
277                B(Star5),
278                B(Ldar), R(4),
279                B(StaCurrentContextSlot), U8(5),
280                B(CreateClosure), U8(22), U8(10), U8(2),
281                B(Star6),
282                B(StaNamedProperty), R(4), U8(9), U8(9),
283                B(CreateClosure), U8(23), U8(11), U8(2),
284                B(Star8),
285                B(CallProperty0), R(8), R(4), U8(11),
286                B(PopContext), R(3),
287                B(Mov), R(4), R(2),
288  /*  456 S> */ B(Ldar), R(0),
289  /*  456 E> */ B(Construct), R(0), R(0), U8(0), U8(13),
290  /*  465 S> */ B(Ldar), R(1),
291  /*  465 E> */ B(Construct), R(1), R(0), U8(0), U8(15),
292  /*  474 S> */ B(Ldar), R(2),
293  /*  474 E> */ B(Construct), R(2), R(0), U8(0), U8(17),
294                B(LdaUndefined),
295  /*  483 S> */ B(Return),
296]
297constant pool: [
298  SCOPE_INFO_TYPE,
299  FIXED_ARRAY_TYPE,
300  FIXED_ARRAY_TYPE,
301  SHARED_FUNCTION_INFO_TYPE,
302  SHARED_FUNCTION_INFO_TYPE,
303  ONE_BYTE_INTERNALIZED_STRING_TYPE ["b"],
304  ONE_BYTE_INTERNALIZED_STRING_TYPE ["d"],
305  ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"],
306  SHARED_FUNCTION_INFO_TYPE,
307  SYMBOL_TYPE,
308  SHARED_FUNCTION_INFO_TYPE,
309  SCOPE_INFO_TYPE,
310  FIXED_ARRAY_TYPE,
311  FIXED_ARRAY_TYPE,
312  SHARED_FUNCTION_INFO_TYPE,
313  SHARED_FUNCTION_INFO_TYPE,
314  SHARED_FUNCTION_INFO_TYPE,
315  SHARED_FUNCTION_INFO_TYPE,
316  SHARED_FUNCTION_INFO_TYPE,
317  SCOPE_INFO_TYPE,
318  FIXED_ARRAY_TYPE,
319  SHARED_FUNCTION_INFO_TYPE,
320  SHARED_FUNCTION_INFO_TYPE,
321  SHARED_FUNCTION_INFO_TYPE,
322]
323handlers: [
324]
325
326