| OLD | NEW |
| 1 # | 1 # |
| 2 # Autogenerated by generate-bytecode-expectations. | 2 # Autogenerated by generate-bytecode-expectations. |
| 3 # | 3 # |
| 4 | 4 |
| 5 --- | 5 --- |
| 6 wrap: no | 6 wrap: no |
| 7 test function name: test | 7 test function name: test |
| 8 | 8 |
| 9 --- | 9 --- |
| 10 snippet: " | 10 snippet: " |
| 11 var test; | 11 var test; |
| 12 (function() { | 12 (function() { |
| 13 class A { | 13 class A { |
| 14 constructor(...args) { this.baseArgs = args; } | 14 constructor(...args) { this.baseArgs = args; } |
| 15 } | 15 } |
| 16 class B extends A {} | 16 class B extends A {} |
| 17 test = new B(1, 2, 3).constructor; | 17 test = new B(1, 2, 3).constructor; |
| 18 })(); | 18 })(); |
| 19 " | 19 " |
| 20 frame size: 9 | 20 frame size: 7 |
| 21 parameter count: 1 | 21 parameter count: 1 |
| 22 bytecode array length: 40 | 22 bytecode array length: 32 |
| 23 bytecodes: [ | 23 bytecodes: [ |
| 24 B(CreateRestParameter), | 24 B(CreateRestParameter), |
| 25 B(Star), R(2), | 25 B(Star), R(2), |
| 26 B(Mov), R(closure), R(1), | 26 B(Mov), R(closure), R(1), |
| 27 B(Mov), R(new_target), R(0), | 27 B(Mov), R(new_target), R(0), |
| 28 B(Ldar), R(new_target), | 28 B(Ldar), R(new_target), |
| 29 /* 93 E> */ B(StackCheck), | 29 /* 93 E> */ B(StackCheck), |
| 30 /* 93 S> */ B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(1), U8(1)
, | 30 /* 93 S> */ B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(1), U8(1)
, |
| 31 B(Star), R(3), | 31 B(Star), R(3), |
| 32 B(CallRuntime), U16(Runtime::kSpreadIterablePrepareVarargs), R(2
), U8(1), | 32 B(Mov), R(3), R(4), |
| 33 B(Star), R(7), | 33 B(Mov), R(0), R(5), |
| 34 B(LdaUndefined), | 34 B(Mov), R(2), R(6), |
| 35 B(Star), R(5), | 35 /* 93 E> */ B(NewWithSpread), R(4), U8(3), |
| 36 B(Mov), R(3), R(6), | |
| 37 B(Mov), R(0), R(8), | |
| 38 /* 93 E> */ B(CallJSRuntime), U8(150), R(5), U8(4), | |
| 39 /* 93 S> */ B(Return), | 36 /* 93 S> */ B(Return), |
| 40 ] | 37 ] |
| 41 constant pool: [ | 38 constant pool: [ |
| 42 ] | 39 ] |
| 43 handlers: [ | 40 handlers: [ |
| 44 ] | 41 ] |
| 45 | 42 |
| 46 --- | 43 --- |
| 47 snippet: " | 44 snippet: " |
| 48 var test; | 45 var test; |
| 49 (function() { | 46 (function() { |
| 50 class A { | 47 class A { |
| 51 constructor(...args) { this.baseArgs = args; } | 48 constructor(...args) { this.baseArgs = args; } |
| 52 } | 49 } |
| 53 class B extends A { | 50 class B extends A { |
| 54 constructor(...args) { super(1, ...args); } | 51 constructor(...args) { super(1, ...args); } |
| 55 } | 52 } |
| 56 test = new B(1, 2, 3).constructor; | 53 test = new B(1, 2, 3).constructor; |
| 57 })(); | 54 })(); |
| 58 " | 55 " |
| 59 frame size: 10 | 56 frame size: 8 |
| 60 parameter count: 1 | 57 parameter count: 1 |
| 61 bytecode array length: 80 | 58 bytecode array length: 69 |
| 62 bytecodes: [ | 59 bytecodes: [ |
| 63 B(CreateRestParameter), | 60 B(CreateRestParameter), |
| 64 B(Star), R(2), | 61 B(Star), R(2), |
| 65 B(Mov), R(closure), R(1), | 62 B(Mov), R(closure), R(1), |
| 66 B(Mov), R(new_target), R(0), | 63 B(Mov), R(new_target), R(0), |
| 67 B(Ldar), R(new_target), | 64 B(Ldar), R(new_target), |
| 68 /* 128 E> */ B(StackCheck), | 65 /* 128 E> */ B(StackCheck), |
| 69 /* 140 S> */ B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(1), U8(1)
, | 66 /* 140 S> */ B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(1), U8(1)
, |
| 70 B(Star), R(3), | 67 B(Star), R(3), |
| 71 B(LdaSmi), U8(1), | 68 B(LdaSmi), U8(1), |
| 72 B(Star), R(4), | |
| 73 B(Mov), R(2), R(5), | |
| 74 /* 152 E> */ B(CallRuntime), U16(Runtime::kSpreadIterablePrepareVarargs), R(4
), U8(2), | |
| 75 B(Star), R(8), | |
| 76 B(LdaUndefined), | |
| 77 B(Star), R(6), | 69 B(Star), R(6), |
| 78 B(Mov), R(3), R(7), | 70 B(Mov), R(3), R(4), |
| 79 B(Mov), R(0), R(9), | 71 B(Mov), R(0), R(5), |
| 80 /* 140 E> */ B(CallJSRuntime), U8(150), R(6), U8(4), | 72 B(Mov), R(2), R(7), |
| 73 /* 152 E> */ B(NewWithSpread), R(4), U8(4), |
| 81 B(Star), R(3), | 74 B(Star), R(3), |
| 82 B(Ldar), R(this), | 75 B(Ldar), R(this), |
| 83 B(JumpIfNotHole), U8(4), | 76 B(JumpIfNotHole), U8(4), |
| 84 B(Jump), U8(11), | 77 B(Jump), U8(11), |
| 85 B(LdaConstant), U8(0), | 78 B(LdaConstant), U8(0), |
| 86 B(Star), R(4), | 79 B(Star), R(4), |
| 87 /* 140 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), | 80 /* 140 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), |
| 88 B(Mov), R(3), R(this), | 81 B(Mov), R(3), R(this), |
| 89 B(Ldar), R(this), | 82 B(Ldar), R(this), |
| 90 B(JumpIfNotHole), U8(11), | 83 B(JumpIfNotHole), U8(11), |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 157 /* 162 S> */ B(Return), | 150 /* 162 S> */ B(Return), |
| 158 ] | 151 ] |
| 159 constant pool: [ | 152 constant pool: [ |
| 160 FIXED_ARRAY_TYPE, | 153 FIXED_ARRAY_TYPE, |
| 161 FIXED_ARRAY_TYPE, | 154 FIXED_ARRAY_TYPE, |
| 162 ONE_BYTE_INTERNALIZED_STRING_TYPE ["this"], | 155 ONE_BYTE_INTERNALIZED_STRING_TYPE ["this"], |
| 163 ] | 156 ] |
| 164 handlers: [ | 157 handlers: [ |
| 165 ] | 158 ] |
| 166 | 159 |
| OLD | NEW |