OLD | NEW |
(Empty) | |
| 1 # |
| 2 # Autogenerated by generate-bytecode-expectations |
| 3 # |
| 4 |
| 5 --- |
| 6 pool type: mixed |
| 7 execute: yes |
| 8 wrap: yes |
| 9 |
| 10 --- |
| 11 snippet: " |
| 12 var x = 0; |
| 13 label: { |
| 14 x = x + 1; |
| 15 break label; |
| 16 x = x + 1; |
| 17 } |
| 18 return x; |
| 19 " |
| 20 frame size: 2 |
| 21 parameter count: 1 |
| 22 bytecode array length: 17 |
| 23 bytecodes: [ |
| 24 B(StackCheck), |
| 25 B(LdaZero), |
| 26 B(Star), R(0), |
| 27 B(Star), R(1), |
| 28 B(LdaSmi8), U8(1), |
| 29 B(Add), R(1), |
| 30 B(Star), R(0), |
| 31 B(Jump), U8(2), |
| 32 B(Ldar), R(0), |
| 33 B(Return), |
| 34 ] |
| 35 constant pool: [ |
| 36 ] |
| 37 handlers: [ |
| 38 ] |
| 39 |
| 40 --- |
| 41 snippet: " |
| 42 var sum = 0; |
| 43 outer: { |
| 44 for (var x = 0; x < 10; ++x) { |
| 45 for (var y = 0; y < 3; ++y) { |
| 46 ++sum; |
| 47 if (x + y == 12) { break outer; } |
| 48 } |
| 49 } |
| 50 } |
| 51 return sum; |
| 52 " |
| 53 frame size: 5 |
| 54 parameter count: 1 |
| 55 bytecode array length: 75 |
| 56 bytecodes: [ |
| 57 B(StackCheck), |
| 58 B(LdaZero), |
| 59 B(Star), R(0), |
| 60 B(LdaZero), |
| 61 B(Star), R(1), |
| 62 B(Ldar), R(1), |
| 63 B(Star), R(3), |
| 64 B(LdaSmi8), U8(10), |
| 65 B(TestLessThan), R(3), |
| 66 B(JumpIfFalse), U8(57), |
| 67 B(StackCheck), |
| 68 B(LdaZero), |
| 69 B(Star), R(2), |
| 70 B(Ldar), R(2), |
| 71 B(Star), R(3), |
| 72 B(LdaSmi8), U8(3), |
| 73 B(TestLessThan), R(3), |
| 74 B(JumpIfFalse), U8(35), |
| 75 B(StackCheck), |
| 76 B(Ldar), R(0), |
| 77 B(ToNumber), |
| 78 B(Inc), |
| 79 B(Star), R(0), |
| 80 B(Ldar), R(1), |
| 81 B(Star), R(3), |
| 82 B(Ldar), R(2), |
| 83 B(Add), R(3), |
| 84 B(Star), R(4), |
| 85 B(LdaSmi8), U8(12), |
| 86 B(TestEqual), R(4), |
| 87 B(JumpIfFalse), U8(4), |
| 88 B(Jump), U8(18), |
| 89 B(Ldar), R(2), |
| 90 B(ToNumber), |
| 91 B(Inc), |
| 92 B(Star), R(2), |
| 93 B(Jump), U8(-41), |
| 94 B(Ldar), R(1), |
| 95 B(ToNumber), |
| 96 B(Inc), |
| 97 B(Star), R(1), |
| 98 B(Jump), U8(-63), |
| 99 B(Ldar), R(0), |
| 100 B(Return), |
| 101 ] |
| 102 constant pool: [ |
| 103 ] |
| 104 handlers: [ |
| 105 ] |
| 106 |
| 107 --- |
| 108 snippet: " |
| 109 outer: { |
| 110 let y = 10; |
| 111 function f() { return y; } |
| 112 break outer; |
| 113 } |
| 114 " |
| 115 frame size: 5 |
| 116 parameter count: 1 |
| 117 bytecode array length: 51 |
| 118 bytecodes: [ |
| 119 B(StackCheck), |
| 120 B(LdaConstant), U8(0), |
| 121 B(Star), R(3), |
| 122 B(Ldar), R(closure), |
| 123 B(Star), R(4), |
| 124 B(CallRuntime), U16(Runtime::kPushBlockContext), R(3), U8(2), |
| 125 B(PushContext), R(2), |
| 126 B(LdaTheHole), |
| 127 B(StaContextSlot), R(context), U8(4), |
| 128 B(CreateClosure), U8(1), U8(0), |
| 129 B(Star), R(0), |
| 130 B(LdaSmi8), U8(10), |
| 131 B(StaContextSlot), R(context), U8(4), |
| 132 B(Ldar), R(0), |
| 133 B(JumpIfNotHole), U8(11), |
| 134 B(LdaConstant), U8(2), |
| 135 B(Star), R(3), |
| 136 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), |
| 137 B(Star), R(1), |
| 138 B(Jump), U8(2), |
| 139 B(PopContext), R(2), |
| 140 B(LdaUndefined), |
| 141 B(Return), |
| 142 ] |
| 143 constant pool: [ |
| 144 InstanceType::FIXED_ARRAY_TYPE, |
| 145 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
| 146 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 147 ] |
| 148 handlers: [ |
| 149 ] |
| 150 |
| 151 --- |
| 152 snippet: " |
| 153 let x = 1; |
| 154 outer: { |
| 155 inner: { |
| 156 let y = 2; |
| 157 function f() { return x + y; } |
| 158 if (y) break outer; |
| 159 y = 3; |
| 160 } |
| 161 } |
| 162 x = 4; |
| 163 " |
| 164 frame size: 6 |
| 165 parameter count: 1 |
| 166 bytecode array length: 131 |
| 167 bytecodes: [ |
| 168 B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U8(1), |
| 169 B(PushContext), R(2), |
| 170 B(LdaTheHole), |
| 171 B(StaContextSlot), R(context), U8(4), |
| 172 B(StackCheck), |
| 173 B(LdaSmi8), U8(1), |
| 174 B(StaContextSlot), R(context), U8(4), |
| 175 B(LdaConstant), U8(0), |
| 176 B(Star), R(4), |
| 177 B(Ldar), R(closure), |
| 178 B(Star), R(5), |
| 179 B(CallRuntime), U16(Runtime::kPushBlockContext), R(4), U8(2), |
| 180 B(PushContext), R(3), |
| 181 B(LdaTheHole), |
| 182 B(StaContextSlot), R(context), U8(4), |
| 183 B(CreateClosure), U8(1), U8(0), |
| 184 B(Star), R(0), |
| 185 B(LdaSmi8), U8(2), |
| 186 B(StaContextSlot), R(context), U8(4), |
| 187 B(Ldar), R(0), |
| 188 B(JumpIfNotHole), U8(11), |
| 189 B(LdaConstant), U8(2), |
| 190 B(Star), R(4), |
| 191 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), |
| 192 B(Star), R(1), |
| 193 B(LdaContextSlot), R(context), U8(4), |
| 194 B(JumpIfNotHole), U8(11), |
| 195 B(LdaConstant), U8(3), |
| 196 B(Star), R(4), |
| 197 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), |
| 198 B(JumpIfToBooleanFalse), U8(6), |
| 199 B(PopContext), R(3), |
| 200 B(Jump), U8(27), |
| 201 B(LdaSmi8), U8(3), |
| 202 B(Star), R(4), |
| 203 B(LdaContextSlot), R(context), U8(4), |
| 204 B(JumpIfNotHole), U8(11), |
| 205 B(LdaConstant), U8(3), |
| 206 B(Star), R(5), |
| 207 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1), |
| 208 B(Ldar), R(4), |
| 209 B(StaContextSlot), R(context), U8(4), |
| 210 B(PopContext), R(3), |
| 211 B(LdaSmi8), U8(4), |
| 212 B(Star), R(4), |
| 213 B(LdaContextSlot), R(context), U8(4), |
| 214 B(JumpIfNotHole), U8(11), |
| 215 B(LdaConstant), U8(4), |
| 216 B(Star), R(5), |
| 217 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1), |
| 218 B(Ldar), R(4), |
| 219 B(StaContextSlot), R(context), U8(4), |
| 220 B(LdaUndefined), |
| 221 B(Return), |
| 222 ] |
| 223 constant pool: [ |
| 224 InstanceType::FIXED_ARRAY_TYPE, |
| 225 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
| 226 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 227 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 228 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
| 229 ] |
| 230 handlers: [ |
| 231 ] |
| 232 |
OLD | NEW |