| 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 for (var p of [0, 1, 2]) {} | 12 for (var p of [0, 1, 2]) {} |
| 13 " | 13 " |
| 14 frame size: 16 | 14 frame size: 16 |
| 15 parameter count: 1 | 15 parameter count: 1 |
| 16 bytecode array length: 343 | 16 bytecode array length: 288 |
| 17 bytecodes: [ | 17 bytecodes: [ |
| 18 /* 30 E> */ B(StackCheck), | 18 /* 30 E> */ B(StackCheck), |
| 19 B(LdrUndefined), R(4), | 19 B(LdrUndefined), R(4), |
| 20 B(LdaZero), | 20 B(LdaZero), |
| 21 B(Star), R(3), | 21 B(Star), R(3), |
| 22 B(Mov), R(context), R(11), | 22 B(Mov), R(context), R(11), |
| 23 B(Mov), R(context), R(12), | 23 B(Mov), R(context), R(12), |
| 24 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(3), | 24 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(3), |
| 25 B(Star), R(14), | 25 B(Star), R(14), |
| 26 /* 48 E> */ B(LdaConstant), U8(1), | 26 /* 48 E> */ B(LdaConstant), U8(1), |
| 27 B(LdrKeyedProperty), R(14), U8(3), R(13), | 27 B(LdrKeyedProperty), R(14), U8(3), R(13), |
| 28 /* 48 E> */ B(Call), R(13), R(14), U8(1), U8(1), | 28 /* 48 E> */ B(Call), R(13), R(14), U8(1), U8(1), |
| 29 /* 48 E> */ B(Star), R(1), | 29 /* 48 E> */ B(Star), R(1), |
| 30 /* 45 S> */ B(Ldar), R(1), | 30 /* 45 S> */ B(LdrNamedProperty), R(1), U8(2), U8(7), R(14), |
| 31 B(Star), R(15), | 31 /* 45 E> */ B(Call), R(14), R(1), U8(1), U8(5), |
| 32 B(LdrNamedProperty), R(15), U8(2), U8(7), R(14), | |
| 33 /* 45 E> */ B(Call), R(14), R(15), U8(1), U8(5), | |
| 34 /* 45 E> */ B(Star), R(2), | 32 /* 45 E> */ B(Star), R(2), |
| 35 B(Star), R(13), | 33 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(2), U8(1), |
| 36 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(13), U8(1), | |
| 37 B(ToBooleanLogicalNot), | 34 B(ToBooleanLogicalNot), |
| 38 B(JumpIfFalse), U8(11), | 35 B(JumpIfFalse), U8(7), |
| 39 B(Ldar), R(2), | 36 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(2), U8(1), |
| 40 B(Star), R(13), | 37 B(LdaNamedProperty), R(2), U8(3), U8(9), |
| 41 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(13), U8(1), | 38 B(JumpIfToBooleanTrue), U8(22), |
| 42 B(Ldar), R(2), | |
| 43 B(Star), R(13), | |
| 44 B(LdaNamedProperty), R(13), U8(3), U8(9), | |
| 45 B(JumpIfToBooleanTrue), U8(27), | |
| 46 B(LdaSmi), U8(2), | 39 B(LdaSmi), U8(2), |
| 47 B(Star), R(3), | 40 B(Star), R(3), |
| 48 B(Ldar), R(2), | 41 B(LdrNamedProperty), R(2), U8(4), U8(11), R(0), |
| 49 B(Star), R(13), | 42 B(Ldar), R(0), |
| 50 B(LdrNamedProperty), R(13), U8(4), U8(11), R(0), | |
| 51 B(Ldar), R(4), | |
| 52 /* 34 E> */ B(StackCheck), | 43 /* 34 E> */ B(StackCheck), |
| 53 B(Ldar), R(0), | 44 B(Mov), R(0), R(7), |
| 54 B(Star), R(7), | |
| 55 B(LdaZero), | 45 B(LdaZero), |
| 56 B(Star), R(3), | 46 B(Star), R(3), |
| 57 B(Jump), U8(-68), | 47 B(Jump), U8(-49), |
| 58 B(Jump), U8(46), | 48 B(Jump), U8(41), |
| 59 B(Star), R(14), | 49 B(Star), R(14), |
| 60 B(LdaConstant), U8(5), | 50 B(LdaConstant), U8(5), |
| 61 B(Star), R(13), | 51 B(Star), R(13), |
| 62 B(Ldar), R(closure), | 52 B(Mov), R(closure), R(15), |
| 63 B(Star), R(15), | |
| 64 B(CallRuntime), U16(Runtime::kPushCatchContext), R(13), U8(3), | 53 B(CallRuntime), U16(Runtime::kPushCatchContext), R(13), U8(3), |
| 65 B(Star), R(12), | 54 B(Star), R(12), |
| 66 B(PushContext), R(8), | 55 B(PushContext), R(8), |
| 67 B(Ldar), R(3), | |
| 68 B(Star), R(13), | |
| 69 B(LdaSmi), U8(2), | 56 B(LdaSmi), U8(2), |
| 70 B(TestEqualStrict), R(13), | 57 B(TestEqualStrict), R(3), |
| 71 B(JumpIfFalse), U8(6), | 58 B(JumpIfFalse), U8(6), |
| 72 B(LdaSmi), U8(1), | 59 B(LdaSmi), U8(1), |
| 73 B(Star), R(3), | 60 B(Star), R(3), |
| 74 B(LdrContextSlot), R(context), U8(4), R(13), | 61 B(LdrContextSlot), R(context), U8(4), R(13), |
| 75 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), | 62 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), |
| 76 B(PopContext), R(8), | 63 B(PopContext), R(8), |
| 77 B(LdaSmi), U8(-1), | 64 B(LdaSmi), U8(-1), |
| 78 B(Star), R(9), | 65 B(Star), R(9), |
| 79 B(Jump), U8(7), | 66 B(Jump), U8(7), |
| 80 B(Star), R(10), | 67 B(Star), R(10), |
| 81 B(LdaZero), | 68 B(LdaZero), |
| 82 B(Star), R(9), | 69 B(Star), R(9), |
| 83 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 70 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), |
| 84 B(Star), R(11), | 71 B(Star), R(11), |
| 85 B(Ldar), R(3), | |
| 86 B(Star), R(12), | |
| 87 B(LdaZero), | 72 B(LdaZero), |
| 88 B(TestEqualStrict), R(12), | 73 B(TestEqualStrict), R(3), |
| 89 B(JumpIfTrue), U8(9), | 74 B(JumpIfTrue), U8(5), |
| 90 B(Ldar), R(1), | |
| 91 B(Star), R(12), | |
| 92 B(LdaUndefined), | 75 B(LdaUndefined), |
| 93 B(TestEqualStrict), R(12), | 76 B(TestEqualStrict), R(1), |
| 94 B(ToBooleanLogicalNot), | 77 B(ToBooleanLogicalNot), |
| 95 B(JumpIfFalseConstant), U8(9), | 78 B(JumpIfFalse), U8(121), |
| 96 B(Ldar), R(1), | 79 B(LdrNamedProperty), R(1), U8(6), U8(13), R(5), |
| 97 B(Star), R(12), | |
| 98 B(LdrNamedProperty), R(12), U8(6), U8(13), R(5), | |
| 99 B(Ldar), R(5), | |
| 100 B(Star), R(12), | |
| 101 B(LdaNull), | 80 B(LdaNull), |
| 102 B(TestEqual), R(12), | 81 B(TestEqual), R(5), |
| 103 B(JumpIfFalse), U8(4), | 82 B(JumpIfFalse), U8(4), |
| 104 B(Jump), U8(124), | 83 B(Jump), U8(109), |
| 105 B(Ldar), R(3), | |
| 106 B(Star), R(12), | |
| 107 B(LdaSmi), U8(1), | 84 B(LdaSmi), U8(1), |
| 108 B(TestEqualStrict), R(12), | 85 B(TestEqualStrict), R(3), |
| 109 B(JumpIfFalse), U8(79), | 86 B(JumpIfFalse), U8(76), |
| 110 B(Ldar), R(5), | 87 B(Ldar), R(5), |
| 111 B(TypeOf), | 88 B(TypeOf), |
| 112 B(Star), R(12), | 89 B(Star), R(12), |
| 113 B(LdaConstant), U8(7), | 90 B(LdaConstant), U8(7), |
| 114 B(TestEqualStrict), R(12), | 91 B(TestEqualStrict), R(12), |
| 115 B(JumpIfFalse), U8(4), | 92 B(JumpIfFalse), U8(4), |
| 116 B(Jump), U8(18), | 93 B(Jump), U8(18), |
| 117 B(Wide), B(LdaSmi), U16(129), | 94 B(Wide), B(LdaSmi), U16(129), |
| 118 B(Star), R(12), | 95 B(Star), R(12), |
| 119 B(LdaConstant), U8(8), | 96 B(LdaConstant), U8(8), |
| 120 B(Star), R(13), | 97 B(Star), R(13), |
| 121 B(CallRuntime), U16(Runtime::kNewTypeError), R(12), U8(2), | 98 B(CallRuntime), U16(Runtime::kNewTypeError), R(12), U8(2), |
| 122 B(Throw), | 99 B(Throw), |
| 123 B(Mov), R(context), R(12), | 100 B(Mov), R(context), R(12), |
| 124 B(Ldar), R(5), | 101 B(Mov), R(5), R(13), |
| 125 B(Star), R(13), | 102 B(Mov), R(1), R(14), |
| 126 B(Ldar), R(1), | |
| 127 B(Star), R(14), | |
| 128 B(CallRuntime), U16(Runtime::k_Call), R(13), U8(2), | 103 B(CallRuntime), U16(Runtime::k_Call), R(13), U8(2), |
| 129 B(Jump), U8(30), | 104 B(Jump), U8(29), |
| 130 B(Star), R(14), | 105 B(Star), R(14), |
| 131 B(LdaConstant), U8(5), | 106 B(LdaConstant), U8(5), |
| 132 B(Star), R(13), | 107 B(Star), R(13), |
| 133 B(Ldar), R(closure), | 108 B(Mov), R(closure), R(15), |
| 134 B(Star), R(15), | |
| 135 B(CallRuntime), U16(Runtime::kPushCatchContext), R(13), U8(3), | 109 B(CallRuntime), U16(Runtime::kPushCatchContext), R(13), U8(3), |
| 136 B(Star), R(12), | 110 B(Star), R(12), |
| 137 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 111 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), |
| 138 B(Ldar), R(12), | 112 B(Ldar), R(12), |
| 139 B(PushContext), R(8), | 113 B(PushContext), R(8), |
| 140 B(PopContext), R(8), | 114 B(PopContext), R(8), |
| 141 B(Jump), U8(37), | 115 B(Jump), U8(29), |
| 142 B(Ldar), R(5), | 116 B(Mov), R(5), R(12), |
| 143 B(Star), R(12), | 117 B(Mov), R(1), R(13), |
| 144 B(Ldar), R(1), | |
| 145 B(Star), R(13), | |
| 146 B(CallRuntime), U16(Runtime::k_Call), R(12), U8(2), | 118 B(CallRuntime), U16(Runtime::k_Call), R(12), U8(2), |
| 147 B(Star), R(6), | 119 B(Star), R(6), |
| 148 B(Star), R(12), | 120 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(6), U8(1), |
| 149 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(12), U8(1), | |
| 150 B(JumpIfToBooleanFalse), U8(4), | 121 B(JumpIfToBooleanFalse), U8(4), |
| 151 B(Jump), U8(11), | 122 B(Jump), U8(7), |
| 152 B(Ldar), R(6), | 123 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(6), U8(1), |
| 153 B(Star), R(12), | |
| 154 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(12), U8(1), | |
| 155 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
1), U8(1), | 124 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
1), U8(1), |
| 156 B(LdaZero), | 125 B(LdaZero), |
| 157 B(TestEqualStrict), R(9), | 126 B(TestEqualStrict), R(9), |
| 158 B(JumpIfTrue), U8(4), | 127 B(JumpIfTrue), U8(4), |
| 159 B(Jump), U8(5), | 128 B(Jump), U8(5), |
| 160 B(Ldar), R(10), | 129 B(Ldar), R(10), |
| 161 B(ReThrow), | 130 B(ReThrow), |
| 162 B(LdaUndefined), | 131 B(LdaUndefined), |
| 163 /* 62 S> */ B(Return), | 132 /* 62 S> */ B(Return), |
| 164 ] | 133 ] |
| 165 constant pool: [ | 134 constant pool: [ |
| 166 InstanceType::FIXED_ARRAY_TYPE, | 135 InstanceType::FIXED_ARRAY_TYPE, |
| 167 InstanceType::SYMBOL_TYPE, | 136 InstanceType::SYMBOL_TYPE, |
| 168 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 137 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 169 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 138 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 170 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 139 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 171 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 140 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 172 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 141 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 173 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 142 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 174 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 143 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 175 kInstanceTypeDontCare, | |
| 176 ] | 144 ] |
| 177 handlers: [ | 145 handlers: [ |
| 178 [9, 147, 153], | 146 [9, 123, 129], |
| 179 [12, 101, 103], | 147 [12, 82, 84], |
| 180 [246, 259, 261], | 148 [202, 213, 215], |
| 181 ] | 149 ] |
| 182 | 150 |
| 183 --- | 151 --- |
| 184 snippet: " | 152 snippet: " |
| 185 var x = 'potatoes'; | 153 var x = 'potatoes'; |
| 186 for (var p of x) { return p; } | 154 for (var p of x) { return p; } |
| 187 " | 155 " |
| 188 frame size: 17 | 156 frame size: 17 |
| 189 parameter count: 1 | 157 parameter count: 1 |
| 190 bytecode array length: 359 | 158 bytecode array length: 302 |
| 191 bytecodes: [ | 159 bytecodes: [ |
| 192 /* 30 E> */ B(StackCheck), | 160 /* 30 E> */ B(StackCheck), |
| 193 /* 42 S> */ B(LdaConstant), U8(0), | 161 /* 42 S> */ B(LdaConstant), U8(0), |
| 194 /* 42 E> */ B(Star), R(7), | 162 /* 42 E> */ B(Star), R(7), |
| 195 B(LdrUndefined), R(4), | 163 B(LdrUndefined), R(4), |
| 196 B(LdaZero), | 164 B(LdaZero), |
| 197 B(Star), R(3), | 165 B(Star), R(3), |
| 198 B(Mov), R(context), R(12), | 166 B(Mov), R(context), R(12), |
| 199 B(Mov), R(context), R(13), | 167 B(Mov), R(context), R(13), |
| 200 /* 68 S> */ B(Ldar), R(7), | 168 /* 68 S> */ B(Nop), |
| 201 B(Star), R(15), | |
| 202 /* 68 E> */ B(LdaConstant), U8(1), | 169 /* 68 E> */ B(LdaConstant), U8(1), |
| 203 B(LdrKeyedProperty), R(15), U8(3), R(14), | 170 B(LdrKeyedProperty), R(7), U8(3), R(14), |
| 204 /* 68 E> */ B(Call), R(14), R(15), U8(1), U8(1), | 171 /* 68 E> */ B(Call), R(14), R(7), U8(1), U8(1), |
| 205 /* 68 E> */ B(Star), R(1), | 172 /* 68 E> */ B(Star), R(1), |
| 206 /* 65 S> */ B(Ldar), R(1), | 173 /* 65 S> */ B(LdrNamedProperty), R(1), U8(2), U8(7), R(15), |
| 207 B(Star), R(16), | 174 /* 65 E> */ B(Call), R(15), R(1), U8(1), U8(5), |
| 208 B(LdrNamedProperty), R(16), U8(2), U8(7), R(15), | |
| 209 /* 65 E> */ B(Call), R(15), R(16), U8(1), U8(5), | |
| 210 /* 65 E> */ B(Star), R(2), | 175 /* 65 E> */ B(Star), R(2), |
| 211 B(Star), R(14), | 176 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(2), U8(1), |
| 212 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(14), U8(1), | |
| 213 B(ToBooleanLogicalNot), | 177 B(ToBooleanLogicalNot), |
| 214 B(JumpIfFalse), U8(11), | 178 B(JumpIfFalse), U8(7), |
| 215 B(Ldar), R(2), | 179 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(2), U8(1), |
| 216 B(Star), R(14), | 180 B(LdaNamedProperty), R(2), U8(3), U8(9), |
| 217 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(14), U8(1), | 181 B(JumpIfToBooleanTrue), U8(27), |
| 218 B(Ldar), R(2), | |
| 219 B(Star), R(14), | |
| 220 B(LdaNamedProperty), R(14), U8(3), U8(9), | |
| 221 B(JumpIfToBooleanTrue), U8(31), | |
| 222 B(LdaSmi), U8(2), | 182 B(LdaSmi), U8(2), |
| 223 B(Star), R(3), | 183 B(Star), R(3), |
| 224 B(Ldar), R(2), | 184 B(LdrNamedProperty), R(2), U8(4), U8(11), R(0), |
| 225 B(Star), R(14), | 185 B(Ldar), R(0), |
| 226 B(LdrNamedProperty), R(14), U8(4), U8(11), R(0), | |
| 227 B(Ldar), R(4), | |
| 228 /* 54 E> */ B(StackCheck), | 186 /* 54 E> */ B(StackCheck), |
| 229 B(Ldar), R(0), | 187 B(Mov), R(0), R(8), |
| 230 B(Star), R(8), | 188 /* 73 S> */ B(LdaZero), |
| 231 /* 73 S> */ B(Star), R(11), | |
| 232 B(LdaZero), | |
| 233 B(Star), R(10), | 189 B(Star), R(10), |
| 234 B(Jump), U8(62), | 190 B(Mov), R(8), R(11), |
| 235 B(Jump), U8(-72), | 191 B(Jump), U8(57), |
| 236 B(Jump), U8(46), | 192 B(Jump), U8(-54), |
| 193 B(Jump), U8(41), |
| 237 B(Star), R(15), | 194 B(Star), R(15), |
| 238 B(LdaConstant), U8(5), | 195 B(LdaConstant), U8(5), |
| 239 B(Star), R(14), | 196 B(Star), R(14), |
| 240 B(Ldar), R(closure), | 197 B(Mov), R(closure), R(16), |
| 241 B(Star), R(16), | |
| 242 B(CallRuntime), U16(Runtime::kPushCatchContext), R(14), U8(3), | 198 B(CallRuntime), U16(Runtime::kPushCatchContext), R(14), U8(3), |
| 243 B(Star), R(13), | 199 B(Star), R(13), |
| 244 B(PushContext), R(9), | 200 B(PushContext), R(9), |
| 245 B(Ldar), R(3), | |
| 246 B(Star), R(14), | |
| 247 B(LdaSmi), U8(2), | 201 B(LdaSmi), U8(2), |
| 248 B(TestEqualStrict), R(14), | 202 B(TestEqualStrict), R(3), |
| 249 B(JumpIfFalse), U8(6), | 203 B(JumpIfFalse), U8(6), |
| 250 B(LdaSmi), U8(1), | 204 B(LdaSmi), U8(1), |
| 251 B(Star), R(3), | 205 B(Star), R(3), |
| 252 B(LdrContextSlot), R(context), U8(4), R(14), | 206 B(LdrContextSlot), R(context), U8(4), R(14), |
| 253 B(CallRuntime), U16(Runtime::kReThrow), R(14), U8(1), | 207 B(CallRuntime), U16(Runtime::kReThrow), R(14), U8(1), |
| 254 B(PopContext), R(9), | 208 B(PopContext), R(9), |
| 255 B(LdaSmi), U8(-1), | 209 B(LdaSmi), U8(-1), |
| 256 B(Star), R(10), | 210 B(Star), R(10), |
| 257 B(Jump), U8(8), | 211 B(Jump), U8(8), |
| 258 B(Star), R(11), | 212 B(Star), R(11), |
| 259 B(LdaSmi), U8(1), | 213 B(LdaSmi), U8(1), |
| 260 B(Star), R(10), | 214 B(Star), R(10), |
| 261 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 215 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), |
| 262 B(Star), R(12), | 216 B(Star), R(12), |
| 263 B(Ldar), R(3), | |
| 264 B(Star), R(13), | |
| 265 B(LdaZero), | 217 B(LdaZero), |
| 266 B(TestEqualStrict), R(13), | 218 B(TestEqualStrict), R(3), |
| 267 B(JumpIfTrue), U8(9), | 219 B(JumpIfTrue), U8(5), |
| 268 B(Ldar), R(1), | |
| 269 B(Star), R(13), | |
| 270 B(LdaUndefined), | 220 B(LdaUndefined), |
| 271 B(TestEqualStrict), R(13), | 221 B(TestEqualStrict), R(1), |
| 272 B(ToBooleanLogicalNot), | 222 B(ToBooleanLogicalNot), |
| 273 B(JumpIfFalseConstant), U8(9), | 223 B(JumpIfFalse), U8(121), |
| 274 B(Ldar), R(1), | 224 B(LdrNamedProperty), R(1), U8(6), U8(13), R(5), |
| 275 B(Star), R(13), | |
| 276 B(LdrNamedProperty), R(13), U8(6), U8(13), R(5), | |
| 277 B(Ldar), R(5), | |
| 278 B(Star), R(13), | |
| 279 B(LdaNull), | 225 B(LdaNull), |
| 280 B(TestEqual), R(13), | 226 B(TestEqual), R(5), |
| 281 B(JumpIfFalse), U8(4), | 227 B(JumpIfFalse), U8(4), |
| 282 B(Jump), U8(124), | 228 B(Jump), U8(109), |
| 283 B(Ldar), R(3), | |
| 284 B(Star), R(13), | |
| 285 B(LdaSmi), U8(1), | 229 B(LdaSmi), U8(1), |
| 286 B(TestEqualStrict), R(13), | 230 B(TestEqualStrict), R(3), |
| 287 B(JumpIfFalse), U8(79), | 231 B(JumpIfFalse), U8(76), |
| 288 B(Ldar), R(5), | 232 B(Ldar), R(5), |
| 289 B(TypeOf), | 233 B(TypeOf), |
| 290 B(Star), R(13), | 234 B(Star), R(13), |
| 291 B(LdaConstant), U8(7), | 235 B(LdaConstant), U8(7), |
| 292 B(TestEqualStrict), R(13), | 236 B(TestEqualStrict), R(13), |
| 293 B(JumpIfFalse), U8(4), | 237 B(JumpIfFalse), U8(4), |
| 294 B(Jump), U8(18), | 238 B(Jump), U8(18), |
| 295 B(Wide), B(LdaSmi), U16(129), | 239 B(Wide), B(LdaSmi), U16(129), |
| 296 B(Star), R(13), | 240 B(Star), R(13), |
| 297 B(LdaConstant), U8(8), | 241 B(LdaConstant), U8(8), |
| 298 B(Star), R(14), | 242 B(Star), R(14), |
| 299 B(CallRuntime), U16(Runtime::kNewTypeError), R(13), U8(2), | 243 B(CallRuntime), U16(Runtime::kNewTypeError), R(13), U8(2), |
| 300 B(Throw), | 244 B(Throw), |
| 301 B(Mov), R(context), R(13), | 245 B(Mov), R(context), R(13), |
| 302 B(Ldar), R(5), | 246 B(Mov), R(5), R(14), |
| 303 B(Star), R(14), | 247 B(Mov), R(1), R(15), |
| 304 B(Ldar), R(1), | |
| 305 B(Star), R(15), | |
| 306 B(CallRuntime), U16(Runtime::k_Call), R(14), U8(2), | 248 B(CallRuntime), U16(Runtime::k_Call), R(14), U8(2), |
| 307 B(Jump), U8(30), | 249 B(Jump), U8(29), |
| 308 B(Star), R(15), | 250 B(Star), R(15), |
| 309 B(LdaConstant), U8(5), | 251 B(LdaConstant), U8(5), |
| 310 B(Star), R(14), | 252 B(Star), R(14), |
| 311 B(Ldar), R(closure), | 253 B(Mov), R(closure), R(16), |
| 312 B(Star), R(16), | |
| 313 B(CallRuntime), U16(Runtime::kPushCatchContext), R(14), U8(3), | 254 B(CallRuntime), U16(Runtime::kPushCatchContext), R(14), U8(3), |
| 314 B(Star), R(13), | 255 B(Star), R(13), |
| 315 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 256 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), |
| 316 B(Ldar), R(13), | 257 B(Ldar), R(13), |
| 317 B(PushContext), R(9), | 258 B(PushContext), R(9), |
| 318 B(PopContext), R(9), | 259 B(PopContext), R(9), |
| 319 B(Jump), U8(37), | 260 B(Jump), U8(29), |
| 320 B(Ldar), R(5), | 261 B(Mov), R(5), R(13), |
| 321 B(Star), R(13), | 262 B(Mov), R(1), R(14), |
| 322 B(Ldar), R(1), | |
| 323 B(Star), R(14), | |
| 324 B(CallRuntime), U16(Runtime::k_Call), R(13), U8(2), | 263 B(CallRuntime), U16(Runtime::k_Call), R(13), U8(2), |
| 325 B(Star), R(6), | 264 B(Star), R(6), |
| 326 B(Star), R(13), | 265 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(6), U8(1), |
| 327 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(13), U8(1), | |
| 328 B(JumpIfToBooleanFalse), U8(4), | 266 B(JumpIfToBooleanFalse), U8(4), |
| 329 B(Jump), U8(11), | 267 B(Jump), U8(7), |
| 330 B(Ldar), R(6), | 268 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(6), U8(1), |
| 331 B(Star), R(13), | |
| 332 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(13), U8(1), | |
| 333 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
2), U8(1), | 269 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
2), U8(1), |
| 334 B(LdaZero), | 270 B(LdaZero), |
| 335 B(TestEqualStrict), R(10), | 271 B(TestEqualStrict), R(10), |
| 336 B(JumpIfTrue), U8(10), | 272 B(JumpIfTrue), U8(10), |
| 337 B(LdaSmi), U8(1), | 273 B(LdaSmi), U8(1), |
| 338 B(TestEqualStrict), R(10), | 274 B(TestEqualStrict), R(10), |
| 339 B(JumpIfTrue), U8(7), | 275 B(JumpIfTrue), U8(7), |
| 340 B(Jump), U8(8), | 276 B(Jump), U8(8), |
| 341 B(Ldar), R(11), | 277 B(Ldar), R(11), |
| 342 /* 85 S> */ B(Return), | 278 /* 85 S> */ B(Return), |
| 343 B(Ldar), R(11), | 279 B(Ldar), R(11), |
| 344 B(ReThrow), | 280 B(ReThrow), |
| 345 B(LdaUndefined), | 281 B(LdaUndefined), |
| 346 /* 85 S> */ B(Return), | 282 /* 85 S> */ B(Return), |
| 347 ] | 283 ] |
| 348 constant pool: [ | 284 constant pool: [ |
| 349 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 285 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 350 InstanceType::SYMBOL_TYPE, | 286 InstanceType::SYMBOL_TYPE, |
| 351 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 287 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 352 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 288 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 353 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 289 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 354 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 290 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 355 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 291 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 356 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 292 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 357 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 293 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 358 kInstanceTypeDontCare, | |
| 359 ] | 294 ] |
| 360 handlers: [ | 295 handlers: [ |
| 361 [13, 153, 159], | 296 [13, 127, 133], |
| 362 [16, 107, 109], | 297 [16, 86, 88], |
| 363 [253, 266, 268], | 298 [207, 218, 220], |
| 364 ] | 299 ] |
| 365 | 300 |
| 366 --- | 301 --- |
| 367 snippet: " | 302 snippet: " |
| 368 for (var x of [10, 20, 30]) { | 303 for (var x of [10, 20, 30]) { |
| 369 if (x == 10) continue; | 304 if (x == 10) continue; |
| 370 if (x == 20) break; | 305 if (x == 20) break; |
| 371 } | 306 } |
| 372 " | 307 " |
| 373 frame size: 16 | 308 frame size: 16 |
| 374 parameter count: 1 | 309 parameter count: 1 |
| 375 bytecode array length: 365 | 310 bytecode array length: 304 |
| 376 bytecodes: [ | 311 bytecodes: [ |
| 377 /* 30 E> */ B(StackCheck), | 312 /* 30 E> */ B(StackCheck), |
| 378 B(LdrUndefined), R(4), | 313 B(LdrUndefined), R(4), |
| 379 B(LdaZero), | 314 B(LdaZero), |
| 380 B(Star), R(3), | 315 B(Star), R(3), |
| 381 B(Mov), R(context), R(11), | 316 B(Mov), R(context), R(11), |
| 382 B(Mov), R(context), R(12), | 317 B(Mov), R(context), R(12), |
| 383 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(3), | 318 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(3), |
| 384 B(Star), R(14), | 319 B(Star), R(14), |
| 385 /* 48 E> */ B(LdaConstant), U8(1), | 320 /* 48 E> */ B(LdaConstant), U8(1), |
| 386 B(LdrKeyedProperty), R(14), U8(3), R(13), | 321 B(LdrKeyedProperty), R(14), U8(3), R(13), |
| 387 /* 48 E> */ B(Call), R(13), R(14), U8(1), U8(1), | 322 /* 48 E> */ B(Call), R(13), R(14), U8(1), U8(1), |
| 388 /* 48 E> */ B(Star), R(1), | 323 /* 48 E> */ B(Star), R(1), |
| 389 /* 45 S> */ B(Ldar), R(1), | 324 /* 45 S> */ B(LdrNamedProperty), R(1), U8(2), U8(7), R(14), |
| 390 B(Star), R(15), | 325 /* 45 E> */ B(Call), R(14), R(1), U8(1), U8(5), |
| 391 B(LdrNamedProperty), R(15), U8(2), U8(7), R(14), | |
| 392 /* 45 E> */ B(Call), R(14), R(15), U8(1), U8(5), | |
| 393 /* 45 E> */ B(Star), R(2), | 326 /* 45 E> */ B(Star), R(2), |
| 394 B(Star), R(13), | 327 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(2), U8(1), |
| 395 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(13), U8(1), | |
| 396 B(ToBooleanLogicalNot), | 328 B(ToBooleanLogicalNot), |
| 397 B(JumpIfFalse), U8(11), | 329 B(JumpIfFalse), U8(7), |
| 398 B(Ldar), R(2), | 330 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(2), U8(1), |
| 399 B(Star), R(13), | 331 B(LdaNamedProperty), R(2), U8(3), U8(9), |
| 400 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(13), U8(1), | 332 B(JumpIfToBooleanTrue), U8(38), |
| 401 B(Ldar), R(2), | |
| 402 B(Star), R(13), | |
| 403 B(LdaNamedProperty), R(13), U8(3), U8(9), | |
| 404 B(JumpIfToBooleanTrue), U8(49), | |
| 405 B(LdaSmi), U8(2), | 333 B(LdaSmi), U8(2), |
| 406 B(Star), R(3), | 334 B(Star), R(3), |
| 407 B(Ldar), R(2), | 335 B(LdrNamedProperty), R(2), U8(4), U8(11), R(0), |
| 408 B(Star), R(13), | 336 B(Ldar), R(0), |
| 409 B(LdrNamedProperty), R(13), U8(4), U8(11), R(0), | |
| 410 B(Ldar), R(4), | |
| 411 /* 34 E> */ B(StackCheck), | 337 /* 34 E> */ B(StackCheck), |
| 412 B(Ldar), R(0), | 338 B(Mov), R(0), R(7), |
| 413 B(Star), R(7), | 339 /* 66 S> */ B(LdaSmi), U8(10), |
| 414 /* 66 S> */ B(Star), R(13), | 340 /* 72 E> */ B(TestEqual), R(7), |
| 415 B(LdaSmi), U8(10), | |
| 416 /* 72 E> */ B(TestEqual), R(13), | |
| 417 B(JumpIfFalse), U8(4), | 341 B(JumpIfFalse), U8(4), |
| 418 /* 79 S> */ B(Jump), U8(17), | 342 /* 79 S> */ B(Jump), U8(13), |
| 419 /* 91 S> */ B(Ldar), R(7), | 343 /* 91 S> */ B(LdaSmi), U8(20), |
| 420 B(Star), R(13), | 344 /* 97 E> */ B(TestEqual), R(7), |
| 421 B(LdaSmi), U8(20), | |
| 422 /* 97 E> */ B(TestEqual), R(13), | |
| 423 B(JumpIfFalse), U8(4), | 345 B(JumpIfFalse), U8(4), |
| 424 /* 104 S> */ B(Jump), U8(7), | 346 /* 104 S> */ B(Jump), U8(7), |
| 425 B(LdaZero), | 347 B(LdaZero), |
| 426 B(Star), R(3), | 348 B(Star), R(3), |
| 427 B(Jump), U8(-90), | 349 B(Jump), U8(-65), |
| 428 B(Jump), U8(46), | 350 B(Jump), U8(41), |
| 429 B(Star), R(14), | 351 B(Star), R(14), |
| 430 B(LdaConstant), U8(5), | 352 B(LdaConstant), U8(5), |
| 431 B(Star), R(13), | 353 B(Star), R(13), |
| 432 B(Ldar), R(closure), | 354 B(Mov), R(closure), R(15), |
| 433 B(Star), R(15), | |
| 434 B(CallRuntime), U16(Runtime::kPushCatchContext), R(13), U8(3), | 355 B(CallRuntime), U16(Runtime::kPushCatchContext), R(13), U8(3), |
| 435 B(Star), R(12), | 356 B(Star), R(12), |
| 436 B(PushContext), R(8), | 357 B(PushContext), R(8), |
| 437 B(Ldar), R(3), | |
| 438 B(Star), R(13), | |
| 439 B(LdaSmi), U8(2), | 358 B(LdaSmi), U8(2), |
| 440 B(TestEqualStrict), R(13), | 359 B(TestEqualStrict), R(3), |
| 441 B(JumpIfFalse), U8(6), | 360 B(JumpIfFalse), U8(6), |
| 442 B(LdaSmi), U8(1), | 361 B(LdaSmi), U8(1), |
| 443 B(Star), R(3), | 362 B(Star), R(3), |
| 444 B(LdrContextSlot), R(context), U8(4), R(13), | 363 B(LdrContextSlot), R(context), U8(4), R(13), |
| 445 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), | 364 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), |
| 446 B(PopContext), R(8), | 365 B(PopContext), R(8), |
| 447 B(LdaSmi), U8(-1), | 366 B(LdaSmi), U8(-1), |
| 448 B(Star), R(9), | 367 B(Star), R(9), |
| 449 B(Jump), U8(7), | 368 B(Jump), U8(7), |
| 450 B(Star), R(10), | 369 B(Star), R(10), |
| 451 B(LdaZero), | 370 B(LdaZero), |
| 452 B(Star), R(9), | 371 B(Star), R(9), |
| 453 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 372 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), |
| 454 B(Star), R(11), | 373 B(Star), R(11), |
| 455 B(Ldar), R(3), | |
| 456 B(Star), R(12), | |
| 457 B(LdaZero), | 374 B(LdaZero), |
| 458 B(TestEqualStrict), R(12), | 375 B(TestEqualStrict), R(3), |
| 459 B(JumpIfTrue), U8(9), | 376 B(JumpIfTrue), U8(5), |
| 460 B(Ldar), R(1), | |
| 461 B(Star), R(12), | |
| 462 B(LdaUndefined), | 377 B(LdaUndefined), |
| 463 B(TestEqualStrict), R(12), | 378 B(TestEqualStrict), R(1), |
| 464 B(ToBooleanLogicalNot), | 379 B(ToBooleanLogicalNot), |
| 465 B(JumpIfFalseConstant), U8(9), | 380 B(JumpIfFalse), U8(121), |
| 466 B(Ldar), R(1), | 381 B(LdrNamedProperty), R(1), U8(6), U8(13), R(5), |
| 467 B(Star), R(12), | |
| 468 B(LdrNamedProperty), R(12), U8(6), U8(13), R(5), | |
| 469 B(Ldar), R(5), | |
| 470 B(Star), R(12), | |
| 471 B(LdaNull), | 382 B(LdaNull), |
| 472 B(TestEqual), R(12), | 383 B(TestEqual), R(5), |
| 473 B(JumpIfFalse), U8(4), | 384 B(JumpIfFalse), U8(4), |
| 474 B(Jump), U8(124), | 385 B(Jump), U8(109), |
| 475 B(Ldar), R(3), | |
| 476 B(Star), R(12), | |
| 477 B(LdaSmi), U8(1), | 386 B(LdaSmi), U8(1), |
| 478 B(TestEqualStrict), R(12), | 387 B(TestEqualStrict), R(3), |
| 479 B(JumpIfFalse), U8(79), | 388 B(JumpIfFalse), U8(76), |
| 480 B(Ldar), R(5), | 389 B(Ldar), R(5), |
| 481 B(TypeOf), | 390 B(TypeOf), |
| 482 B(Star), R(12), | 391 B(Star), R(12), |
| 483 B(LdaConstant), U8(7), | 392 B(LdaConstant), U8(7), |
| 484 B(TestEqualStrict), R(12), | 393 B(TestEqualStrict), R(12), |
| 485 B(JumpIfFalse), U8(4), | 394 B(JumpIfFalse), U8(4), |
| 486 B(Jump), U8(18), | 395 B(Jump), U8(18), |
| 487 B(Wide), B(LdaSmi), U16(129), | 396 B(Wide), B(LdaSmi), U16(129), |
| 488 B(Star), R(12), | 397 B(Star), R(12), |
| 489 B(LdaConstant), U8(8), | 398 B(LdaConstant), U8(8), |
| 490 B(Star), R(13), | 399 B(Star), R(13), |
| 491 B(CallRuntime), U16(Runtime::kNewTypeError), R(12), U8(2), | 400 B(CallRuntime), U16(Runtime::kNewTypeError), R(12), U8(2), |
| 492 B(Throw), | 401 B(Throw), |
| 493 B(Mov), R(context), R(12), | 402 B(Mov), R(context), R(12), |
| 494 B(Ldar), R(5), | 403 B(Mov), R(5), R(13), |
| 495 B(Star), R(13), | 404 B(Mov), R(1), R(14), |
| 496 B(Ldar), R(1), | |
| 497 B(Star), R(14), | |
| 498 B(CallRuntime), U16(Runtime::k_Call), R(13), U8(2), | 405 B(CallRuntime), U16(Runtime::k_Call), R(13), U8(2), |
| 499 B(Jump), U8(30), | 406 B(Jump), U8(29), |
| 500 B(Star), R(14), | 407 B(Star), R(14), |
| 501 B(LdaConstant), U8(5), | 408 B(LdaConstant), U8(5), |
| 502 B(Star), R(13), | 409 B(Star), R(13), |
| 503 B(Ldar), R(closure), | 410 B(Mov), R(closure), R(15), |
| 504 B(Star), R(15), | |
| 505 B(CallRuntime), U16(Runtime::kPushCatchContext), R(13), U8(3), | 411 B(CallRuntime), U16(Runtime::kPushCatchContext), R(13), U8(3), |
| 506 B(Star), R(12), | 412 B(Star), R(12), |
| 507 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 413 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), |
| 508 B(Ldar), R(12), | 414 B(Ldar), R(12), |
| 509 B(PushContext), R(8), | 415 B(PushContext), R(8), |
| 510 B(PopContext), R(8), | 416 B(PopContext), R(8), |
| 511 B(Jump), U8(37), | 417 B(Jump), U8(29), |
| 512 B(Ldar), R(5), | 418 B(Mov), R(5), R(12), |
| 513 B(Star), R(12), | 419 B(Mov), R(1), R(13), |
| 514 B(Ldar), R(1), | |
| 515 B(Star), R(13), | |
| 516 B(CallRuntime), U16(Runtime::k_Call), R(12), U8(2), | 420 B(CallRuntime), U16(Runtime::k_Call), R(12), U8(2), |
| 517 B(Star), R(6), | 421 B(Star), R(6), |
| 518 B(Star), R(12), | 422 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(6), U8(1), |
| 519 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(12), U8(1), | |
| 520 B(JumpIfToBooleanFalse), U8(4), | 423 B(JumpIfToBooleanFalse), U8(4), |
| 521 B(Jump), U8(11), | 424 B(Jump), U8(7), |
| 522 B(Ldar), R(6), | 425 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(6), U8(1), |
| 523 B(Star), R(12), | |
| 524 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(12), U8(1), | |
| 525 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
1), U8(1), | 426 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
1), U8(1), |
| 526 B(LdaZero), | 427 B(LdaZero), |
| 527 B(TestEqualStrict), R(9), | 428 B(TestEqualStrict), R(9), |
| 528 B(JumpIfTrue), U8(4), | 429 B(JumpIfTrue), U8(4), |
| 529 B(Jump), U8(5), | 430 B(Jump), U8(5), |
| 530 B(Ldar), R(10), | 431 B(Ldar), R(10), |
| 531 B(ReThrow), | 432 B(ReThrow), |
| 532 B(LdaUndefined), | 433 B(LdaUndefined), |
| 533 /* 113 S> */ B(Return), | 434 /* 113 S> */ B(Return), |
| 534 ] | 435 ] |
| 535 constant pool: [ | 436 constant pool: [ |
| 536 InstanceType::FIXED_ARRAY_TYPE, | 437 InstanceType::FIXED_ARRAY_TYPE, |
| 537 InstanceType::SYMBOL_TYPE, | 438 InstanceType::SYMBOL_TYPE, |
| 538 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 439 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 539 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 440 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 540 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 441 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 541 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 442 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 542 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 443 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 543 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 444 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 544 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 445 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 545 kInstanceTypeDontCare, | |
| 546 ] | 446 ] |
| 547 handlers: [ | 447 handlers: [ |
| 548 [9, 169, 175], | 448 [9, 139, 145], |
| 549 [12, 123, 125], | 449 [12, 98, 100], |
| 550 [268, 281, 283], | 450 [218, 229, 231], |
| 551 ] | 451 ] |
| 552 | 452 |
| 553 --- | 453 --- |
| 554 snippet: " | 454 snippet: " |
| 555 var x = { 'a': 1, 'b': 2 }; | 455 var x = { 'a': 1, 'b': 2 }; |
| 556 for (x['a'] of [1,2,3]) { return x['a']; } | 456 for (x['a'] of [1,2,3]) { return x['a']; } |
| 557 " | 457 " |
| 558 frame size: 15 | 458 frame size: 15 |
| 559 parameter count: 1 | 459 parameter count: 1 |
| 560 bytecode array length: 375 | 460 bytecode array length: 312 |
| 561 bytecodes: [ | 461 bytecodes: [ |
| 562 /* 30 E> */ B(StackCheck), | 462 /* 30 E> */ B(StackCheck), |
| 563 /* 42 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), | 463 /* 42 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), |
| 564 B(Star), R(8), | 464 B(Star), R(8), |
| 565 /* 42 E> */ B(Star), R(6), | 465 /* 42 E> */ B(Star), R(6), |
| 566 B(LdrUndefined), R(3), | 466 B(LdrUndefined), R(3), |
| 567 B(LdaZero), | 467 B(LdaZero), |
| 568 B(Star), R(2), | 468 B(Star), R(2), |
| 569 B(Mov), R(context), R(10), | 469 B(Mov), R(context), R(10), |
| 570 B(Mov), R(context), R(11), | 470 B(Mov), R(context), R(11), |
| 571 /* 77 S> */ B(CreateArrayLiteral), U8(1), U8(1), U8(3), | 471 /* 77 S> */ B(CreateArrayLiteral), U8(1), U8(1), U8(3), |
| 572 B(Star), R(13), | 472 B(Star), R(13), |
| 573 /* 77 E> */ B(LdaConstant), U8(2), | 473 /* 77 E> */ B(LdaConstant), U8(2), |
| 574 B(LdrKeyedProperty), R(13), U8(3), R(12), | 474 B(LdrKeyedProperty), R(13), U8(3), R(12), |
| 575 /* 77 E> */ B(Call), R(12), R(13), U8(1), U8(1), | 475 /* 77 E> */ B(Call), R(12), R(13), U8(1), U8(1), |
| 576 /* 77 E> */ B(Star), R(0), | 476 /* 77 E> */ B(Star), R(0), |
| 577 /* 74 S> */ B(Ldar), R(0), | 477 /* 74 S> */ B(LdrNamedProperty), R(0), U8(3), U8(7), R(13), |
| 578 B(Star), R(14), | 478 /* 74 E> */ B(Call), R(13), R(0), U8(1), U8(5), |
| 579 B(LdrNamedProperty), R(14), U8(3), U8(7), R(13), | |
| 580 /* 74 E> */ B(Call), R(13), R(14), U8(1), U8(5), | |
| 581 /* 74 E> */ B(Star), R(1), | 479 /* 74 E> */ B(Star), R(1), |
| 582 B(Star), R(12), | 480 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(1), U8(1), |
| 583 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(12), U8(1), | |
| 584 B(ToBooleanLogicalNot), | 481 B(ToBooleanLogicalNot), |
| 585 B(JumpIfFalse), U8(11), | 482 B(JumpIfFalse), U8(7), |
| 586 B(Ldar), R(1), | 483 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(1), U8(1), |
| 587 B(Star), R(12), | 484 B(LdaNamedProperty), R(1), U8(4), U8(9), |
| 588 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(12), U8(1), | 485 B(JumpIfToBooleanTrue), U8(28), |
| 589 B(Ldar), R(1), | |
| 590 B(Star), R(12), | |
| 591 B(LdaNamedProperty), R(12), U8(4), U8(9), | |
| 592 B(JumpIfToBooleanTrue), U8(41), | |
| 593 B(LdaSmi), U8(2), | 486 B(LdaSmi), U8(2), |
| 594 B(Star), R(2), | 487 B(Star), R(2), |
| 595 /* 67 E> */ B(Ldar), R(6), | 488 /* 67 E> */ B(LdaNamedProperty), R(1), U8(5), U8(11), |
| 596 B(Star), R(12), | 489 B(StaNamedPropertySloppy), R(6), U8(6), U8(13), |
| 597 B(Ldar), R(1), | |
| 598 B(Star), R(13), | |
| 599 B(LdaNamedProperty), R(13), U8(5), U8(11), | |
| 600 B(StaNamedPropertySloppy), R(12), U8(6), U8(13), | |
| 601 B(Ldar), R(3), | |
| 602 /* 62 E> */ B(StackCheck), | 490 /* 62 E> */ B(StackCheck), |
| 603 /* 88 S> */ B(Ldar), R(6), | 491 /* 88 S> */ B(Nop), |
| 604 B(Star), R(12), | 492 /* 96 E> */ B(LdrNamedProperty), R(6), U8(6), U8(15), R(9), |
| 605 /* 96 E> */ B(LdrNamedProperty), R(12), U8(6), U8(15), R(9), | |
| 606 B(LdaZero), | 493 B(LdaZero), |
| 607 B(Star), R(8), | 494 B(Star), R(8), |
| 608 B(Jump), U8(62), | 495 B(Jump), U8(57), |
| 609 B(Jump), U8(-82), | 496 B(Jump), U8(-55), |
| 610 B(Jump), U8(46), | 497 B(Jump), U8(41), |
| 611 B(Star), R(13), | 498 B(Star), R(13), |
| 612 B(LdaConstant), U8(7), | 499 B(LdaConstant), U8(7), |
| 613 B(Star), R(12), | 500 B(Star), R(12), |
| 614 B(Ldar), R(closure), | 501 B(Mov), R(closure), R(14), |
| 615 B(Star), R(14), | |
| 616 B(CallRuntime), U16(Runtime::kPushCatchContext), R(12), U8(3), | 502 B(CallRuntime), U16(Runtime::kPushCatchContext), R(12), U8(3), |
| 617 B(Star), R(11), | 503 B(Star), R(11), |
| 618 B(PushContext), R(7), | 504 B(PushContext), R(7), |
| 619 B(Ldar), R(2), | |
| 620 B(Star), R(12), | |
| 621 B(LdaSmi), U8(2), | 505 B(LdaSmi), U8(2), |
| 622 B(TestEqualStrict), R(12), | 506 B(TestEqualStrict), R(2), |
| 623 B(JumpIfFalse), U8(6), | 507 B(JumpIfFalse), U8(6), |
| 624 B(LdaSmi), U8(1), | 508 B(LdaSmi), U8(1), |
| 625 B(Star), R(2), | 509 B(Star), R(2), |
| 626 B(LdrContextSlot), R(context), U8(4), R(12), | 510 B(LdrContextSlot), R(context), U8(4), R(12), |
| 627 B(CallRuntime), U16(Runtime::kReThrow), R(12), U8(1), | 511 B(CallRuntime), U16(Runtime::kReThrow), R(12), U8(1), |
| 628 B(PopContext), R(7), | 512 B(PopContext), R(7), |
| 629 B(LdaSmi), U8(-1), | 513 B(LdaSmi), U8(-1), |
| 630 B(Star), R(8), | 514 B(Star), R(8), |
| 631 B(Jump), U8(8), | 515 B(Jump), U8(8), |
| 632 B(Star), R(9), | 516 B(Star), R(9), |
| 633 B(LdaSmi), U8(1), | 517 B(LdaSmi), U8(1), |
| 634 B(Star), R(8), | 518 B(Star), R(8), |
| 635 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 519 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), |
| 636 B(Star), R(10), | 520 B(Star), R(10), |
| 637 B(Ldar), R(2), | |
| 638 B(Star), R(11), | |
| 639 B(LdaZero), | 521 B(LdaZero), |
| 640 B(TestEqualStrict), R(11), | 522 B(TestEqualStrict), R(2), |
| 641 B(JumpIfTrue), U8(9), | 523 B(JumpIfTrue), U8(5), |
| 642 B(Ldar), R(0), | |
| 643 B(Star), R(11), | |
| 644 B(LdaUndefined), | 524 B(LdaUndefined), |
| 645 B(TestEqualStrict), R(11), | 525 B(TestEqualStrict), R(0), |
| 646 B(ToBooleanLogicalNot), | 526 B(ToBooleanLogicalNot), |
| 647 B(JumpIfFalseConstant), U8(11), | 527 B(JumpIfFalse), U8(121), |
| 648 B(Ldar), R(0), | 528 B(LdrNamedProperty), R(0), U8(8), U8(17), R(4), |
| 649 B(Star), R(11), | |
| 650 B(LdrNamedProperty), R(11), U8(8), U8(17), R(4), | |
| 651 B(Ldar), R(4), | |
| 652 B(Star), R(11), | |
| 653 B(LdaNull), | 529 B(LdaNull), |
| 654 B(TestEqual), R(11), | 530 B(TestEqual), R(4), |
| 655 B(JumpIfFalse), U8(4), | 531 B(JumpIfFalse), U8(4), |
| 656 B(Jump), U8(124), | 532 B(Jump), U8(109), |
| 657 B(Ldar), R(2), | |
| 658 B(Star), R(11), | |
| 659 B(LdaSmi), U8(1), | 533 B(LdaSmi), U8(1), |
| 660 B(TestEqualStrict), R(11), | 534 B(TestEqualStrict), R(2), |
| 661 B(JumpIfFalse), U8(79), | 535 B(JumpIfFalse), U8(76), |
| 662 B(Ldar), R(4), | 536 B(Ldar), R(4), |
| 663 B(TypeOf), | 537 B(TypeOf), |
| 664 B(Star), R(11), | 538 B(Star), R(11), |
| 665 B(LdaConstant), U8(9), | 539 B(LdaConstant), U8(9), |
| 666 B(TestEqualStrict), R(11), | 540 B(TestEqualStrict), R(11), |
| 667 B(JumpIfFalse), U8(4), | 541 B(JumpIfFalse), U8(4), |
| 668 B(Jump), U8(18), | 542 B(Jump), U8(18), |
| 669 B(Wide), B(LdaSmi), U16(129), | 543 B(Wide), B(LdaSmi), U16(129), |
| 670 B(Star), R(11), | 544 B(Star), R(11), |
| 671 B(LdaConstant), U8(10), | 545 B(LdaConstant), U8(10), |
| 672 B(Star), R(12), | 546 B(Star), R(12), |
| 673 B(CallRuntime), U16(Runtime::kNewTypeError), R(11), U8(2), | 547 B(CallRuntime), U16(Runtime::kNewTypeError), R(11), U8(2), |
| 674 B(Throw), | 548 B(Throw), |
| 675 B(Mov), R(context), R(11), | 549 B(Mov), R(context), R(11), |
| 676 B(Ldar), R(4), | 550 B(Mov), R(4), R(12), |
| 677 B(Star), R(12), | 551 B(Mov), R(0), R(13), |
| 678 B(Ldar), R(0), | |
| 679 B(Star), R(13), | |
| 680 B(CallRuntime), U16(Runtime::k_Call), R(12), U8(2), | 552 B(CallRuntime), U16(Runtime::k_Call), R(12), U8(2), |
| 681 B(Jump), U8(30), | 553 B(Jump), U8(29), |
| 682 B(Star), R(13), | 554 B(Star), R(13), |
| 683 B(LdaConstant), U8(7), | 555 B(LdaConstant), U8(7), |
| 684 B(Star), R(12), | 556 B(Star), R(12), |
| 685 B(Ldar), R(closure), | 557 B(Mov), R(closure), R(14), |
| 686 B(Star), R(14), | |
| 687 B(CallRuntime), U16(Runtime::kPushCatchContext), R(12), U8(3), | 558 B(CallRuntime), U16(Runtime::kPushCatchContext), R(12), U8(3), |
| 688 B(Star), R(11), | 559 B(Star), R(11), |
| 689 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), | 560 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R
(0), U8(0), |
| 690 B(Ldar), R(11), | 561 B(Ldar), R(11), |
| 691 B(PushContext), R(7), | 562 B(PushContext), R(7), |
| 692 B(PopContext), R(7), | 563 B(PopContext), R(7), |
| 693 B(Jump), U8(37), | 564 B(Jump), U8(29), |
| 694 B(Ldar), R(4), | 565 B(Mov), R(4), R(11), |
| 695 B(Star), R(11), | 566 B(Mov), R(0), R(12), |
| 696 B(Ldar), R(0), | |
| 697 B(Star), R(12), | |
| 698 B(CallRuntime), U16(Runtime::k_Call), R(11), U8(2), | 567 B(CallRuntime), U16(Runtime::k_Call), R(11), U8(2), |
| 699 B(Star), R(5), | 568 B(Star), R(5), |
| 700 B(Star), R(11), | 569 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(5), U8(1), |
| 701 B(InvokeIntrinsic), U16(Runtime::k_IsJSReceiver), R(11), U8(1), | |
| 702 B(JumpIfToBooleanFalse), U8(4), | 570 B(JumpIfToBooleanFalse), U8(4), |
| 703 B(Jump), U8(11), | 571 B(Jump), U8(7), |
| 704 B(Ldar), R(5), | 572 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(5), U8(1), |
| 705 B(Star), R(11), | |
| 706 B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R
(11), U8(1), | |
| 707 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
0), U8(1), | 573 B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(1
0), U8(1), |
| 708 B(LdaZero), | 574 B(LdaZero), |
| 709 B(TestEqualStrict), R(8), | 575 B(TestEqualStrict), R(8), |
| 710 B(JumpIfTrue), U8(10), | 576 B(JumpIfTrue), U8(10), |
| 711 B(LdaSmi), U8(1), | 577 B(LdaSmi), U8(1), |
| 712 B(TestEqualStrict), R(8), | 578 B(TestEqualStrict), R(8), |
| 713 B(JumpIfTrue), U8(7), | 579 B(JumpIfTrue), U8(7), |
| 714 B(Jump), U8(8), | 580 B(Jump), U8(8), |
| 715 B(Ldar), R(9), | 581 B(Ldar), R(9), |
| 716 /* 105 S> */ B(Return), | 582 /* 105 S> */ B(Return), |
| 717 B(Ldar), R(9), | 583 B(Ldar), R(9), |
| 718 B(ReThrow), | 584 B(ReThrow), |
| 719 B(LdaUndefined), | 585 B(LdaUndefined), |
| 720 /* 105 S> */ B(Return), | 586 /* 105 S> */ B(Return), |
| 721 ] | 587 ] |
| 722 constant pool: [ | 588 constant pool: [ |
| 723 InstanceType::FIXED_ARRAY_TYPE, | 589 InstanceType::FIXED_ARRAY_TYPE, |
| 724 InstanceType::FIXED_ARRAY_TYPE, | 590 InstanceType::FIXED_ARRAY_TYPE, |
| 725 InstanceType::SYMBOL_TYPE, | 591 InstanceType::SYMBOL_TYPE, |
| 726 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 592 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 727 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 593 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 728 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 594 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 729 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 595 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 730 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 596 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 731 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 597 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 732 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 598 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 733 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 599 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 734 kInstanceTypeDontCare, | |
| 735 ] | 600 ] |
| 736 handlers: [ | 601 handlers: [ |
| 737 [17, 169, 175], | 602 [17, 137, 143], |
| 738 [20, 123, 125], | 603 [20, 96, 98], |
| 739 [269, 282, 284], | 604 [217, 228, 230], |
| 740 ] | 605 ] |
| 741 | 606 |
| OLD | NEW |