1 # 2 # Autogenerated by generate-bytecode-expectations. 3 # 4 5 --- 6 pool type: string 7 execute: yes 8 wrap: yes 9 10 --- 11 snippet: " 12 var a = 1; 13 try { a = 2; } finally { a = 3; } 14 " 15 frame size: 4 16 parameter count: 1 17 bytecode array length: 51 18 bytecodes: [ 19 /* 30 E> */ B(StackCheck), 20 /* 42 S> */ B(LdaSmi), U8(1), 21 B(Star), R(0), 22 B(Mov), R(context), R(3), 23 /* 51 S> */ B(LdaSmi), U8(2), 24 B(Star), R(0), 25 B(LdaSmi), U8(-1), 26 B(Star), R(1), 27 B(Jump), U8(7), 28 B(Star), R(2), 29 B(LdaZero), 30 B(Star), R(1), 31 /* 53 E> */ B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R(0), U8(0), 32 B(Star), R(3), 33 /* 70 S> */ B(LdaSmi), U8(3), 34 B(Star), R(0), 35 /* 72 E> */ B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(3), U8(1), 36 B(LdaZero), 37 B(TestEqualStrict), R(1), 38 B(JumpIfTrue), U8(4), 39 B(Jump), U8(5), 40 B(Ldar), R(2), 41 B(ReThrow), 42 B(LdaUndefined), 43 /* 79 S> */ B(Return), 44 ] 45 constant pool: [ 46 ] 47 handlers: [ 48 [8, 12, 18], 49 ] 50 51 --- 52 snippet: " 53 var a = 1; 54 try { a = 2; } catch(e) { a = 20 } finally { a = 3; } 55 " 56 frame size: 9 57 parameter count: 1 58 bytecode array length: 87 59 bytecodes: [ 60 /* 30 E> */ B(StackCheck), 61 /* 42 S> */ B(LdaSmi), U8(1), 62 B(Star), R(0), 63 B(Mov), R(context), R(4), 64 B(Mov), R(context), R(5), 65 /* 51 S> */ B(LdaSmi), U8(2), 66 B(Star), R(0), 67 B(Jump), U8(33), 68 B(Star), R(7), 69 B(LdaConstant), U8(0), 70 B(Star), R(6), 71 B(Mov), R(closure), R(8), 72 /* 53 E> */ B(CallRuntime), U16(Runtime::kPushCatchContext), R(6), U8(3), 73 B(Star), R(5), 74 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R(0), U8(0), 75 B(Ldar), R(5), 76 B(PushContext), R(1), 77 /* 71 S> */ B(LdaSmi), U8(20), 78 B(Star), R(0), 79 B(PopContext), R(1), 80 B(LdaSmi), U8(-1), 81 B(Star), R(2), 82 B(Jump), U8(7), 83 B(Star), R(3), 84 B(LdaZero), 85 B(Star), R(2), 86 /* 73 E> */ B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R(0), U8(0), 87 B(Star), R(4), 88 /* 90 S> */ B(LdaSmi), U8(3), 89 B(Star), R(0), 90 /* 92 E> */ B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(4), U8(1), 91 B(LdaZero), 92 B(TestEqualStrict), R(2), 93 B(JumpIfTrue), U8(4), 94 B(Jump), U8(5), 95 B(Ldar), R(3), 96 B(ReThrow), 97 B(LdaUndefined), 98 /* 99 S> */ B(Return), 99 ] 100 constant pool: [ 101 "e", 102 ] 103 handlers: [ 104 [8, 48, 54], 105 [11, 15, 17], 106 ] 107 108 --- 109 snippet: " 110 var a; try { 111 try { a = 1 } catch(e) { a = 2 } 112 } catch(e) { a = 20 } finally { a = 3; } 113 " 114 frame size: 10 115 parameter count: 1 116 bytecode array length: 119 117 bytecodes: [ 118 /* 30 E> */ B(StackCheck), 119 B(Mov), R(context), R(4), 120 B(Mov), R(context), R(5), 121 B(Mov), R(context), R(6), 122 /* 55 S> */ B(LdaSmi), U8(1), 123 B(Star), R(0), 124 B(Jump), U8(33), 125 B(Star), R(8), 126 B(LdaConstant), U8(0), 127 B(Star), R(7), 128 B(Mov), R(closure), R(9), 129 /* 57 E> */ B(CallRuntime), U16(Runtime::kPushCatchContext), R(7), U8(3), 130 B(Star), R(6), 131 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R(0), U8(0), 132 B(Ldar), R(6), 133 B(PushContext), R(1), 134 /* 74 S> */ B(LdaSmi), U8(2), 135 B(Star), R(0), 136 B(PopContext), R(1), 137 B(Jump), U8(33), 138 B(Star), R(7), 139 B(LdaConstant), U8(0), 140 B(Star), R(6), 141 B(Mov), R(closure), R(8), 142 /* 76 E> */ B(CallRuntime), U16(Runtime::kPushCatchContext), R(6), U8(3), 143 B(Star), R(5), 144 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R(0), U8(0), 145 B(Ldar), R(5), 146 B(PushContext), R(1), 147 /* 95 S> */ B(LdaSmi), U8(20), 148 B(Star), R(0), 149 B(PopContext), R(1), 150 B(LdaSmi), U8(-1), 151 B(Star), R(2), 152 B(Jump), U8(7), 153 B(Star), R(3), 154 B(LdaZero), 155 B(Star), R(2), 156 /* 97 E> */ B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R(0), U8(0), 157 B(Star), R(4), 158 /* 114 S> */ B(LdaSmi), U8(3), 159 B(Star), R(0), 160 /* 116 E> */ B(CallRuntime), U16(Runtime::kInterpreterSetPendingMessage), R(4), U8(1), 161 B(LdaZero), 162 B(TestEqualStrict), R(2), 163 B(JumpIfTrue), U8(4), 164 B(Jump), U8(5), 165 B(Ldar), R(3), 166 B(ReThrow), 167 B(LdaUndefined), 168 /* 123 S> */ B(Return), 169 ] 170 constant pool: [ 171 "e", 172 ] 173 handlers: [ 174 [4, 80, 86], 175 [7, 47, 49], 176 [10, 14, 16], 177 ] 178 179