Ticket #2012: ghc24131_0.s

File ghc24131_0.s, 6.9 KB (added by maeder, 4 years ago)

kept temp file

Line 
1        .section __TEXT,__symbol_stub1,symbol_stubs,pure_instructions,16
2        .machine ppc
3        .text
4        .align 2
5        .long   0
6        .long   1769472
7        .globl _stg_AP_STACK_info
8_stg_AP_STACK_info:
9        .text
10        .align 2
11        jbsr L___DISCARD__$stub,L76
12        lwz r0,8(r14)
13        mr r10,r14
14        mr r9,r22
15        slwi r2,r0,2
16        subf r2,r2,r22
17        addi r28,r2,-8
18        cmplw cr7,r28,r24
19        blt cr7,L58
20        lis r2,ha16(L_stg_upd_frame_info$non_lazy_ptr)
21        cmpwi cr7,r0,0
22        stw r14,-4(r9)
23        mr r22,r28
24        lwz r2,lo16(L_stg_upd_frame_info$non_lazy_ptr)(r2)
25        addi r11,r14,16
26        stw r2,-8(r9)
27        beq cr7,L60
28        mtctr r0
29        li r2,0
30        .p2align 4,,15
31L62:
32L64:
33        lwzx r0,r2,r11
34        stwx r0,r2,r28
35        addi r2,r2,4
36        bdz L60
37        b L62
38L58:
39        lwz r28,-8(r27)
40        jbsr L___DISCARD__$stub,L76
41        .p2align 4,,15
42L63:
43        mtctr r28
44        bctr
45        .p2align 4,,15
46L60:
47        lwz r9,12(r10)
48        andi. r0,r9,3
49        mr r14,r9
50        bne cr0,L65
51        lis r11,0x2
52        li r10,1
53        ori r11,r11,32863
54L66:
55        lwz r31,0(r14)
56        lhz r2,-4(r31)
57        addi r2,r2,-9
58        rlwinm r0,r2,0,0xffff
59        cmplwi cr7,r0,23
60        bgt cr7,L69
61        extsh r0,r2
62        slw r0,r10,r0
63        and. r2,r0,r11
64        bne cr0,L70
65        andis. r2,r0,0xf8
66        beq cr0,L69
67L71:
68L67:
69        lwz r9,4(r9)
70        andi. r0,r9,3
71        mr r14,r9
72        beq cr0,L66
73L65:
74        lwz r28,0(r28)
75        jbsr L___DISCARD__$stub,L76
76        mtctr r28
77        bctr
78        .p2align 4,,15
79L69:
80        jbsr L___DISCARD__$stub,L76
81        mr r28,r31
82        mtctr r28
83        bctr
84L70:
85        lwz r28,0(r28)
86        jbsr L___DISCARD__$stub,L76
87        mtctr r28
88        bctr
89       
90L76:
91        lis r12,hi16(L___DISCARD__$stub)
92        ori r12,r12,lo16(L___DISCARD__$stub)
93        mtctr r12
94        bctr
95        .text
96        .align 2
97        .long   0
98        .long   1638400
99        .globl _stg_AP_info
100_stg_AP_info:
101        .text
102        .align 2
103        jbsr L___DISCARD__$stub,L56
104        lhz r0,10(r14)
105        mr r8,r14
106        mr r9,r22
107        extsh r7,r0
108        slwi r2,r7,2
109        subf r2,r2,r22
110        addi r10,r2,-8
111        cmplw cr7,r10,r24
112        blt cr7,L39
113        lis r2,ha16(L_stg_upd_frame_info$non_lazy_ptr)
114        cmpwi cr7,r0,0
115        stw r14,-4(r9)
116        mr r22,r10
117        lwz r2,lo16(L_stg_upd_frame_info$non_lazy_ptr)(r2)
118        addi r11,r14,16
119        stw r2,-8(r9)
120        beq cr7,L41
121        mtctr r7
122        cmplwi cr7,r7,1
123        li r2,0
124        bge+ cr7,L43
125        li r0,1
126        mtctr r0
127        .p2align 4,,15
128L43:
129L45:
130        lwzx r0,r2,r11
131        stwx r0,r10,r2
132        addi r2,r2,4
133        bdz L41
134        b L43
135L39:
136        lwz r28,-8(r27)
137        jbsr L___DISCARD__$stub,L56
138        .p2align 4,,15
139L44:
140        mtctr r28
141        bctr
142        .p2align 4,,15
143L41:
144        lwz r11,12(r8)
145        rlwinm r2,r11,0,0,29
146        mr r14,r11
147        lwz r2,0(r2)
148        lhz r9,-12(r2)
149        addi r8,r2,-24
150        cmpwi cr7,r9,0
151        extsh r0,r9
152        bne cr7,L46
153L47:
154        lwz r2,-24(r2)
155        add r2,r8,r2
156        addi r28,r2,24
157        jbsr L___DISCARD__$stub,L56
158        mtctr r28
159        bctr
160        .p2align 4,,15
161L46:
162        cmpwi cr7,r9,1
163        bne cr7,L48
164L49:
165        lwz r2,-24(r2)
166        add r2,r8,r2
167        addi r28,r2,24
168        jbsr L___DISCARD__$stub,L56
169        mtctr r28
170        bctr
171        .p2align 4,,15
172L48:
173        cmpwi cr7,r9,2
174        bne cr7,L50
175L51:
176        lis r2,ha16(L_stg_apply_interp_info$non_lazy_ptr)
177        addi r0,r10,-8
178        lis r9,ha16(L_stg_yield_to_interpreter$non_lazy_ptr)
179        lwz r2,lo16(L_stg_apply_interp_info$non_lazy_ptr)(r2)
180        mr r22,r0
181        lwz r9,lo16(L_stg_yield_to_interpreter$non_lazy_ptr)(r9)
182        stw r11,4(r22)
183        stw r2,-8(r10)
184        mr r28,r9
185        jbsr L___DISCARD__$stub,L56
186        mtctr r28
187        bctr
188L50:
189        lis r2,ha16(L_stg_ap_stack_entries$non_lazy_ptr)
190        slwi r0,r0,2
191        lwz r2,lo16(L_stg_ap_stack_entries$non_lazy_ptr)(r2)
192        lwzx r28,r2,r0
193        jbsr L___DISCARD__$stub,L56
194        mtctr r28
195        bctr
196       
197L56:
198        lis r12,hi16(L___DISCARD__$stub)
199        ori r12,r12,lo16(L___DISCARD__$stub)
200        mtctr r12
201        bctr
202        .text
203        .align 2
204        .long   0
205        .long   1703936
206        .globl _stg_PAP_info
207_stg_PAP_info:
208        .text
209        .align 2
210        jbsr L___DISCARD__$stub,L17
211        lis r3,ha16(_c1r_str)
212        la r3,lo16(_c1r_str)(r3)
213        jbsr L_barf$stub,L18
214       
215L18:
216        lis r12,hi16(L_barf$stub)
217        ori r12,r12,lo16(L_barf$stub)
218        mtctr r12
219        bctr
220       
221L17:
222        lis r12,hi16(L___DISCARD__$stub)
223        ori r12,r12,lo16(L___DISCARD__$stub)
224        mtctr r12
225        bctr
226        .const_data
227        .align 2
228        .globl _stg_ap_0_ret_str
229_stg_ap_0_ret_str:
230        .ascii "stg_ap_0_ret... \0"
231        .const_data
232        .align 2
233_c1r_str:
234        .ascii "PAP object entered!\0"
235        .text
236        .align 2
237        .globl _stg_ap_0_fast
238_stg_ap_0_fast:
239        jbsr L___DISCARD__$stub,L14
240        andi. r0,r14,3
241        mr r9,r14
242        bne cr0,L2
243        lis r11,0x2
244        li r10,1
245        ori r11,r11,32863
246L3:
247        lwz r28,0(r14)
248        lhz r2,-4(r28)
249        addi r2,r2,-9
250        rlwinm r0,r2,0,0xffff
251        cmplwi cr7,r0,23
252        bgt cr7,L7
253        extsh r0,r2
254        slw r0,r10,r0
255        and. r2,r0,r11
256        bne cr0,L8
257        andis. r2,r0,0xf8
258        beq cr0,L7
259L9:
260L4:
261        lwz r9,4(r9)
262        andi. r0,r9,3
263        mr r14,r9
264        beq cr0,L3
265        .p2align 4,,15
266L2:
267        lwz r28,0(r22)
268        jbsr L___DISCARD__$stub,L14
269        .p2align 4,,15
270L6:
271        mtctr r28
272        bctr
273        .p2align 4,,15
274L7:
275        jbsr L___DISCARD__$stub,L14
276        mtctr r28
277        bctr
278        .p2align 4,,15
279L8:
280        lwz r28,0(r22)
281        jbsr L___DISCARD__$stub,L14
282        mtctr r28
283        bctr
284       
285L14:
286        lis r12,hi16(L___DISCARD__$stub)
287        ori r12,r12,lo16(L___DISCARD__$stub)
288        mtctr r12
289        bctr
290        .text
291        .align 2
292        .globl _stg_PAP_apply
293_stg_PAP_apply:
294        jbsr L___DISCARD__$stub,L37
295        lhz r10,6(r14)
296        mr r2,r14
297        extsh r9,r10
298        slwi r0,r9,2
299        subf r0,r0,r22
300        cmplw cr7,r0,r24
301        bge cr7,L20
302L21:
303        stw r15,-4(r22)
304        lis r2,ha16(L_stg_gc_unpt_r1$non_lazy_ptr)
305        addi r22,r22,-4
306        lwz r28,lo16(L_stg_gc_unpt_r1$non_lazy_ptr)(r2)
307        jbsr L___DISCARD__$stub,L37
308        .p2align 4,,15
309L22:
310        mtctr r28
311        bctr
312        .p2align 4,,15
313L20:
314        mulli r0,r9,-4
315        cmpwi cr7,r10,0
316        addi r10,r14,12
317        add r11,r22,r0
318        mr r22,r11
319        beq cr7,L23
320        mtctr r9
321        li r9,0
322        mfctr r0
323        cmplwi cr7,r0,1
324        bge+ cr7,L25
325        li r0,1
326        mtctr r0
327        .p2align 4,,15
328L25:
329L26:
330        lwzx r0,r10,r9
331        stwx r0,r9,r11
332        addi r9,r9,4
333        bdnz L25
334L23:
335        lwz r10,8(r2)
336        rlwinm r2,r10,0,0,29
337        mr r14,r10
338        lwz r2,0(r2)
339        lhz r9,-12(r2)
340        addi r8,r2,-24
341        cmpwi cr7,r9,0
342        extsh r0,r9
343        bne cr7,L27
344L28:
345        lwz r2,-24(r2)
346        add r2,r8,r2
347        addi r28,r2,24
348        jbsr L___DISCARD__$stub,L37
349        mtctr r28
350        bctr
351        .p2align 4,,15
352L27:
353        cmpwi cr7,r9,1
354        bne cr7,L29
355L30:
356        lwz r2,-24(r2)
357        add r2,r8,r2
358        addi r28,r2,24
359        jbsr L___DISCARD__$stub,L37
360        mtctr r28
361        bctr
362        .p2align 4,,15
363L29:
364        cmpwi cr7,r9,2
365        bne cr7,L31
366L32:
367        lis r2,ha16(L_stg_apply_interp_info$non_lazy_ptr)
368        addi r0,r11,-8
369        lis r9,ha16(L_stg_yield_to_interpreter$non_lazy_ptr)
370        lwz r2,lo16(L_stg_apply_interp_info$non_lazy_ptr)(r2)
371        mr r22,r0
372        lwz r9,lo16(L_stg_yield_to_interpreter$non_lazy_ptr)(r9)
373        stw r10,4(r22)
374        stw r2,-8(r11)
375        mr r28,r9
376        jbsr L___DISCARD__$stub,L37
377        mtctr r28
378        bctr
379L31:
380        lis r2,ha16(L_stg_ap_stack_entries$non_lazy_ptr)
381        slwi r0,r0,2
382        lwz r2,lo16(L_stg_ap_stack_entries$non_lazy_ptr)(r2)
383        lwzx r28,r2,r0
384        jbsr L___DISCARD__$stub,L37
385        mtctr r28
386        bctr
387       
388L37:
389        lis r12,hi16(L___DISCARD__$stub)
390        ori r12,r12,lo16(L___DISCARD__$stub)
391        mtctr r12
392        bctr
393        .non_lazy_symbol_pointer
394L_stg_upd_frame_info$non_lazy_ptr:
395        .indirect_symbol _stg_upd_frame_info
396        .long   0
397        .non_lazy_symbol_pointer
398L_stg_gc_unpt_r1$non_lazy_ptr:
399        .indirect_symbol _stg_gc_unpt_r1
400        .long   0
401        .non_lazy_symbol_pointer
402L_stg_apply_interp_info$non_lazy_ptr:
403        .indirect_symbol _stg_apply_interp_info
404        .long   0
405        .lazy_symbol_pointer
406        .non_lazy_symbol_pointer
407L_stg_ap_stack_entries$non_lazy_ptr:
408        .indirect_symbol _stg_ap_stack_entries
409        .long   0
410        .section __TEXT,__symbol_stub1,symbol_stubs,pure_instructions,16
411        .align 4
412L_barf$stub:
413        .indirect_symbol _barf
414        lis r11,ha16(L_barf$lazy_ptr)
415        lwzu r12,lo16(L_barf$lazy_ptr)(r11)
416        mtctr r12
417        bctr
418        .lazy_symbol_pointer
419        .lazy_symbol_pointer
420L_barf$lazy_ptr:
421        .indirect_symbol _barf
422        .long   dyld_stub_binding_helper
423        .non_lazy_symbol_pointer
424L_stg_yield_to_interpreter$non_lazy_ptr:
425        .indirect_symbol _stg_yield_to_interpreter
426        .long   0