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