OLD | NEW |
1 # | 1 # |
2 # Autogenerated by generate-bytecode-expectations. | 2 # Autogenerated by generate-bytecode-expectations. |
3 # | 3 # |
4 | 4 |
5 --- | 5 --- |
6 pool type: mixed | 6 pool type: mixed |
7 execute: yes | 7 execute: yes |
8 wrap: yes | 8 wrap: yes |
9 | 9 |
10 --- | 10 --- |
11 snippet: " | 11 snippet: " |
12 class Person { | 12 class Person { |
13 constructor(name) { this.name = name; } | 13 constructor(name) { this.name = name; } |
14 speak() { console.log(this.name + ' is speaking.'); } | 14 speak() { console.log(this.name + ' is speaking.'); } |
15 } | 15 } |
16 " | 16 " |
17 frame size: 9 | 17 frame size: 10 |
18 parameter count: 1 | 18 parameter count: 1 |
19 bytecode array length: 72 | 19 bytecode array length: 74 |
20 bytecodes: [ | 20 bytecodes: [ |
21 B(LdaTheHole), | 21 B(LdaTheHole), |
22 B(Star), R(1), | 22 B(Star), R(2), |
23 /* 30 E> */ B(StackCheck), | 23 /* 30 E> */ B(StackCheck), |
24 B(LdaTheHole), | 24 B(LdaTheHole), |
25 B(Star), R(0), | 25 B(Star), R(0), |
26 B(LdaTheHole), | 26 /* 34 S> */ B(LdaTheHole), |
27 B(Star), R(2), | 27 B(Star), R(3), |
28 B(CreateClosure), U8(0), U8(2), | 28 B(CreateClosure), U8(0), U8(2), |
| 29 B(Star), R(4), |
| 30 B(LdaSmi), U8(34), |
| 31 B(Star), R(5), |
| 32 B(Wide), B(LdaSmi), U16(148), |
| 33 B(Star), R(6), |
| 34 B(CallRuntime), U16(Runtime::kDefineClass), R(3), U8(4), |
29 B(Star), R(3), | 35 B(Star), R(3), |
30 B(LdaSmi), U8(34), | 36 B(LdrNamedProperty), R(3), U8(1), U8(1), R(4), |
31 B(Star), R(4), | |
32 B(Wide), B(LdaSmi), U16(148), | |
33 B(Star), R(5), | |
34 B(CallRuntime), U16(Runtime::kDefineClass), R(2), U8(4), | |
35 B(Star), R(2), | |
36 B(LdrNamedProperty), R(2), U8(1), U8(1), R(3), | |
37 B(LdaConstant), U8(2), | 37 B(LdaConstant), U8(2), |
38 B(Star), R(5), | 38 B(Star), R(6), |
39 B(CreateClosure), U8(3), U8(2), | 39 B(CreateClosure), U8(3), U8(2), |
40 B(Star), R(6), | 40 B(Star), R(7), |
41 B(LdaSmi), U8(2), | 41 B(LdaSmi), U8(2), |
42 B(Star), R(7), | 42 B(Star), R(8), |
43 B(LdaZero), | 43 B(LdaZero), |
44 B(Star), R(8), | 44 B(Star), R(9), |
45 B(Mov), R(3), R(4), | 45 B(Mov), R(4), R(5), |
46 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(4)
, U8(5), | 46 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(5)
, U8(5), |
47 B(CallRuntime), U16(Runtime::kToFastProperties), R(2), U8(1), | 47 B(CallRuntime), U16(Runtime::kToFastProperties), R(3), U8(1), |
48 B(Star), R(0), | 48 B(Star), R(0), |
49 B(Star), R(1), | 49 B(Star), R(1), |
| 50 B(Star), R(2), |
50 B(LdaUndefined), | 51 B(LdaUndefined), |
51 /* 149 S> */ B(Return), | 52 /* 149 S> */ B(Return), |
52 ] | 53 ] |
53 constant pool: [ | 54 constant pool: [ |
54 InstanceType::SHARED_FUNCTION_INFO_TYPE, | 55 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
55 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 56 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
56 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 57 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
57 InstanceType::SHARED_FUNCTION_INFO_TYPE, | 58 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
58 ] | 59 ] |
59 handlers: [ | 60 handlers: [ |
60 ] | 61 ] |
61 | 62 |
62 --- | 63 --- |
63 snippet: " | 64 snippet: " |
64 class person { | 65 class person { |
65 constructor(name) { this.name = name; } | 66 constructor(name) { this.name = name; } |
66 speak() { console.log(this.name + ' is speaking.'); } | 67 speak() { console.log(this.name + ' is speaking.'); } |
67 } | 68 } |
68 " | 69 " |
69 frame size: 9 | 70 frame size: 10 |
70 parameter count: 1 | 71 parameter count: 1 |
71 bytecode array length: 72 | 72 bytecode array length: 74 |
72 bytecodes: [ | 73 bytecodes: [ |
73 B(LdaTheHole), | 74 B(LdaTheHole), |
74 B(Star), R(1), | 75 B(Star), R(2), |
75 /* 30 E> */ B(StackCheck), | 76 /* 30 E> */ B(StackCheck), |
76 B(LdaTheHole), | 77 B(LdaTheHole), |
77 B(Star), R(0), | 78 B(Star), R(0), |
78 B(LdaTheHole), | 79 /* 34 S> */ B(LdaTheHole), |
79 B(Star), R(2), | 80 B(Star), R(3), |
80 B(CreateClosure), U8(0), U8(2), | 81 B(CreateClosure), U8(0), U8(2), |
| 82 B(Star), R(4), |
| 83 B(LdaSmi), U8(34), |
| 84 B(Star), R(5), |
| 85 B(Wide), B(LdaSmi), U16(148), |
| 86 B(Star), R(6), |
| 87 B(CallRuntime), U16(Runtime::kDefineClass), R(3), U8(4), |
81 B(Star), R(3), | 88 B(Star), R(3), |
82 B(LdaSmi), U8(34), | 89 B(LdrNamedProperty), R(3), U8(1), U8(1), R(4), |
83 B(Star), R(4), | |
84 B(Wide), B(LdaSmi), U16(148), | |
85 B(Star), R(5), | |
86 B(CallRuntime), U16(Runtime::kDefineClass), R(2), U8(4), | |
87 B(Star), R(2), | |
88 B(LdrNamedProperty), R(2), U8(1), U8(1), R(3), | |
89 B(LdaConstant), U8(2), | 90 B(LdaConstant), U8(2), |
90 B(Star), R(5), | 91 B(Star), R(6), |
91 B(CreateClosure), U8(3), U8(2), | 92 B(CreateClosure), U8(3), U8(2), |
92 B(Star), R(6), | 93 B(Star), R(7), |
93 B(LdaSmi), U8(2), | 94 B(LdaSmi), U8(2), |
94 B(Star), R(7), | 95 B(Star), R(8), |
95 B(LdaZero), | 96 B(LdaZero), |
96 B(Star), R(8), | 97 B(Star), R(9), |
97 B(Mov), R(3), R(4), | 98 B(Mov), R(4), R(5), |
98 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(4)
, U8(5), | 99 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(5)
, U8(5), |
99 B(CallRuntime), U16(Runtime::kToFastProperties), R(2), U8(1), | 100 B(CallRuntime), U16(Runtime::kToFastProperties), R(3), U8(1), |
100 B(Star), R(0), | 101 B(Star), R(0), |
101 B(Star), R(1), | 102 B(Star), R(1), |
| 103 B(Star), R(2), |
102 B(LdaUndefined), | 104 B(LdaUndefined), |
103 /* 149 S> */ B(Return), | 105 /* 149 S> */ B(Return), |
104 ] | 106 ] |
105 constant pool: [ | 107 constant pool: [ |
106 InstanceType::SHARED_FUNCTION_INFO_TYPE, | 108 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
107 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 109 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
108 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 110 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
109 InstanceType::SHARED_FUNCTION_INFO_TYPE, | 111 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
110 ] | 112 ] |
111 handlers: [ | 113 handlers: [ |
112 ] | 114 ] |
113 | 115 |
114 --- | 116 --- |
115 snippet: " | 117 snippet: " |
116 var n0 = 'a'; | 118 var n0 = 'a'; |
117 var n1 = 'b'; | 119 var n1 = 'b'; |
118 class N { | 120 class N { |
119 [n0]() { return n0; } | 121 [n0]() { return n0; } |
120 static [n1]() { return n1; } | 122 static [n1]() { return n1; } |
121 } | 123 } |
122 " | 124 " |
123 frame size: 10 | 125 frame size: 11 |
124 parameter count: 1 | 126 parameter count: 1 |
125 bytecode array length: 126 | 127 bytecode array length: 128 |
126 bytecodes: [ | 128 bytecodes: [ |
127 B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U
8(1), | 129 B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U
8(1), |
128 B(PushContext), R(2), | 130 B(PushContext), R(3), |
129 B(LdaTheHole), | 131 B(LdaTheHole), |
130 B(Star), R(1), | 132 B(Star), R(2), |
131 /* 30 E> */ B(StackCheck), | 133 /* 30 E> */ B(StackCheck), |
132 /* 43 S> */ B(LdaConstant), U8(0), | 134 /* 43 S> */ B(LdaConstant), U8(0), |
133 /* 43 E> */ B(StaContextSlot), R(context), U8(4), | 135 /* 43 E> */ B(StaContextSlot), R(context), U8(4), |
134 /* 57 S> */ B(LdaConstant), U8(1), | 136 /* 57 S> */ B(LdaConstant), U8(1), |
135 /* 57 E> */ B(StaContextSlot), R(context), U8(5), | 137 /* 57 E> */ B(StaContextSlot), R(context), U8(5), |
136 B(LdaTheHole), | 138 B(LdaTheHole), |
137 B(Star), R(0), | 139 B(Star), R(0), |
138 B(LdaTheHole), | 140 /* 62 S> */ B(LdaTheHole), |
139 B(Star), R(3), | 141 B(Star), R(4), |
140 B(CreateClosure), U8(2), U8(2), | 142 B(CreateClosure), U8(2), U8(2), |
| 143 B(Star), R(5), |
| 144 B(LdaSmi), U8(62), |
| 145 B(Star), R(6), |
| 146 B(Wide), B(LdaSmi), U16(128), |
| 147 B(Star), R(7), |
| 148 B(CallRuntime), U16(Runtime::kDefineClass), R(4), U8(4), |
141 B(Star), R(4), | 149 B(Star), R(4), |
142 B(LdaSmi), U8(62), | 150 B(LdrNamedProperty), R(4), U8(3), U8(1), R(5), |
143 B(Star), R(5), | |
144 B(Wide), B(LdaSmi), U16(128), | |
145 B(Star), R(6), | |
146 B(CallRuntime), U16(Runtime::kDefineClass), R(3), U8(4), | |
147 B(Star), R(3), | |
148 B(LdrNamedProperty), R(3), U8(3), U8(1), R(4), | |
149 /* 75 E> */ B(LdaContextSlot), R(context), U8(4), | 151 /* 75 E> */ B(LdaContextSlot), R(context), U8(4), |
150 B(ToName), | 152 B(ToName), |
151 B(Star), R(6), | 153 B(Star), R(7), |
152 B(CreateClosure), U8(4), U8(2), | 154 B(CreateClosure), U8(4), U8(2), |
153 B(Star), R(7), | 155 B(Star), R(8), |
154 B(LdaSmi), U8(2), | 156 B(LdaSmi), U8(2), |
155 B(Star), R(8), | 157 B(Star), R(9), |
156 B(LdaSmi), U8(1), | 158 B(LdaSmi), U8(1), |
157 B(Star), R(9), | 159 B(Star), R(10), |
158 B(Mov), R(4), R(5), | 160 B(Mov), R(5), R(6), |
159 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(5)
, U8(5), | 161 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(6)
, U8(5), |
160 /* 106 E> */ B(LdaContextSlot), R(context), U8(5), | 162 /* 106 E> */ B(LdaContextSlot), R(context), U8(5), |
161 B(ToName), | 163 B(ToName), |
162 B(Star), R(6), | 164 B(Star), R(7), |
163 B(LdaConstant), U8(3), | 165 B(LdaConstant), U8(3), |
164 B(TestEqualStrict), R(6), | 166 B(TestEqualStrict), R(7), |
165 B(Mov), R(3), R(5), | 167 B(Mov), R(4), R(6), |
166 B(JumpIfToBooleanFalse), U8(7), | 168 B(JumpIfToBooleanFalse), U8(7), |
167 B(CallRuntime), U16(Runtime::kThrowStaticPrototypeError), R(0),
U8(0), | 169 B(CallRuntime), U16(Runtime::kThrowStaticPrototypeError), R(0),
U8(0), |
168 B(CreateClosure), U8(5), U8(2), | 170 B(CreateClosure), U8(5), U8(2), |
169 B(Star), R(7), | 171 B(Star), R(8), |
170 B(LdaSmi), U8(1), | 172 B(LdaSmi), U8(1), |
171 B(Star), R(9), | 173 B(Star), R(10), |
172 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(5)
, U8(5), | 174 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(6)
, U8(5), |
173 B(CallRuntime), U16(Runtime::kToFastProperties), R(3), U8(1), | 175 B(CallRuntime), U16(Runtime::kToFastProperties), R(4), U8(1), |
174 B(Star), R(0), | 176 B(Star), R(0), |
175 B(Star), R(1), | 177 B(Star), R(1), |
| 178 B(Star), R(2), |
176 B(LdaUndefined), | 179 B(LdaUndefined), |
177 /* 129 S> */ B(Return), | 180 /* 129 S> */ B(Return), |
178 ] | 181 ] |
179 constant pool: [ | 182 constant pool: [ |
180 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 183 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
181 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 184 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
182 InstanceType::SHARED_FUNCTION_INFO_TYPE, | 185 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
183 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 186 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
184 InstanceType::SHARED_FUNCTION_INFO_TYPE, | 187 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
185 InstanceType::SHARED_FUNCTION_INFO_TYPE, | 188 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
186 ] | 189 ] |
187 handlers: [ | 190 handlers: [ |
188 ] | 191 ] |
189 | 192 |
190 --- | 193 --- |
191 snippet: " | 194 snippet: " |
192 var count = 0; | 195 var count = 0; |
193 class C { constructor() { count++; }} | 196 class C { constructor() { count++; }} |
194 return new C(); | 197 return new C(); |
195 " | 198 " |
196 frame size: 7 | 199 frame size: 8 |
197 parameter count: 1 | 200 parameter count: 1 |
198 bytecode array length: 73 | 201 bytecode array length: 75 |
199 bytecodes: [ | 202 bytecodes: [ |
200 B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U
8(1), | 203 B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U
8(1), |
201 B(PushContext), R(2), | 204 B(PushContext), R(3), |
202 B(LdaTheHole), | 205 B(LdaTheHole), |
203 B(Star), R(1), | 206 B(Star), R(2), |
204 /* 30 E> */ B(StackCheck), | 207 /* 30 E> */ B(StackCheck), |
205 /* 46 S> */ B(LdaZero), | 208 /* 46 S> */ B(LdaZero), |
206 /* 46 E> */ B(StaContextSlot), R(context), U8(4), | 209 /* 46 E> */ B(StaContextSlot), R(context), U8(4), |
207 B(LdaTheHole), | 210 B(LdaTheHole), |
208 B(Star), R(0), | 211 B(Star), R(0), |
209 B(LdaTheHole), | 212 /* 49 S> */ B(LdaTheHole), |
210 B(Star), R(3), | 213 B(Star), R(4), |
211 B(CreateClosure), U8(0), U8(2), | 214 B(CreateClosure), U8(0), U8(2), |
| 215 B(Star), R(5), |
| 216 B(LdaSmi), U8(49), |
| 217 B(Star), R(6), |
| 218 B(LdaSmi), U8(86), |
| 219 B(Star), R(7), |
| 220 B(CallRuntime), U16(Runtime::kDefineClass), R(4), U8(4), |
212 B(Star), R(4), | 221 B(Star), R(4), |
213 B(LdaSmi), U8(49), | 222 B(LdrNamedProperty), R(4), U8(1), U8(1), R(5), |
214 B(Star), R(5), | 223 B(CallRuntime), U16(Runtime::kToFastProperties), R(4), U8(1), |
215 B(LdaSmi), U8(86), | |
216 B(Star), R(6), | |
217 B(CallRuntime), U16(Runtime::kDefineClass), R(3), U8(4), | |
218 B(Star), R(3), | |
219 B(LdrNamedProperty), R(3), U8(1), U8(1), R(4), | |
220 B(CallRuntime), U16(Runtime::kToFastProperties), R(3), U8(1), | |
221 B(Star), R(0), | 224 B(Star), R(0), |
222 B(Star), R(1), | 225 B(Star), R(1), |
| 226 B(Star), R(2), |
223 /* 87 S> */ B(JumpIfNotHole), U8(11), | 227 /* 87 S> */ B(JumpIfNotHole), U8(11), |
224 B(LdaConstant), U8(2), | 228 B(LdaConstant), U8(2), |
| 229 B(Star), R(5), |
| 230 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1), |
225 B(Star), R(4), | 231 B(Star), R(4), |
226 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), | 232 /* 94 E> */ B(New), R(4), R(0), U8(0), |
227 B(Star), R(3), | |
228 /* 94 E> */ B(New), R(3), R(0), U8(0), | |
229 /* 103 S> */ B(Return), | 233 /* 103 S> */ B(Return), |
230 ] | 234 ] |
231 constant pool: [ | 235 constant pool: [ |
232 InstanceType::SHARED_FUNCTION_INFO_TYPE, | 236 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
233 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 237 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
234 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 238 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
235 ] | 239 ] |
236 handlers: [ | 240 handlers: [ |
237 ] | 241 ] |
238 | 242 |
OLD | NEW |