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

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

Issue 2423053002: Install the 'name' property in classes at runtime (Closed)
Patch Set: Move computed property names check to parser and runtime function Created 4 years 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: yes 6 wrap: yes
7 7
8 --- 8 ---
9 snippet: " 9 snippet: "
10 class Person { 10 class Person {
11 constructor(name) { this.name = name; } 11 constructor(name) { this.name = name; }
12 speak() { console.log(this.name + ' is speaking.'); } 12 speak() { console.log(this.name + ' is speaking.'); }
13 } 13 }
14 " 14 "
15 frame size: 10 15 frame size: 10
16 parameter count: 1 16 parameter count: 1
17 bytecode array length: 74 17 bytecode array length: 85
18 bytecodes: [ 18 bytecodes: [
19 B(LdaTheHole), 19 B(LdaTheHole),
20 B(Star), R(2), 20 B(Star), R(2),
21 /* 30 E> */ B(StackCheck), 21 /* 30 E> */ B(StackCheck),
22 B(LdaTheHole), 22 B(LdaTheHole),
23 B(Star), R(0), 23 B(Star), R(0),
24 /* 34 S> */ B(LdaTheHole), 24 /* 34 S> */ B(LdaTheHole),
25 B(Star), R(3), 25 B(Star), R(3),
26 B(CreateClosure), U8(0), U8(2), 26 B(CreateClosure), U8(0), U8(2),
27 B(Star), R(4), 27 B(Star), R(4),
28 B(LdaSmi), U8(34), 28 B(LdaSmi), U8(34),
29 B(Star), R(5), 29 B(Star), R(5),
30 B(Wide), B(LdaSmi), U16(148), 30 B(Wide), B(LdaSmi), U16(148),
31 B(Star), R(6), 31 B(Star), R(6),
32 B(CallRuntime), U16(Runtime::kDefineClass), R(3), U8(4), 32 B(CallRuntime), U16(Runtime::kDefineClass), R(3), U8(4),
33 B(Star), R(3), 33 B(Star), R(3),
34 B(LdrNamedProperty), R(3), U8(1), U8(2), R(4), 34 B(LdrNamedProperty), R(3), U8(1), U8(2), R(4),
35 B(LdaConstant), U8(2), 35 B(LdaConstant), U8(2),
36 B(ToName), R(6), 36 B(ToName), R(6),
37 B(CreateClosure), U8(3), U8(2), 37 B(CreateClosure), U8(3), U8(2),
38 B(Star), R(7), 38 B(Star), R(7),
39 B(LdaSmi), U8(2), 39 B(LdaSmi), U8(2),
40 B(Star), R(8), 40 B(Star), R(8),
41 B(LdaZero), 41 B(LdaZero),
42 B(Star), R(9), 42 B(Star), R(9),
43 B(Mov), R(4), R(5), 43 B(Mov), R(4), R(5),
44 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(5) , U8(5), 44 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(5) , U8(5),
45 B(LdaFalse),
46 B(Star), R(6),
47 B(Mov), R(3), R(5),
48 B(CallRuntime), U16(Runtime::kInstallClassNameAccessor), R(5), U 8(2),
45 B(CallRuntime), U16(Runtime::kToFastProperties), R(3), U8(1), 49 B(CallRuntime), U16(Runtime::kToFastProperties), R(3), U8(1),
46 B(Star), R(0), 50 B(Star), R(0),
47 B(Star), R(1), 51 B(Star), R(1),
48 B(Star), R(2), 52 B(Star), R(2),
49 B(LdaUndefined), 53 B(LdaUndefined),
50 /* 149 S> */ B(Return), 54 /* 149 S> */ B(Return),
51 ] 55 ]
52 constant pool: [ 56 constant pool: [
53 SHARED_FUNCTION_INFO_TYPE, 57 SHARED_FUNCTION_INFO_TYPE,
54 ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"], 58 ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"],
55 ONE_BYTE_INTERNALIZED_STRING_TYPE ["speak"], 59 ONE_BYTE_INTERNALIZED_STRING_TYPE ["speak"],
56 SHARED_FUNCTION_INFO_TYPE, 60 SHARED_FUNCTION_INFO_TYPE,
57 ] 61 ]
58 handlers: [ 62 handlers: [
59 ] 63 ]
60 64
61 --- 65 ---
62 snippet: " 66 snippet: "
63 class person { 67 class person {
64 constructor(name) { this.name = name; } 68 constructor(name) { this.name = name; }
65 speak() { console.log(this.name + ' is speaking.'); } 69 speak() { console.log(this.name + ' is speaking.'); }
66 } 70 }
67 " 71 "
68 frame size: 10 72 frame size: 10
69 parameter count: 1 73 parameter count: 1
70 bytecode array length: 74 74 bytecode array length: 85
71 bytecodes: [ 75 bytecodes: [
72 B(LdaTheHole), 76 B(LdaTheHole),
73 B(Star), R(2), 77 B(Star), R(2),
74 /* 30 E> */ B(StackCheck), 78 /* 30 E> */ B(StackCheck),
75 B(LdaTheHole), 79 B(LdaTheHole),
76 B(Star), R(0), 80 B(Star), R(0),
77 /* 34 S> */ B(LdaTheHole), 81 /* 34 S> */ B(LdaTheHole),
78 B(Star), R(3), 82 B(Star), R(3),
79 B(CreateClosure), U8(0), U8(2), 83 B(CreateClosure), U8(0), U8(2),
80 B(Star), R(4), 84 B(Star), R(4),
81 B(LdaSmi), U8(34), 85 B(LdaSmi), U8(34),
82 B(Star), R(5), 86 B(Star), R(5),
83 B(Wide), B(LdaSmi), U16(148), 87 B(Wide), B(LdaSmi), U16(148),
84 B(Star), R(6), 88 B(Star), R(6),
85 B(CallRuntime), U16(Runtime::kDefineClass), R(3), U8(4), 89 B(CallRuntime), U16(Runtime::kDefineClass), R(3), U8(4),
86 B(Star), R(3), 90 B(Star), R(3),
87 B(LdrNamedProperty), R(3), U8(1), U8(2), R(4), 91 B(LdrNamedProperty), R(3), U8(1), U8(2), R(4),
88 B(LdaConstant), U8(2), 92 B(LdaConstant), U8(2),
89 B(ToName), R(6), 93 B(ToName), R(6),
90 B(CreateClosure), U8(3), U8(2), 94 B(CreateClosure), U8(3), U8(2),
91 B(Star), R(7), 95 B(Star), R(7),
92 B(LdaSmi), U8(2), 96 B(LdaSmi), U8(2),
93 B(Star), R(8), 97 B(Star), R(8),
94 B(LdaZero), 98 B(LdaZero),
95 B(Star), R(9), 99 B(Star), R(9),
96 B(Mov), R(4), R(5), 100 B(Mov), R(4), R(5),
97 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(5) , U8(5), 101 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(5) , U8(5),
102 B(LdaFalse),
103 B(Star), R(6),
104 B(Mov), R(3), R(5),
105 B(CallRuntime), U16(Runtime::kInstallClassNameAccessor), R(5), U 8(2),
98 B(CallRuntime), U16(Runtime::kToFastProperties), R(3), U8(1), 106 B(CallRuntime), U16(Runtime::kToFastProperties), R(3), U8(1),
99 B(Star), R(0), 107 B(Star), R(0),
100 B(Star), R(1), 108 B(Star), R(1),
101 B(Star), R(2), 109 B(Star), R(2),
102 B(LdaUndefined), 110 B(LdaUndefined),
103 /* 149 S> */ B(Return), 111 /* 149 S> */ B(Return),
104 ] 112 ]
105 constant pool: [ 113 constant pool: [
106 SHARED_FUNCTION_INFO_TYPE, 114 SHARED_FUNCTION_INFO_TYPE,
107 ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"], 115 ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"],
108 ONE_BYTE_INTERNALIZED_STRING_TYPE ["speak"], 116 ONE_BYTE_INTERNALIZED_STRING_TYPE ["speak"],
109 SHARED_FUNCTION_INFO_TYPE, 117 SHARED_FUNCTION_INFO_TYPE,
110 ] 118 ]
111 handlers: [ 119 handlers: [
112 ] 120 ]
113 121
114 --- 122 ---
115 snippet: " 123 snippet: "
116 var n0 = 'a'; 124 var n0 = 'a';
117 var n1 = 'b'; 125 var n1 = 'b';
118 class N { 126 class N {
119 [n0]() { return n0; } 127 [n0]() { return n0; }
120 static [n1]() { return n1; } 128 static [n1]() { return n1; }
121 } 129 }
122 " 130 "
123 frame size: 11 131 frame size: 11
124 parameter count: 1 132 parameter count: 1
125 bytecode array length: 128 133 bytecode array length: 139
126 bytecodes: [ 134 bytecodes: [
127 B(CreateFunctionContext), U8(2), 135 B(CreateFunctionContext), U8(2),
128 B(PushContext), R(3), 136 B(PushContext), R(3),
129 B(LdaTheHole), 137 B(LdaTheHole),
130 B(Star), R(2), 138 B(Star), R(2),
131 /* 30 E> */ B(StackCheck), 139 /* 30 E> */ B(StackCheck),
132 /* 43 S> */ B(LdaConstant), U8(0), 140 /* 43 S> */ B(LdaConstant), U8(0),
133 /* 43 E> */ B(StaContextSlot), R(context), U8(4), U8(0), 141 /* 43 E> */ B(StaContextSlot), R(context), U8(4), U8(0),
134 /* 57 S> */ B(LdaConstant), U8(1), 142 /* 57 S> */ B(LdaConstant), U8(1),
135 /* 57 E> */ B(StaContextSlot), R(context), U8(5), U8(0), 143 /* 57 E> */ B(StaContextSlot), R(context), U8(5), U8(0),
(...skipping 25 matching lines...) Expand all
161 B(LdaConstant), U8(3), 169 B(LdaConstant), U8(3),
162 B(TestEqualStrict), R(7), U8(0), 170 B(TestEqualStrict), R(7), U8(0),
163 B(Mov), R(4), R(6), 171 B(Mov), R(4), R(6),
164 B(JumpIfToBooleanFalse), U8(7), 172 B(JumpIfToBooleanFalse), U8(7),
165 B(CallRuntime), U16(Runtime::kThrowStaticPrototypeError), R(0), U8(0), 173 B(CallRuntime), U16(Runtime::kThrowStaticPrototypeError), R(0), U8(0),
166 B(CreateClosure), U8(5), U8(2), 174 B(CreateClosure), U8(5), U8(2),
167 B(Star), R(8), 175 B(Star), R(8),
168 B(LdaSmi), U8(1), 176 B(LdaSmi), U8(1),
169 B(Star), R(10), 177 B(Star), R(10),
170 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(6) , U8(5), 178 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(6) , U8(5),
179 B(LdaTrue),
180 B(Star), R(7),
181 B(Mov), R(4), R(6),
182 B(CallRuntime), U16(Runtime::kInstallClassNameAccessor), R(6), U 8(2),
171 B(CallRuntime), U16(Runtime::kToFastProperties), R(4), U8(1), 183 B(CallRuntime), U16(Runtime::kToFastProperties), R(4), U8(1),
172 B(Star), R(0), 184 B(Star), R(0),
173 B(Star), R(1), 185 B(Star), R(1),
174 B(Star), R(2), 186 B(Star), R(2),
175 B(LdaUndefined), 187 B(LdaUndefined),
176 /* 129 S> */ B(Return), 188 /* 129 S> */ B(Return),
177 ] 189 ]
178 constant pool: [ 190 constant pool: [
179 ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"], 191 ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
180 ONE_BYTE_INTERNALIZED_STRING_TYPE ["b"], 192 ONE_BYTE_INTERNALIZED_STRING_TYPE ["b"],
181 SHARED_FUNCTION_INFO_TYPE, 193 SHARED_FUNCTION_INFO_TYPE,
182 ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"], 194 ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"],
183 SHARED_FUNCTION_INFO_TYPE, 195 SHARED_FUNCTION_INFO_TYPE,
184 SHARED_FUNCTION_INFO_TYPE, 196 SHARED_FUNCTION_INFO_TYPE,
185 ] 197 ]
186 handlers: [ 198 handlers: [
187 ] 199 ]
188 200
189 --- 201 ---
190 snippet: " 202 snippet: "
191 var count = 0; 203 var count = 0;
192 class C { constructor() { count++; }} 204 class C { constructor() { count++; }}
193 return new C(); 205 return new C();
194 " 206 "
195 frame size: 8 207 frame size: 8
196 parameter count: 1 208 parameter count: 1
197 bytecode array length: 74 209 bytecode array length: 85
198 bytecodes: [ 210 bytecodes: [
199 B(CreateFunctionContext), U8(1), 211 B(CreateFunctionContext), U8(1),
200 B(PushContext), R(3), 212 B(PushContext), R(3),
201 B(LdaTheHole), 213 B(LdaTheHole),
202 B(Star), R(2), 214 B(Star), R(2),
203 /* 30 E> */ B(StackCheck), 215 /* 30 E> */ B(StackCheck),
204 /* 46 S> */ B(LdaZero), 216 /* 46 S> */ B(LdaZero),
205 /* 46 E> */ B(StaContextSlot), R(context), U8(4), U8(0), 217 /* 46 E> */ B(StaContextSlot), R(context), U8(4), U8(0),
206 B(LdaTheHole), 218 B(LdaTheHole),
207 B(Star), R(0), 219 B(Star), R(0),
208 /* 49 S> */ B(LdaTheHole), 220 /* 49 S> */ B(LdaTheHole),
209 B(Star), R(4), 221 B(Star), R(4),
210 B(CreateClosure), U8(0), U8(2), 222 B(CreateClosure), U8(0), U8(2),
211 B(Star), R(5), 223 B(Star), R(5),
212 B(LdaSmi), U8(49), 224 B(LdaSmi), U8(49),
213 B(Star), R(6), 225 B(Star), R(6),
214 B(LdaSmi), U8(86), 226 B(LdaSmi), U8(86),
215 B(Star), R(7), 227 B(Star), R(7),
216 B(CallRuntime), U16(Runtime::kDefineClass), R(4), U8(4), 228 B(CallRuntime), U16(Runtime::kDefineClass), R(4), U8(4),
217 B(Star), R(4), 229 B(Star), R(4),
218 B(LdrNamedProperty), R(4), U8(1), U8(2), R(5), 230 B(LdrNamedProperty), R(4), U8(1), U8(2), R(5),
231 B(LdaFalse),
232 B(Star), R(7),
233 B(Mov), R(4), R(6),
234 B(CallRuntime), U16(Runtime::kInstallClassNameAccessor), R(6), U 8(2),
219 B(CallRuntime), U16(Runtime::kToFastProperties), R(4), U8(1), 235 B(CallRuntime), U16(Runtime::kToFastProperties), R(4), U8(1),
220 B(Star), R(0), 236 B(Star), R(0),
221 B(Star), R(1), 237 B(Star), R(1),
222 B(Star), R(2), 238 B(Star), R(2),
223 /* 87 S> */ B(JumpIfNotHole), U8(11), 239 /* 87 S> */ B(JumpIfNotHole), U8(11),
224 B(LdaConstant), U8(2), 240 B(LdaConstant), U8(2),
225 B(Star), R(4), 241 B(Star), R(4),
226 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), 242 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1),
227 B(Star), R(4), 243 B(Star), R(4),
228 /* 94 E> */ B(New), R(4), R(0), U8(0), U8(4), 244 /* 94 E> */ B(New), R(4), R(0), U8(0), U8(4),
229 /* 103 S> */ B(Return), 245 /* 103 S> */ B(Return),
230 ] 246 ]
231 constant pool: [ 247 constant pool: [
232 SHARED_FUNCTION_INFO_TYPE, 248 SHARED_FUNCTION_INFO_TYPE,
233 ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"], 249 ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"],
234 ONE_BYTE_INTERNALIZED_STRING_TYPE ["C"], 250 ONE_BYTE_INTERNALIZED_STRING_TYPE ["C"],
235 ] 251 ]
236 handlers: [ 252 handlers: [
237 ] 253 ]
238 254
255 ---
256 snippet: "
257 (class {})
258 class E { static name () {}}
259 "
260 frame size: 11
261 parameter count: 1
262 bytecode array length: 107
263 bytecodes: [
264 B(LdaTheHole),
265 B(Star), R(3),
266 /* 30 E> */ B(StackCheck),
267 /* 35 S> */ B(LdaTheHole),
268 B(Star), R(4),
269 B(CreateClosure), U8(0), U8(2),
270 B(Star), R(5),
271 B(LdaSmi), U8(35),
272 B(Star), R(6),
273 B(LdaSmi), U8(43),
274 B(Star), R(7),
275 B(CallRuntime), U16(Runtime::kDefineClass), R(4), U8(4),
276 B(Star), R(4),
277 B(LdrNamedProperty), R(4), U8(1), U8(2), R(5),
278 B(CallRuntime), U16(Runtime::kToFastProperties), R(4), U8(1),
279 B(Star), R(1),
280 B(LdaTheHole),
281 B(Star), R(0),
282 /* 45 S> */ B(LdaTheHole),
283 B(Star), R(4),
284 B(CreateClosure), U8(2), U8(2),
285 B(Star), R(5),
286 B(LdaSmi), U8(45),
287 B(Star), R(6),
288 B(LdaSmi), U8(73),
289 B(Star), R(7),
290 B(CallRuntime), U16(Runtime::kDefineClass), R(4), U8(4),
291 B(Star), R(4),
292 B(LdrNamedProperty), R(4), U8(1), U8(4), R(5),
293 B(LdaConstant), U8(3),
294 B(ToName), R(7),
295 B(CreateClosure), U8(4), U8(2),
296 B(Star), R(8),
297 B(LdaSmi), U8(2),
298 B(Star), R(9),
299 B(LdaZero),
300 B(Star), R(10),
301 B(Mov), R(4), R(6),
302 B(CallRuntime), U16(Runtime::kDefineDataPropertyInLiteral), R(6) , U8(5),
303 B(CallRuntime), U16(Runtime::kToFastProperties), R(4), U8(1),
304 B(Star), R(0),
305 B(Star), R(2),
306 B(Star), R(3),
307 B(LdaUndefined),
308 /* 74 S> */ B(Return),
309 ]
310 constant pool: [
311 SHARED_FUNCTION_INFO_TYPE,
312 ONE_BYTE_INTERNALIZED_STRING_TYPE ["prototype"],
313 SHARED_FUNCTION_INFO_TYPE,
314 ONE_BYTE_INTERNALIZED_STRING_TYPE ["name"],
315 SHARED_FUNCTION_INFO_TYPE,
316 ]
317 handlers: [
318 ]
319
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698