| 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: 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: 6 |
| 26 parameter count: 1 | 26 parameter count: 1 |
| 27 bytecode array length: 53 | 27 bytecode array length: 35 |
| 28 bytecodes: [ | 28 bytecodes: [ |
| 29 B(Mov), R(closure), R(0), | 29 B(Mov), R(closure), R(0), |
| 30 /* 99 E> */ B(StackCheck), | 30 /* 99 E> */ B(StackCheck), |
| 31 /* 104 S> */ B(Mov), R(this), R(3), | 31 /* 104 S> */ B(LdaConstant), U8(0), |
| 32 B(Ldar), R(closure), | 32 /* 111 E> */ B(LdrKeyedProperty), R(closure), U8(3), R(4), |
| 33 B(JumpIfNotHole), U8(11), | |
| 34 B(LdaConstant), U8(0), | |
| 35 B(Star), R(6), | |
| 36 /* 111 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(6), U8(1), | |
| 37 B(Star), R(6), | |
| 38 B(LdaConstant), U8(1), | 33 B(LdaConstant), U8(1), |
| 39 /* 111 E> */ B(LdrKeyedProperty), R(6), U8(3), R(4), | |
| 40 B(LdaConstant), U8(2), | |
| 41 B(Star), R(5), | 34 B(Star), R(5), |
| 35 B(Mov), R(this), R(3), |
| 42 B(CallRuntime), U16(Runtime::kLoadFromSuper), R(3), U8(3), | 36 B(CallRuntime), U16(Runtime::kLoadFromSuper), R(3), U8(3), |
| 43 B(Mov), R(3), R(2), | |
| 44 B(Star), R(1), | 37 B(Star), R(1), |
| 45 /* 117 E> */ B(Call), R(1), R(2), U8(1), U8(1), | 38 /* 117 E> */ B(Call), R(1), R(this), U8(1), U8(1), |
| 46 B(Star), R(3), | 39 B(Star), R(3), |
| 47 B(AddSmi), U8(1), R(3), | 40 B(AddSmi), U8(1), R(3), |
| 48 /* 131 S> */ B(Return), | 41 /* 131 S> */ B(Return), |
| 49 ] | 42 ] |
| 50 constant pool: [ | 43 constant pool: [ |
| 51 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | |
| 52 InstanceType::SYMBOL_TYPE, | 44 InstanceType::SYMBOL_TYPE, |
| 53 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 45 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 54 ] | 46 ] |
| 55 handlers: [ | 47 handlers: [ |
| 56 ] | 48 ] |
| 57 | 49 |
| 58 --- | 50 --- |
| 59 snippet: " | 51 snippet: " |
| 60 var test; | 52 var test; |
| 61 (function() { | 53 (function() { |
| 62 class A { | 54 class A { |
| 63 get x() { return 1; } | 55 get x() { return 1; } |
| 64 set x(val) { return; } | 56 set x(val) { return; } |
| 65 } | 57 } |
| 66 class B extends A { | 58 class B extends A { |
| 67 method() { super.x = 2; return super.x; } | 59 method() { super.x = 2; return super.x; } |
| 68 } | 60 } |
| 69 test = new B().method; | 61 test = new B().method; |
| 70 test(); | 62 test(); |
| 71 })(); | 63 })(); |
| 72 " | 64 " |
| 73 frame size: 6 | 65 frame size: 5 |
| 74 parameter count: 1 | 66 parameter count: 1 |
| 75 bytecode array length: 75 | 67 bytecode array length: 45 |
| 76 bytecodes: [ | 68 bytecodes: [ |
| 77 B(Mov), R(closure), R(0), | 69 B(Mov), R(closure), R(0), |
| 78 /* 125 E> */ B(StackCheck), | 70 /* 125 E> */ B(StackCheck), |
| 79 /* 130 S> */ B(Mov), R(this), R(1), | 71 /* 130 S> */ B(LdaConstant), U8(0), |
| 80 B(Ldar), R(closure), | 72 /* 130 E> */ B(LdrKeyedProperty), R(closure), U8(1), R(2), |
| 81 B(JumpIfNotHole), U8(11), | |
| 82 B(LdaConstant), U8(0), | |
| 83 B(Star), R(5), | |
| 84 /* 130 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1), | |
| 85 B(Star), R(5), | |
| 86 B(LdaConstant), U8(1), | 73 B(LdaConstant), U8(1), |
| 87 /* 130 E> */ B(LdrKeyedProperty), R(5), U8(1), R(2), | |
| 88 B(LdaConstant), U8(2), | |
| 89 B(Star), R(3), | 74 B(Star), R(3), |
| 90 B(LdaSmi), U8(2), | 75 B(LdaSmi), U8(2), |
| 91 B(Star), R(4), | 76 B(Star), R(4), |
| 77 B(Mov), R(this), R(1), |
| 92 /* 138 E> */ B(CallRuntime), U16(Runtime::kStoreToSuper_Strict), R(1), U8(4), | 78 /* 138 E> */ B(CallRuntime), U16(Runtime::kStoreToSuper_Strict), R(1), U8(4), |
| 93 /* 143 S> */ B(Mov), R(this), R(1), | 79 /* 143 S> */ B(LdaConstant), U8(0), |
| 94 B(Ldar), R(0), | 80 /* 150 E> */ B(LdrKeyedProperty), R(closure), U8(3), R(2), |
| 95 B(JumpIfNotHole), U8(11), | |
| 96 B(LdaConstant), U8(0), | |
| 97 B(Star), R(4), | |
| 98 /* 150 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), | |
| 99 B(Star), R(4), | |
| 100 B(LdaConstant), U8(1), | 81 B(LdaConstant), U8(1), |
| 101 /* 150 E> */ B(LdrKeyedProperty), R(4), U8(3), R(2), | |
| 102 B(LdaConstant), U8(2), | |
| 103 B(Star), R(3), | 82 B(Star), R(3), |
| 83 B(Mov), R(this), R(1), |
| 104 B(CallRuntime), U16(Runtime::kLoadFromSuper), R(1), U8(3), | 84 B(CallRuntime), U16(Runtime::kLoadFromSuper), R(1), U8(3), |
| 105 /* 159 S> */ B(Return), | 85 /* 159 S> */ B(Return), |
| 106 ] | 86 ] |
| 107 constant pool: [ | 87 constant pool: [ |
| 108 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | |
| 109 InstanceType::SYMBOL_TYPE, | 88 InstanceType::SYMBOL_TYPE, |
| 110 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 89 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 111 ] | 90 ] |
| 112 handlers: [ | 91 handlers: [ |
| 113 ] | 92 ] |
| 114 | 93 |
| 115 --- | 94 --- |
| 116 snippet: " | 95 snippet: " |
| 117 var test; | 96 var test; |
| 118 (function() { | 97 (function() { |
| 119 class A { | 98 class A { |
| 120 constructor(x) { this.x_ = x; } | 99 constructor(x) { this.x_ = x; } |
| 121 } | 100 } |
| 122 class B extends A { | 101 class B extends A { |
| 123 constructor() { super(1); this.y_ = 2; } | 102 constructor() { super(1); this.y_ = 2; } |
| 124 } | 103 } |
| 125 test = new B().constructor; | 104 test = new B().constructor; |
| 126 })(); | 105 })(); |
| 127 " | 106 " |
| 128 frame size: 5 | 107 frame size: 4 |
| 129 parameter count: 1 | 108 parameter count: 1 |
| 130 bytecode array length: 105 | 109 bytecode array length: 79 |
| 131 bytecodes: [ | 110 bytecodes: [ |
| 132 B(Mov), R(closure), R(1), | 111 B(Mov), R(closure), R(1), |
| 133 B(Mov), R(new_target), R(0), | 112 B(Mov), R(new_target), R(0), |
| 134 /* 113 E> */ B(StackCheck), | 113 /* 113 E> */ B(StackCheck), |
| 135 /* 118 S> */ B(Ldar), R(closure), | 114 /* 118 S> */ B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(closure),
U8(1), |
| 136 B(JumpIfNotHole), U8(11), | |
| 137 B(LdaConstant), U8(0), | |
| 138 B(Star), R(3), | |
| 139 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), | |
| 140 B(Star), R(2), | |
| 141 B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(2), U8(1)
, | |
| 142 B(Star), R(2), | 115 B(Star), R(2), |
| 143 B(LdaSmi), U8(1), | 116 B(LdaSmi), U8(1), |
| 144 B(Star), R(3), | 117 B(Star), R(3), |
| 145 B(Ldar), R(0), | 118 B(Ldar), R(new_target), |
| 146 B(JumpIfNotHole), U8(11), | |
| 147 B(LdaConstant), U8(1), | |
| 148 B(Star), R(4), | |
| 149 /* 118 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), | |
| 150 /* 118 E> */ B(New), R(2), R(3), U8(1), | 119 /* 118 E> */ B(New), R(2), R(3), U8(1), |
| 151 B(Star), R(2), | 120 B(Star), R(2), |
| 152 B(Ldar), R(this), | 121 B(Ldar), R(this), |
| 153 B(JumpIfNotHole), U8(4), | 122 B(JumpIfNotHole), U8(4), |
| 154 B(Jump), U8(11), | 123 B(Jump), U8(11), |
| 155 B(LdaConstant), U8(2), | 124 B(LdaConstant), U8(0), |
| 156 B(Star), R(3), | 125 B(Star), R(3), |
| 157 /* 118 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), | 126 /* 118 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), |
| 158 B(Mov), R(2), R(this), | 127 B(Mov), R(2), R(this), |
| 159 /* 128 S> */ B(Ldar), R(this), | 128 /* 128 S> */ B(Ldar), R(this), |
| 160 B(JumpIfNotHole), U8(11), | 129 B(JumpIfNotHole), U8(11), |
| 161 B(LdaConstant), U8(2), | 130 B(LdaConstant), U8(0), |
| 162 B(Star), R(2), | 131 B(Star), R(2), |
| 163 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), | 132 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), |
| 164 B(Star), R(2), | 133 B(Star), R(2), |
| 165 B(LdaSmi), U8(2), | 134 B(LdaSmi), U8(2), |
| 166 /* 136 E> */ B(StaNamedPropertyStrict), R(2), U8(3), U8(4), | 135 /* 136 E> */ B(StaNamedPropertyStrict), R(2), U8(1), U8(4), |
| 167 B(Ldar), R(this), | 136 B(Ldar), R(this), |
| 168 B(JumpIfNotHole), U8(11), | 137 B(JumpIfNotHole), U8(11), |
| 169 B(LdaConstant), U8(2), | 138 B(LdaConstant), U8(0), |
| 170 B(Star), R(2), | 139 B(Star), R(2), |
| 171 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), | 140 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), |
| 172 /* 141 S> */ B(Return), | 141 /* 141 S> */ B(Return), |
| 173 ] | 142 ] |
| 174 constant pool: [ | 143 constant pool: [ |
| 175 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 144 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 176 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 145 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 177 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | |
| 178 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | |
| 179 ] | 146 ] |
| 180 handlers: [ | 147 handlers: [ |
| 181 ] | 148 ] |
| 182 | 149 |
| 183 --- | 150 --- |
| 184 snippet: " | 151 snippet: " |
| 185 var test; | 152 var test; |
| 186 (function() { | 153 (function() { |
| 187 class A { | 154 class A { |
| 188 constructor() { this.x_ = 1; } | 155 constructor() { this.x_ = 1; } |
| 189 } | 156 } |
| 190 class B extends A { | 157 class B extends A { |
| 191 constructor() { super(); this.y_ = 2; } | 158 constructor() { super(); this.y_ = 2; } |
| 192 } | 159 } |
| 193 test = new B().constructor; | 160 test = new B().constructor; |
| 194 })(); | 161 })(); |
| 195 " | 162 " |
| 196 frame size: 4 | 163 frame size: 4 |
| 197 parameter count: 1 | 164 parameter count: 1 |
| 198 bytecode array length: 101 | 165 bytecode array length: 75 |
| 199 bytecodes: [ | 166 bytecodes: [ |
| 200 B(Mov), R(closure), R(1), | 167 B(Mov), R(closure), R(1), |
| 201 B(Mov), R(new_target), R(0), | 168 B(Mov), R(new_target), R(0), |
| 202 /* 112 E> */ B(StackCheck), | 169 /* 112 E> */ B(StackCheck), |
| 203 /* 117 S> */ B(Ldar), R(closure), | 170 /* 117 S> */ B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(closure),
U8(1), |
| 204 B(JumpIfNotHole), U8(11), | |
| 205 B(LdaConstant), U8(0), | |
| 206 B(Star), R(3), | |
| 207 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), | |
| 208 B(Star), R(2), | 171 B(Star), R(2), |
| 209 B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(2), U8(1)
, | 172 B(Ldar), R(new_target), |
| 210 B(Star), R(2), | |
| 211 B(Ldar), R(0), | |
| 212 B(JumpIfNotHole), U8(11), | |
| 213 B(LdaConstant), U8(1), | |
| 214 B(Star), R(3), | |
| 215 /* 117 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), | |
| 216 /* 117 E> */ B(New), R(2), R(0), U8(0), | 173 /* 117 E> */ B(New), R(2), R(0), U8(0), |
| 217 B(Star), R(2), | 174 B(Star), R(2), |
| 218 B(Ldar), R(this), | 175 B(Ldar), R(this), |
| 219 B(JumpIfNotHole), U8(4), | 176 B(JumpIfNotHole), U8(4), |
| 220 B(Jump), U8(11), | 177 B(Jump), U8(11), |
| 221 B(LdaConstant), U8(2), | 178 B(LdaConstant), U8(0), |
| 222 B(Star), R(3), | 179 B(Star), R(3), |
| 223 /* 117 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), | 180 /* 117 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), |
| 224 B(Mov), R(2), R(this), | 181 B(Mov), R(2), R(this), |
| 225 /* 126 S> */ B(Ldar), R(this), | 182 /* 126 S> */ B(Ldar), R(this), |
| 226 B(JumpIfNotHole), U8(11), | 183 B(JumpIfNotHole), U8(11), |
| 227 B(LdaConstant), U8(2), | 184 B(LdaConstant), U8(0), |
| 228 B(Star), R(2), | 185 B(Star), R(2), |
| 229 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), | 186 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), |
| 230 B(Star), R(2), | 187 B(Star), R(2), |
| 231 B(LdaSmi), U8(2), | 188 B(LdaSmi), U8(2), |
| 232 /* 134 E> */ B(StaNamedPropertyStrict), R(2), U8(3), U8(4), | 189 /* 134 E> */ B(StaNamedPropertyStrict), R(2), U8(1), U8(4), |
| 233 B(Ldar), R(this), | 190 B(Ldar), R(this), |
| 234 B(JumpIfNotHole), U8(11), | 191 B(JumpIfNotHole), U8(11), |
| 235 B(LdaConstant), U8(2), | 192 B(LdaConstant), U8(0), |
| 236 B(Star), R(2), | 193 B(Star), R(2), |
| 237 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), | 194 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), |
| 238 /* 139 S> */ B(Return), | 195 /* 139 S> */ B(Return), |
| 239 ] | 196 ] |
| 240 constant pool: [ | 197 constant pool: [ |
| 241 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 198 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 242 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 199 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 243 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | |
| 244 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | |
| 245 ] | 200 ] |
| 246 handlers: [ | 201 handlers: [ |
| 247 ] | 202 ] |
| 248 | 203 |
| OLD | NEW |