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

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

Issue 1997653002: [interpreter] Bytecode register optimizer. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Grammar. Created 4 years, 7 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 pool type: mixed 6 pool type: mixed
7 execute: yes 7 execute: yes
8 wrap: no 8 wrap: no
9 test function name: test 9 test function name: test
10 10
11 --- 11 ---
12 snippet: " 12 snippet: "
13 var test; 13 var test;
14 (function() { 14 (function() {
15 class A { 15 class A {
16 method() { return 2; } 16 method() { return 2; }
17 } 17 }
18 class B extends A { 18 class B extends A {
19 method() { return super.method() + 1; } 19 method() { return super.method() + 1; }
20 } 20 }
21 test = new B().method; 21 test = new B().method;
22 test(); 22 test();
23 })(); 23 })();
24 " 24 "
25 frame size: 7 25 frame size: 7
26 parameter count: 1 26 parameter count: 1
27 bytecode array length: 56 27 bytecode array length: 56
28 bytecodes: [ 28 bytecodes: [
29 B(Ldar), R(closure), 29 B(Mov), R(closure), R(0),
30 B(Star), R(0),
31 /* 99 E> */ B(StackCheck), 30 /* 99 E> */ B(StackCheck),
32 /* 104 S> */ B(Ldar), R(this), 31 /* 104 S> */ B(Nop),
33 B(Star), R(3), 32 /* 111 E> */ B(Ldar), R(closure),
34 /* 111 E> */ B(Ldar), R(0), 33 B(Mov), R(this), R(3),
35 B(JumpIfNotHole), U8(11), 34 B(JumpIfNotHole), U8(11),
36 B(LdaConstant), U8(0), 35 B(LdaConstant), U8(0),
37 B(Star), R(6), 36 B(Star), R(6),
38 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(6), U8(1), 37 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(6), U8(1),
39 B(Star), R(6), 38 B(Star), R(6),
40 /* 111 E> */ B(LdaConstant), U8(1), 39 /* 111 E> */ B(LdaConstant), U8(1),
41 B(LdrKeyedProperty), R(6), U8(3), R(4), 40 B(LdaKeyedProperty), R(6), U8(3),
41 B(Star), R(4),
42 B(LdaConstant), U8(2), 42 B(LdaConstant), U8(2),
43 B(Star), R(5), 43 B(Star), R(5),
44 B(CallRuntime), U16(Runtime::kLoadFromSuper), R(3), U8(3), 44 B(CallRuntime), U16(Runtime::kLoadFromSuper), R(3), U8(3),
45 B(Mov), R(3), R(2), 45 B(Mov), R(3), R(2),
46 B(Star), R(1), 46 B(Star), R(1),
47 /* 117 E> */ B(Call), R(1), R(2), U8(1), U8(1), 47 /* 117 E> */ B(Call), R(1), R(2), U8(1), U8(1),
48 B(Star), R(3), 48 B(Star), R(3),
49 B(LdaSmi), U8(1), 49 B(LdaSmi), U8(1),
50 B(Add), R(3), 50 B(Add), R(3),
51 /* 131 S> */ B(Return), 51 /* 131 S> */ B(Return),
(...skipping 16 matching lines...) Expand all
68 } 68 }
69 class B extends A { 69 class B extends A {
70 method() { super.x = 2; return super.x; } 70 method() { super.x = 2; return super.x; }
71 } 71 }
72 test = new B().method; 72 test = new B().method;
73 test(); 73 test();
74 })(); 74 })();
75 " 75 "
76 frame size: 6 76 frame size: 6
77 parameter count: 1 77 parameter count: 1
78 bytecode array length: 78 78 bytecode array length: 79
79 bytecodes: [ 79 bytecodes: [
80 B(Ldar), R(closure), 80 B(Mov), R(closure), R(0),
81 B(Star), R(0),
82 /* 125 E> */ B(StackCheck), 81 /* 125 E> */ B(StackCheck),
83 /* 130 S> */ B(Ldar), R(this), 82 /* 130 S> */ B(Nop),
84 B(Star), R(1), 83 /* 130 E> */ B(Ldar), R(closure),
85 /* 130 E> */ B(Ldar), R(0), 84 B(Mov), R(this), R(1),
86 B(JumpIfNotHole), U8(11), 85 B(JumpIfNotHole), U8(11),
87 B(LdaConstant), U8(0), 86 B(LdaConstant), U8(0),
88 B(Star), R(5), 87 B(Star), R(5),
89 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1), 88 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1),
90 B(Star), R(5), 89 B(Star), R(5),
91 /* 130 E> */ B(LdaConstant), U8(1), 90 /* 130 E> */ B(LdaConstant), U8(1),
92 B(LdrKeyedProperty), R(5), U8(1), R(2), 91 B(LdaKeyedProperty), R(5), U8(1),
92 B(Star), R(2),
93 B(LdaConstant), U8(2), 93 B(LdaConstant), U8(2),
94 B(Star), R(3), 94 B(Star), R(3),
95 B(LdaSmi), U8(2), 95 B(LdaSmi), U8(2),
96 /* 138 E> */ B(Star), R(4), 96 /* 138 E> */ B(Star), R(4),
97 B(CallRuntime), U16(Runtime::kStoreToSuper_Strict), R(1), U8(4), 97 B(CallRuntime), U16(Runtime::kStoreToSuper_Strict), R(1), U8(4),
98 /* 143 S> */ B(Ldar), R(this), 98 /* 143 S> */ B(Nop),
99 B(Star), R(1),
100 /* 150 E> */ B(Ldar), R(0), 99 /* 150 E> */ B(Ldar), R(0),
100 B(Mov), R(this), R(1),
101 B(JumpIfNotHole), U8(11), 101 B(JumpIfNotHole), U8(11),
102 B(LdaConstant), U8(0), 102 B(LdaConstant), U8(0),
103 B(Star), R(4), 103 B(Star), R(4),
104 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), 104 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1),
105 B(Star), R(4), 105 B(Star), R(4),
106 /* 150 E> */ B(LdaConstant), U8(1), 106 /* 150 E> */ B(LdaConstant), U8(1),
107 B(LdrKeyedProperty), R(4), U8(3), R(2), 107 B(LdaKeyedProperty), R(4), U8(3),
108 B(Star), R(2),
108 B(LdaConstant), U8(2), 109 B(LdaConstant), U8(2),
109 B(Star), R(3), 110 B(Star), R(3),
110 B(CallRuntime), U16(Runtime::kLoadFromSuper), R(1), U8(3), 111 B(CallRuntime), U16(Runtime::kLoadFromSuper), R(1), U8(3),
111 /* 159 S> */ B(Return), 112 /* 159 S> */ B(Return),
112 ] 113 ]
113 constant pool: [ 114 constant pool: [
114 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, 115 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE,
115 InstanceType::SYMBOL_TYPE, 116 InstanceType::SYMBOL_TYPE,
116 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, 117 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE,
117 ] 118 ]
118 handlers: [ 119 handlers: [
119 ] 120 ]
120 121
121 --- 122 ---
122 snippet: " 123 snippet: "
123 var test; 124 var test;
124 (function() { 125 (function() {
125 class A { 126 class A {
126 constructor(x) { this.x_ = x; } 127 constructor(x) { this.x_ = x; }
127 } 128 }
128 class B extends A { 129 class B extends A {
129 constructor() { super(1); this.y_ = 2; } 130 constructor() { super(1); this.y_ = 2; }
130 } 131 }
131 test = new B().constructor; 132 test = new B().constructor;
132 })(); 133 })();
133 " 134 "
134 frame size: 5 135 frame size: 5
135 parameter count: 1 136 parameter count: 1
136 bytecode array length: 106 137 bytecode array length: 105
137 bytecodes: [ 138 bytecodes: [
138 B(Ldar), R(closure), 139 B(Mov), R(closure), R(1),
139 B(Star), R(1), 140 B(Mov), R(new_target), R(0),
140 B(Ldar), R(new_target),
141 B(Star), R(0),
142 /* 113 E> */ B(StackCheck), 141 /* 113 E> */ B(StackCheck),
143 /* 118 S> */ B(Ldar), R(1), 142 /* 118 S> */ B(Ldar), R(closure),
144 B(JumpIfNotHole), U8(11), 143 B(JumpIfNotHole), U8(11),
145 B(LdaConstant), U8(0), 144 B(LdaConstant), U8(0),
146 B(Star), R(3), 145 B(Star), R(3),
147 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), 146 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1),
148 B(Star), R(2), 147 B(Star), R(2),
149 B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(2), U8(1) , 148 B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(2), U8(1) ,
150 B(Star), R(2), 149 B(Star), R(2),
151 B(LdaSmi), U8(1), 150 B(LdaSmi), U8(1),
152 B(Star), R(3), 151 /* 118 E> */ B(Star), R(3),
153 /* 118 E> */ B(Ldar), R(0), 152 B(Ldar), R(0),
154 B(JumpIfNotHole), U8(11), 153 B(JumpIfNotHole), U8(11),
155 B(LdaConstant), U8(1), 154 B(LdaConstant), U8(1),
156 B(Star), R(4), 155 B(Star), R(4),
157 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), 156 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1),
158 /* 118 E> */ B(New), R(2), R(3), U8(1), 157 /* 118 E> */ B(New), R(2), R(3), U8(1),
159 /* 118 E> */ B(Star), R(2), 158 /* 118 E> */ B(Star), R(2),
160 B(Ldar), R(this), 159 B(Ldar), R(this),
161 B(JumpIfNotHole), U8(4), 160 B(JumpIfNotHole), U8(4),
162 B(Jump), U8(11), 161 B(Jump), U8(11),
163 B(LdaConstant), U8(2), 162 B(LdaConstant), U8(2),
164 B(Star), R(3), 163 B(Star), R(3),
165 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), 164 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1),
166 B(Ldar), R(2), 165 B(Mov), R(2), R(this),
167 B(Star), R(this), 166 /* 128 S> */ B(Ldar), R(this),
168 /* 128 S> */ B(JumpIfNotHole), U8(11), 167 B(JumpIfNotHole), U8(11),
169 B(LdaConstant), U8(2), 168 B(LdaConstant), U8(2),
170 B(Star), R(2), 169 B(Star), R(2),
171 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), 170 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1),
172 B(Star), R(2), 171 B(Star), R(2),
173 B(LdaSmi), U8(2), 172 B(LdaSmi), U8(2),
174 /* 136 E> */ B(StaNamedPropertyStrict), R(2), U8(3), U8(4), 173 /* 136 E> */ B(StaNamedPropertyStrict), R(2), U8(3), U8(4),
175 B(Ldar), R(this), 174 B(Ldar), R(this),
176 B(JumpIfNotHole), U8(11), 175 B(JumpIfNotHole), U8(11),
177 B(LdaConstant), U8(2), 176 B(LdaConstant), U8(2),
178 B(Star), R(2), 177 B(Star), R(2),
(...skipping 17 matching lines...) Expand all
196 constructor() { this.x_ = 1; } 195 constructor() { this.x_ = 1; }
197 } 196 }
198 class B extends A { 197 class B extends A {
199 constructor() { super(); this.y_ = 2; } 198 constructor() { super(); this.y_ = 2; }
200 } 199 }
201 test = new B().constructor; 200 test = new B().constructor;
202 })(); 201 })();
203 " 202 "
204 frame size: 4 203 frame size: 4
205 parameter count: 1 204 parameter count: 1
206 bytecode array length: 102 205 bytecode array length: 101
207 bytecodes: [ 206 bytecodes: [
208 B(Ldar), R(closure), 207 B(Mov), R(closure), R(1),
209 B(Star), R(1), 208 B(Mov), R(new_target), R(0),
210 B(Ldar), R(new_target),
211 B(Star), R(0),
212 /* 112 E> */ B(StackCheck), 209 /* 112 E> */ B(StackCheck),
213 /* 117 S> */ B(Ldar), R(1), 210 /* 117 S> */ B(Ldar), R(closure),
214 B(JumpIfNotHole), U8(11), 211 B(JumpIfNotHole), U8(11),
215 B(LdaConstant), U8(0), 212 B(LdaConstant), U8(0),
216 B(Star), R(3), 213 B(Star), R(3),
217 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), 214 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1),
218 B(Star), R(2), 215 B(Star), R(2),
219 B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(2), U8(1) , 216 B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(2), U8(1) ,
220 B(Star), R(2), 217 /* 117 E> */ B(Star), R(2),
221 /* 117 E> */ B(Ldar), R(0), 218 B(Ldar), R(0),
222 B(JumpIfNotHole), U8(11), 219 B(JumpIfNotHole), U8(11),
223 B(LdaConstant), U8(1), 220 B(LdaConstant), U8(1),
224 B(Star), R(3), 221 B(Star), R(3),
225 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), 222 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1),
226 /* 117 E> */ B(New), R(2), R(0), U8(0), 223 /* 117 E> */ B(New), R(2), R(0), U8(0),
227 /* 117 E> */ B(Star), R(2), 224 /* 117 E> */ B(Star), R(2),
228 B(Ldar), R(this), 225 B(Ldar), R(this),
229 B(JumpIfNotHole), U8(4), 226 B(JumpIfNotHole), U8(4),
230 B(Jump), U8(11), 227 B(Jump), U8(11),
231 B(LdaConstant), U8(2), 228 B(LdaConstant), U8(2),
232 B(Star), R(3), 229 B(Star), R(3),
233 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), 230 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1),
234 B(Ldar), R(2), 231 B(Mov), R(2), R(this),
235 B(Star), R(this), 232 /* 126 S> */ B(Ldar), R(this),
236 /* 126 S> */ B(JumpIfNotHole), U8(11), 233 B(JumpIfNotHole), U8(11),
237 B(LdaConstant), U8(2), 234 B(LdaConstant), U8(2),
238 B(Star), R(2), 235 B(Star), R(2),
239 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), 236 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1),
240 B(Star), R(2), 237 B(Star), R(2),
241 B(LdaSmi), U8(2), 238 B(LdaSmi), U8(2),
242 /* 134 E> */ B(StaNamedPropertyStrict), R(2), U8(3), U8(4), 239 /* 134 E> */ B(StaNamedPropertyStrict), R(2), U8(3), U8(4),
243 B(Ldar), R(this), 240 B(Ldar), R(this),
244 B(JumpIfNotHole), U8(11), 241 B(JumpIfNotHole), U8(11),
245 B(LdaConstant), U8(2), 242 B(LdaConstant), U8(2),
246 B(Star), R(2), 243 B(Star), R(2),
247 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), 244 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1),
248 /* 139 S> */ B(Return), 245 /* 139 S> */ B(Return),
249 ] 246 ]
250 constant pool: [ 247 constant pool: [
251 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, 248 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE,
252 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, 249 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE,
253 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, 250 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE,
254 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, 251 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE,
255 ] 252 ]
256 handlers: [ 253 handlers: [
257 ] 254 ]
258 255
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698