1{module, receive_stacked}.  %% version = 0
2
3{exports, [{f1,0},
4           {f2,0},
5           {f3,0},
6           {f4,0},
7           {f5,0},
8           {f6,0},
9           {f7,0},
10           {f8,0},
11           {id,1},
12           {m1,0},
13           {m2,0},
14           {module_info,0},
15           {module_info,1}]}.
16
17{attributes, []}.
18
19{labels, 57}.
20
21
22{function, f1, 0, 2}.
23  {label,1}.
24    {line,[{location,"receive_stacked.erl",15}]}.
25    {func_info,{atom,receive_stacked},{atom,f1},0}.
26  {label,2}.
27    {allocate_zero,1,0}.
28  {label,3}.
29    {loop_rec,{f,5},{x,0}}.
30    {move,{x,0},{y,0}}.
31    {test,is_integer,{f,4},[{y,0}]}.
32    remove_message.
33    {move,{integer,42},{x,0}}.
34    {line,[{location,"receive_stacked.erl",18}]}.
35    {call,1,{f,52}}.
36    {move,{y,0},{x,0}}.
37    {deallocate,1}.
38    return.
39  {label,4}.
40    {loop_rec_end,{f,3}}.
41  {label,5}.
42    {wait,{f,3}}.
43
44
45{function, f2, 0, 7}.
46  {label,6}.
47    {line,[{location,"receive_stacked.erl",22}]}.
48    {func_info,{atom,receive_stacked},{atom,f2},0}.
49  {label,7}.
50    {allocate_zero,2,0}.
51  {label,8}.
52    {loop_rec,{f,10},{x,0}}.
53    {test,is_nonempty_list,{f,9},[{x,0}]}.
54    {get_list,{x,0},{y,1},{x,0}}.
55    {test,is_nil,{f,9},[{x,0}]}.
56    {test_heap,3,0}.
57    remove_message.
58    {put_tuple,2,{y,0}}.
59    {put,{atom,ok}}.
60    {put,{y,1}}.
61    {move,{integer,42},{x,0}}.
62    {line,[{location,"receive_stacked.erl",26}]}.
63    {call,1,{f,52}}.
64    {test_heap,3,0}.
65    {put_tuple,2,{x,0}}.
66    {put,{y,0}}.
67    {put,{y,1}}.
68    {deallocate,2}.
69    return.
70  {label,9}.
71    {loop_rec_end,{f,8}}.
72  {label,10}.
73    {wait,{f,8}}.
74
75
76{function, f3, 0, 12}.
77  {label,11}.
78    {line,[{location,"receive_stacked.erl",30}]}.
79    {func_info,{atom,receive_stacked},{atom,f3},0}.
80  {label,12}.
81    {allocate_zero,2,0}.
82  {label,13}.
83    {loop_rec,{f,15},{x,0}}.
84    {test,is_nonempty_list,{f,14},[{x,0}]}.
85    {get_hd,{x,0},{y,1}}.
86    {test,is_integer,{f,14},[{y,1}]}.
87    {test_heap,3,0}.
88    remove_message.
89    {put_tuple,2,{y,0}}.
90    {put,{atom,ok}}.
91    {put,{y,1}}.
92    {move,{integer,42},{x,0}}.
93    {line,[{location,"receive_stacked.erl",34}]}.
94    {call,1,{f,52}}.
95    {test_heap,3,0}.
96    {put_tuple,2,{x,0}}.
97    {put,{y,0}}.
98    {put,{y,1}}.
99    {deallocate,2}.
100    return.
101  {label,14}.
102    {loop_rec_end,{f,13}}.
103  {label,15}.
104    {wait,{f,13}}.
105
106
107{function, f4, 0, 17}.
108  {label,16}.
109    {line,[{location,"receive_stacked.erl",38}]}.
110    {func_info,{atom,receive_stacked},{atom,f4},0}.
111  {label,17}.
112    {allocate_zero,2,0}.
113  {label,18}.
114    {loop_rec,{f,20},{x,0}}.
115    {test,is_nonempty_list,{f,19},[{x,0}]}.
116    {get_tl,{x,0},{y,1}}.
117    {test,is_list,{f,19},[{y,1}]}.
118    {test_heap,3,0}.
119    remove_message.
120    {put_tuple,2,{y,0}}.
121    {put,{atom,ok}}.
122    {put,{y,1}}.
123    {move,{integer,42},{x,0}}.
124    {line,[{location,"receive_stacked.erl",42}]}.
125    {call,1,{f,52}}.
126    {test_heap,3,0}.
127    {put_tuple,2,{x,0}}.
128    {put,{y,0}}.
129    {put,{y,1}}.
130    {deallocate,2}.
131    return.
132  {label,19}.
133    {loop_rec_end,{f,18}}.
134  {label,20}.
135    {wait,{f,18}}.
136
137
138{function, f5, 0, 22}.
139  {label,21}.
140    {line,[{location,"receive_stacked.erl",46}]}.
141    {func_info,{atom,receive_stacked},{atom,f5},0}.
142  {label,22}.
143    {allocate_zero,2,0}.
144  {label,23}.
145    {loop_rec,{f,25},{x,0}}.
146    {test,is_tuple,{f,24},[{x,0}]}.
147    {test,test_arity,{f,24},[{x,0},1]}.
148    {get_tuple_element,{x,0},0,{y,1}}.
149    {test,is_integer,{f,24},[{y,1}]}.
150    remove_message.
151    {put_map_assoc,{f,0},{literal,#{}},{y,0},0,{list,[{atom,key},{y,1}]}}.
152    {move,{integer,42},{x,0}}.
153    {line,[{location,"receive_stacked.erl",50}]}.
154    {call,1,{f,52}}.
155    {test_heap,3,0}.
156    {put_tuple,2,{x,0}}.
157    {put,{y,0}}.
158    {put,{y,1}}.
159    {deallocate,2}.
160    return.
161  {label,24}.
162    {loop_rec_end,{f,23}}.
163  {label,25}.
164    {wait,{f,23}}.
165
166
167{function, f6, 0, 27}.
168  {label,26}.
169    {line,[{location,"receive_stacked.erl",54}]}.
170    {func_info,{atom,receive_stacked},{atom,f6},0}.
171  {label,27}.
172    {allocate_zero,1,0}.
173  {label,28}.
174    {loop_rec,{f,30},{x,0}}.
175    {test,bs_start_match2,{f,29},1,[{x,0},0],{x,0}}.
176    {test,bs_get_integer2,
177          {f,29},
178          1,
179          [{x,0},
180           {integer,8},
181           1,
182           {field_flags,[{anno,[56,{file,"receive_stacked.erl"}]},
183                         unsigned,big]}],
184          {x,1}}.
185    {test,bs_get_binary2,
186          {f,29},
187          1,
188          [{x,0},
189           {atom,all},
190           8,
191           {field_flags,[{anno,[56,{file,"receive_stacked.erl"}]},
192                         unsigned,big]}],
193          {y,0}}.
194    {'%',
195        {no_bin_opt,
196            {binary_used_in,{gc_bif,byte_size,{f,29},0,[{y,0}],{x,0}}},
197            [56,{file,"receive_stacked.erl"}]}}.
198    {line,[{location,"receive_stacked.erl",56}]}.
199    {gc_bif,byte_size,{f,29},0,[{y,0}],{x,0}}.
200    {test,is_lt,{f,29},[{integer,8},{x,0}]}.
201    remove_message.
202    {move,{integer,42},{x,0}}.
203    {line,[{location,"receive_stacked.erl",57}]}.
204    {call,1,{f,52}}.
205    {move,{y,0},{x,0}}.
206    {deallocate,1}.
207    return.
208  {label,29}.
209    {loop_rec_end,{f,28}}.
210  {label,30}.
211    {wait,{f,28}}.
212
213
214{function, f7, 0, 32}.
215  {label,31}.
216    {line,[{location,"receive_stacked.erl",61}]}.
217    {func_info,{atom,receive_stacked},{atom,f7},0}.
218  {label,32}.
219    {allocate_zero,1,0}.
220  {label,33}.
221    {loop_rec,{f,35},{x,0}}.
222    {test,bs_start_match2,{f,34},1,[{x,0},0],{x,0}}.
223    {test,bs_get_integer2,
224          {f,34},
225          1,
226          [{x,0},
227           {integer,8},
228           1,
229           {field_flags,[{anno,[63,{file,"receive_stacked.erl"}]},
230                         unsigned,big]}],
231          {x,1}}.
232    {test,bs_get_binary2,
233          {f,34},
234          1,
235          [{x,0},
236           {atom,all},
237           8,
238           {field_flags,[{anno,[63,{file,"receive_stacked.erl"}]},
239                         unsigned,big]}],
240          {y,0}}.
241    {'%',{no_bin_opt,{binary_used_in,{test,is_binary,{f,34},[{y,0}]}},
242                     [63,{file,"receive_stacked.erl"}]}}.
243    {test,is_binary,{f,34},[{y,0}]}.
244    remove_message.
245    {move,{integer,42},{x,0}}.
246    {line,[{location,"receive_stacked.erl",64}]}.
247    {call,1,{f,52}}.
248    {move,{y,0},{x,0}}.
249    {deallocate,1}.
250    return.
251  {label,34}.
252    {loop_rec_end,{f,33}}.
253  {label,35}.
254    {wait,{f,33}}.
255
256
257{function, f8, 0, 37}.
258  {label,36}.
259    {line,[{location,"receive_stacked.erl",68}]}.
260    {func_info,{atom,receive_stacked},{atom,f8},0}.
261  {label,37}.
262    {allocate_zero,1,0}.
263  {label,38}.
264    {loop_rec,{f,40},{x,0}}.
265    {test,bs_start_match2,{f,39},1,[{x,0},0],{x,1}}.
266    {test,bs_get_integer2,
267          {f,39},
268          2,
269          [{x,1},
270           {integer,8},
271           1,
272           {field_flags,[{anno,[70,{file,"receive_stacked.erl"}]},
273                         unsigned,big]}],
274          {x,2}}.
275    {test,bs_get_binary2,
276          {f,39},
277          2,
278          [{x,1},
279           {atom,all},
280           8,
281           {field_flags,[{anno,[70,{file,"receive_stacked.erl"}]},
282                         unsigned,big]}],
283          {y,0}}.
284    {'%',{no_bin_opt,{[{x,1},{y,0}],{loop_rec_end,{f,38}},not_handled},
285                     [70,{file,"receive_stacked.erl"}]}}.
286    {test,is_binary,{f,39},[{x,0}]}.
287    remove_message.
288    {move,{integer,42},{x,0}}.
289    {line,[{location,"receive_stacked.erl",71}]}.
290    {call,1,{f,52}}.
291    {move,{y,0},{x,0}}.
292    {deallocate,1}.
293    return.
294  {label,39}.
295    {loop_rec_end,{f,38}}.
296  {label,40}.
297    {wait,{f,38}}.
298
299
300{function, m1, 0, 42}.
301  {label,41}.
302    {line,[{location,"receive_stacked.erl",75}]}.
303    {func_info,{atom,receive_stacked},{atom,m1},0}.
304  {label,42}.
305    {allocate_zero,1,0}.
306  {label,43}.
307    {loop_rec,{f,45},{x,0}}.
308    {test,is_map,{f,44},[{x,0}]}.
309    {get_map_elements,{f,44},{x,0},{list,[{atom,key},{y,0}]}}.
310    {test,is_integer,{f,44},[{y,0}]}.
311    remove_message.
312    {move,{integer,42},{x,0}}.
313    {line,[{location,"receive_stacked.erl",78}]}.
314    {call,1,{f,52}}.
315    {test_heap,2,0}.
316    {put_list,{y,0},nil,{x,0}}.
317    {deallocate,1}.
318    return.
319  {label,44}.
320    {loop_rec_end,{f,43}}.
321  {label,45}.
322    {wait,{f,43}}.
323
324
325{function, m2, 0, 47}.
326  {label,46}.
327    {line,[{location,"receive_stacked.erl",82}]}.
328    {func_info,{atom,receive_stacked},{atom,m2},0}.
329  {label,47}.
330    {allocate_zero,4,0}.
331    {move,{atom,key1},{x,0}}.
332    {line,[{location,"receive_stacked.erl",83}]}.
333    {call,1,{f,52}}.
334    {move,{x,0},{y,3}}.
335    {move,{atom,key2},{x,0}}.
336    {line,[{location,"receive_stacked.erl",84}]}.
337    {call,1,{f,52}}.
338    {move,{x,0},{y,2}}.
339  {label,48}.
340    {loop_rec,{f,50},{x,0}}.
341    {test,is_map,{f,49},[{x,0}]}.
342    {get_map_elements,{f,49},{x,0},{list,[{y,3},{y,1}]}}.
343    {get_map_elements,{f,49},{x,0},{list,[{y,2},{y,0}]}}.
344    {test,is_integer,{f,49},[{y,1}]}.
345    {test,is_integer,{f,49},[{y,0}]}.
346    remove_message.
347    {kill,{y,2}}.
348    {kill,{y,3}}.
349    {move,{integer,42},{x,0}}.
350    {line,[{location,"receive_stacked.erl",87}]}.
351    {call,1,{f,52}}.
352    {test_heap,3,0}.
353    {put_tuple,2,{x,0}}.
354    {put,{y,1}}.
355    {put,{y,0}}.
356    {deallocate,4}.
357    return.
358  {label,49}.
359    {loop_rec_end,{f,48}}.
360  {label,50}.
361    {wait,{f,48}}.
362
363
364{function, id, 1, 52}.
365  {label,51}.
366    {line,[{location,"receive_stacked.erl",91}]}.
367    {func_info,{atom,receive_stacked},{atom,id},1}.
368  {label,52}.
369    return.
370
371
372{function, module_info, 0, 54}.
373  {label,53}.
374    {line,[]}.
375    {func_info,{atom,receive_stacked},{atom,module_info},0}.
376  {label,54}.
377    {move,{atom,receive_stacked},{x,0}}.
378    {line,[]}.
379    {call_ext_only,1,{extfunc,erlang,get_module_info,1}}.
380
381
382{function, module_info, 1, 56}.
383  {label,55}.
384    {line,[]}.
385    {func_info,{atom,receive_stacked},{atom,module_info},1}.
386  {label,56}.
387    {move,{x,0},{x,1}}.
388    {move,{atom,receive_stacked},{x,0}}.
389    {line,[]}.
390    {call_ext_only,2,{extfunc,erlang,get_module_info,2}}.
391