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 --- |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 handlers: [ | 58 handlers: [ |
59 ] | 59 ] |
60 | 60 |
61 --- | 61 --- |
62 snippet: " | 62 snippet: " |
63 var x = 'potatoes'; | 63 var x = 'potatoes'; |
64 for (var p in x) { return p; } | 64 for (var p in x) { return p; } |
65 " | 65 " |
66 frame size: 8 | 66 frame size: 8 |
67 parameter count: 1 | 67 parameter count: 1 |
68 bytecode array length: 46 | 68 bytecode array length: 44 |
69 bytecodes: [ | 69 bytecodes: [ |
70 /* 30 E> */ B(StackCheck), | 70 /* 30 E> */ B(StackCheck), |
71 /* 42 S> */ B(LdaConstant), U8(0), | 71 /* 42 S> */ B(LdaConstant), U8(0), |
72 B(Star), R(1), | 72 B(Star), R(1), |
73 /* 68 S> */ B(JumpIfUndefined), U8(39), | 73 /* 68 S> */ B(JumpIfUndefined), U8(37), |
74 B(JumpIfNull), U8(37), | 74 B(JumpIfNull), U8(35), |
75 B(ToObject), | 75 B(ToObject), |
| 76 B(ForInPrepare), R(4), |
76 B(Star), R(3), | 77 B(Star), R(3), |
77 B(ForInPrepare), R(4), | |
78 B(LdaZero), | 78 B(LdaZero), |
79 B(Star), R(7), | 79 B(Star), R(7), |
80 /* 63 S> */ B(ForInDone), R(7), R(6), | 80 /* 63 S> */ B(ForInDone), R(7), R(6), |
81 B(JumpIfTrue), U8(24), | 81 B(JumpIfTrue), U8(22), |
82 B(ForInNext), R(3), R(7), R(4), U8(1), | 82 B(ForInNext), R(3), R(7), R(4), U8(1), |
83 B(JumpIfUndefined), U8(11), | 83 B(JumpIfUndefined), U8(9), |
84 B(Star), R(0), | 84 B(Star), R(0), |
85 /* 54 E> */ B(StackCheck), | 85 /* 54 E> */ B(StackCheck), |
86 B(Ldar), R(0), | |
87 B(Star), R(2), | 86 B(Star), R(2), |
88 /* 73 S> */ B(Nop), | 87 /* 73 S> */ B(Nop), |
89 /* 85 S> */ B(Return), | 88 /* 85 S> */ B(Return), |
90 B(ForInStep), R(7), | 89 B(ForInStep), R(7), |
91 B(Star), R(7), | 90 B(Star), R(7), |
92 B(Jump), U8(-25), | 91 B(Jump), U8(-23), |
93 B(LdaUndefined), | 92 B(LdaUndefined), |
94 /* 85 S> */ B(Return), | 93 /* 85 S> */ B(Return), |
95 ] | 94 ] |
96 constant pool: [ | 95 constant pool: [ |
97 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 96 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
98 ] | 97 ] |
99 handlers: [ | 98 handlers: [ |
100 ] | 99 ] |
101 | 100 |
102 --- | 101 --- |
103 snippet: " | 102 snippet: " |
104 var x = 0; | 103 var x = 0; |
105 for (var p in [1,2,3]) { x += p; } | 104 for (var p in [1,2,3]) { x += p; } |
106 " | 105 " |
107 frame size: 9 | 106 frame size: 9 |
108 parameter count: 1 | 107 parameter count: 1 |
109 bytecode array length: 57 | 108 bytecode array length: 55 |
110 bytecodes: [ | 109 bytecodes: [ |
111 /* 30 E> */ B(StackCheck), | 110 /* 30 E> */ B(StackCheck), |
112 /* 42 S> */ B(LdaZero), | 111 /* 42 S> */ B(LdaZero), |
113 B(Star), R(1), | 112 B(Star), R(1), |
114 /* 59 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(3), | 113 /* 59 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(3), |
115 B(JumpIfUndefined), U8(47), | 114 B(JumpIfUndefined), U8(45), |
116 B(JumpIfNull), U8(45), | 115 B(JumpIfNull), U8(43), |
117 B(ToObject), | 116 B(ToObject), |
| 117 B(ForInPrepare), R(4), |
118 B(Star), R(3), | 118 B(Star), R(3), |
119 B(ForInPrepare), R(4), | |
120 B(LdaZero), | 119 B(LdaZero), |
121 B(Star), R(7), | 120 B(Star), R(7), |
122 /* 54 S> */ B(ForInDone), R(7), R(6), | 121 /* 54 S> */ B(ForInDone), R(7), R(6), |
123 B(JumpIfTrue), U8(32), | 122 B(JumpIfTrue), U8(30), |
124 B(ForInNext), R(3), R(7), R(4), U8(1), | 123 B(ForInNext), R(3), R(7), R(4), U8(1), |
125 B(JumpIfUndefined), U8(19), | 124 B(JumpIfUndefined), U8(17), |
126 B(Star), R(0), | 125 B(Star), R(0), |
127 /* 45 E> */ B(StackCheck), | 126 /* 45 E> */ B(StackCheck), |
128 B(Ldar), R(0), | |
129 B(Star), R(2), | 127 B(Star), R(2), |
130 /* 70 S> */ B(Ldar), R(1), | 128 /* 70 S> */ B(Nop), |
131 B(Star), R(8), | 129 /* 75 E> */ B(Ldar), R(0), |
132 /* 75 E> */ B(Ldar), R(2), | 130 B(Add), R(1), |
133 B(Add), R(8), | 131 B(Mov), R(1), R(8), |
134 /* 72 E> */ B(Star), R(1), | 132 /* 72 E> */ B(Star), R(1), |
135 B(ForInStep), R(7), | 133 B(ForInStep), R(7), |
136 B(Star), R(7), | 134 B(Star), R(7), |
137 B(Jump), U8(-33), | 135 B(Jump), U8(-31), |
138 B(LdaUndefined), | 136 B(LdaUndefined), |
139 /* 80 S> */ B(Return), | 137 /* 80 S> */ B(Return), |
140 ] | 138 ] |
141 constant pool: [ | 139 constant pool: [ |
142 InstanceType::FIXED_ARRAY_TYPE, | 140 InstanceType::FIXED_ARRAY_TYPE, |
143 ] | 141 ] |
144 handlers: [ | 142 handlers: [ |
145 ] | 143 ] |
146 | 144 |
147 --- | 145 --- |
148 snippet: " | 146 snippet: " |
149 var x = { 'a': 1, 'b': 2 }; | 147 var x = { 'a': 1, 'b': 2 }; |
150 for (x['a'] in [10, 20, 30]) { | 148 for (x['a'] in [10, 20, 30]) { |
151 if (x['a'] == 10) continue; | 149 if (x['a'] == 10) continue; |
152 if (x['a'] == 20) break; | 150 if (x['a'] == 20) break; |
153 } | 151 } |
154 " | 152 " |
155 frame size: 8 | 153 frame size: 8 |
156 parameter count: 1 | 154 parameter count: 1 |
157 bytecode array length: 92 | 155 bytecode array length: 82 |
158 bytecodes: [ | 156 bytecodes: [ |
159 /* 30 E> */ B(StackCheck), | 157 /* 30 E> */ B(StackCheck), |
160 /* 42 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), | 158 /* 42 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), |
161 B(Star), R(1), | 159 B(Star), R(1), |
162 B(Star), R(0), | 160 B(Star), R(0), |
163 /* 77 S> */ B(CreateArrayLiteral), U8(1), U8(1), U8(3), | 161 /* 77 S> */ B(CreateArrayLiteral), U8(1), U8(1), U8(3), |
164 B(JumpIfUndefined), U8(77), | 162 B(JumpIfUndefined), U8(67), |
165 B(JumpIfNull), U8(75), | 163 B(JumpIfNull), U8(65), |
166 B(ToObject), | 164 B(ToObject), |
| 165 B(ForInPrepare), R(2), |
167 B(Star), R(1), | 166 B(Star), R(1), |
168 B(ForInPrepare), R(2), | |
169 B(LdaZero), | 167 B(LdaZero), |
170 B(Star), R(5), | 168 B(Star), R(5), |
171 /* 68 S> */ B(ForInDone), R(5), R(4), | 169 /* 68 S> */ B(ForInDone), R(5), R(4), |
172 B(JumpIfTrue), U8(62), | 170 B(JumpIfTrue), U8(52), |
173 B(ForInNext), R(1), R(5), R(2), U8(9), | 171 B(ForInNext), R(1), R(5), R(2), U8(9), |
174 B(JumpIfUndefined), U8(49), | 172 B(JumpIfUndefined), U8(39), |
175 B(Star), R(6), | 173 B(Star), R(6), |
176 /* 67 E> */ B(Ldar), R(0), | 174 /* 67 E> */ B(Ldar), R(6), |
177 B(Star), R(7), | 175 B(StaNamedPropertySloppy), R(0), U8(2), U8(7), |
178 B(Ldar), R(6), | |
179 B(StaNamedPropertySloppy), R(7), U8(2), U8(7), | |
180 /* 62 E> */ B(StackCheck), | 176 /* 62 E> */ B(StackCheck), |
181 /* 95 S> */ B(Ldar), R(0), | 177 /* 95 S> */ B(Nop), |
182 B(Star), R(6), | 178 /* 100 E> */ B(LdrNamedProperty), R(0), U8(2), U8(3), R(7), |
183 /* 100 E> */ B(LdrNamedProperty), R(6), U8(2), U8(3), R(7), | |
184 B(LdaSmi), U8(10), | 179 B(LdaSmi), U8(10), |
185 /* 106 E> */ B(TestEqual), R(7), | 180 /* 106 E> */ B(TestEqual), R(7), |
186 B(JumpIfFalse), U8(4), | 181 B(JumpIfFalse), U8(4), |
187 /* 113 S> */ B(Jump), U8(19), | 182 /* 113 S> */ B(Jump), U8(16), |
188 /* 125 S> */ B(Ldar), R(0), | 183 /* 125 S> */ B(Nop), |
189 B(Star), R(6), | 184 /* 130 E> */ B(LdrNamedProperty), R(0), U8(2), U8(5), R(7), |
190 /* 130 E> */ B(LdrNamedProperty), R(6), U8(2), U8(5), R(7), | |
191 B(LdaSmi), U8(20), | 185 B(LdaSmi), U8(20), |
192 /* 136 E> */ B(TestEqual), R(7), | 186 /* 136 E> */ B(TestEqual), R(7), |
193 B(JumpIfFalse), U8(4), | 187 B(JumpIfFalse), U8(4), |
194 /* 143 S> */ B(Jump), U8(8), | 188 /* 143 S> */ B(Jump), U8(8), |
195 B(ForInStep), R(5), | 189 B(ForInStep), R(5), |
196 B(Star), R(5), | 190 B(Star), R(5), |
197 B(Jump), U8(-63), | 191 B(Jump), U8(-53), |
198 B(LdaUndefined), | 192 B(LdaUndefined), |
199 /* 152 S> */ B(Return), | 193 /* 152 S> */ B(Return), |
200 ] | 194 ] |
201 constant pool: [ | 195 constant pool: [ |
202 InstanceType::FIXED_ARRAY_TYPE, | 196 InstanceType::FIXED_ARRAY_TYPE, |
203 InstanceType::FIXED_ARRAY_TYPE, | 197 InstanceType::FIXED_ARRAY_TYPE, |
204 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 198 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
205 ] | 199 ] |
206 handlers: [ | 200 handlers: [ |
207 ] | 201 ] |
208 | 202 |
209 --- | 203 --- |
210 snippet: " | 204 snippet: " |
211 var x = [ 10, 11, 12 ] ; | 205 var x = [ 10, 11, 12 ] ; |
212 for (x[0] in [1,2,3]) { return x[3]; } | 206 for (x[0] in [1,2,3]) { return x[3]; } |
213 " | 207 " |
214 frame size: 9 | 208 frame size: 9 |
215 parameter count: 1 | 209 parameter count: 1 |
216 bytecode array length: 69 | 210 bytecode array length: 62 |
217 bytecodes: [ | 211 bytecodes: [ |
218 /* 30 E> */ B(StackCheck), | 212 /* 30 E> */ B(StackCheck), |
219 /* 42 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(3), | 213 /* 42 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(3), |
220 B(Star), R(0), | 214 B(Star), R(0), |
221 /* 72 S> */ B(CreateArrayLiteral), U8(1), U8(1), U8(3), | 215 /* 72 S> */ B(CreateArrayLiteral), U8(1), U8(1), U8(3), |
222 B(JumpIfUndefined), U8(56), | 216 B(JumpIfUndefined), U8(49), |
223 B(JumpIfNull), U8(54), | 217 B(JumpIfNull), U8(47), |
224 B(ToObject), | 218 B(ToObject), |
| 219 B(ForInPrepare), R(2), |
225 B(Star), R(1), | 220 B(Star), R(1), |
226 B(ForInPrepare), R(2), | |
227 B(LdaZero), | 221 B(LdaZero), |
228 B(Star), R(5), | 222 B(Star), R(5), |
229 /* 65 S> */ B(ForInDone), R(5), R(4), | 223 /* 65 S> */ B(ForInDone), R(5), R(4), |
230 B(JumpIfTrue), U8(41), | 224 B(JumpIfTrue), U8(34), |
231 B(ForInNext), R(1), R(5), R(2), U8(7), | 225 B(ForInNext), R(1), R(5), R(2), U8(7), |
232 B(JumpIfUndefined), U8(28), | 226 B(JumpIfUndefined), U8(21), |
233 B(Star), R(6), | 227 B(Star), R(6), |
234 /* 64 E> */ B(Ldar), R(0), | 228 /* 64 E> */ B(LdaZero), |
235 B(Star), R(7), | |
236 B(LdaZero), | |
237 B(Star), R(8), | 229 B(Star), R(8), |
238 B(Ldar), R(6), | 230 B(Ldar), R(6), |
239 B(StaKeyedPropertySloppy), R(7), R(8), U8(5), | 231 B(StaKeyedPropertySloppy), R(0), R(8), U8(5), |
240 /* 59 E> */ B(StackCheck), | 232 /* 59 E> */ B(StackCheck), |
241 /* 83 S> */ B(Ldar), R(0), | 233 /* 83 S> */ B(Nop), |
242 B(Star), R(6), | |
243 /* 91 E> */ B(LdaSmi), U8(3), | 234 /* 91 E> */ B(LdaSmi), U8(3), |
244 B(LdaKeyedProperty), R(6), U8(3), | 235 B(LdaKeyedProperty), R(0), U8(3), |
245 /* 98 S> */ B(Return), | 236 /* 98 S> */ B(Return), |
246 B(ForInStep), R(5), | 237 B(ForInStep), R(5), |
247 B(Star), R(5), | 238 B(Star), R(5), |
248 B(Jump), U8(-42), | 239 B(Jump), U8(-35), |
249 B(LdaUndefined), | 240 B(LdaUndefined), |
250 /* 98 S> */ B(Return), | 241 /* 98 S> */ B(Return), |
251 ] | 242 ] |
252 constant pool: [ | 243 constant pool: [ |
253 InstanceType::FIXED_ARRAY_TYPE, | 244 InstanceType::FIXED_ARRAY_TYPE, |
254 InstanceType::FIXED_ARRAY_TYPE, | 245 InstanceType::FIXED_ARRAY_TYPE, |
255 ] | 246 ] |
256 handlers: [ | 247 handlers: [ |
257 ] | 248 ] |
258 | 249 |
OLD | NEW |