~ubuntu-branches/debian/squeeze/ffcall/squeeze

« back to all changes in this revision

Viewing changes to vacall/vacall-powerpc-macos.s

  • Committer: Bazaar Package Importer
  • Author(s): Christoph Egger
  • Date: 2010-06-26 15:29:30 UTC
  • mfrom: (5.1.1 experimental)
  • Revision ID: james.westby@ubuntu.com-20100626152930-c09y01gk3szcnykn
Tags: 1.10+cvs20100619-2
Ship to unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
.text
 
2
        .align 2
 
3
        .globl ___vacall
 
4
___vacall:
 
5
        mflr r0
 
6
        stmw r29,-12(r1)
 
7
        bcl 20,31,L1$pb
 
8
L1$pb:
 
9
        stw r0,8(r1)
 
10
        mflr r31
 
11
        stwu r1,-224(r1)
 
12
        addis r29,r31,ha16(L_vacall_function$non_lazy_ptr-L1$pb)
 
13
        li r11,0
 
14
        lwz r29,lo16(L_vacall_function$non_lazy_ptr-L1$pb)(r29)
 
15
        addi r0,r1,248
 
16
        stw r0,68(r1)
 
17
        addi r0,r1,100
 
18
        lwz r29,0(r29)
 
19
        stw r3,248(r1)
 
20
        addi r3,r1,64
 
21
        stw r9,272(r1)
 
22
        mtctr r29
 
23
        stw r5,256(r1)
 
24
        stw r6,260(r1)
 
25
        stw r7,264(r1)
 
26
        stw r8,268(r1)
 
27
        stw r10,276(r1)
 
28
        stw r11,76(r1)
 
29
        stw r0,96(r1)
 
30
        stw r4,252(r1)
 
31
        stfd f1,100(r1)
 
32
        stfd f2,108(r1)
 
33
        stfd f3,116(r1)
 
34
        stfd f4,124(r1)
 
35
        stfd f5,132(r1)
 
36
        stfd f6,140(r1)
 
37
        stfd f7,148(r1)
 
38
        stfd f8,156(r1)
 
39
        stfd f9,164(r1)
 
40
        stfd f10,172(r1)
 
41
        stfd f11,180(r1)
 
42
        stfd f12,188(r1)
 
43
        stfd f13,196(r1)
 
44
        stw r11,64(r1)
 
45
        stw r11,72(r1)
 
46
        bctrl
 
47
        lwz r9,76(r1)
 
48
        cmpwi cr0,r9,0
 
49
        beq- cr0,L1
 
50
        cmpwi cr0,r9,1
 
51
        beq- cr0,L43
 
52
        cmpwi cr0,r9,2
 
53
        beq- cr0,L43
 
54
        cmpwi cr0,r9,3
 
55
        beq- cr0,L44
 
56
        cmpwi cr0,r9,4
 
57
        beq- cr0,L45
 
58
        cmpwi cr0,r9,5
 
59
        beq- cr0,L46
 
60
        cmpwi cr0,r9,6
 
61
        beq- cr0,L42
 
62
        cmpwi cr0,r9,7
 
63
        beq- cr0,L42
 
64
        cmpwi cr0,r9,8
 
65
        beq- cr0,L42
 
66
        cmpwi cr0,r9,9
 
67
        beq- cr0,L42
 
68
        addi r0,r9,-10
 
69
        cmplwi cr0,r0,1
 
70
        bgt- cr0,L22
 
71
        lwz r3,88(r1)
 
72
        lwz r4,92(r1)
 
73
L1:
 
74
        addi r1,r1,224
 
75
        lwz r0,8(r1)
 
76
        lmw r29,-12(r1)
 
77
        mtlr r0
 
78
        blr
 
79
L22:
 
80
        cmpwi cr0,r9,12
 
81
        beq- cr0,L47
 
82
        cmpwi cr0,r9,13
 
83
        beq- cr0,L48
 
84
        cmpwi cr0,r9,14
 
85
        beq- cr0,L42
 
86
        cmpwi cr0,r9,15
 
87
        bne+ cr0,L1
 
88
        lwz r0,64(r1)
 
89
        andi. r9,r0,1
 
90
        beq- cr0,L31
 
91
        lwz r3,72(r1)
 
92
        b L1
 
93
L31:
 
94
        andi. r9,r0,1024
 
95
        beq- cr0,L1
 
96
        lwz r0,80(r1)
 
97
        cmpwi cr0,r0,1
 
98
        beq- cr0,L49
 
99
        cmpwi cr0,r0,2
 
100
        beq- cr0,L50
 
101
        cmpwi cr0,r0,4
 
102
        beq- cr0,L51
 
103
        cmpwi cr0,r0,8
 
104
        bne+ cr0,L1
 
105
        lwz r9,72(r1)
 
106
        lwz r4,4(r9)
 
107
L41:
 
108
        lwz r3,0(r9)
 
109
        b L1
 
110
L51:
 
111
        lwz r9,72(r1)
 
112
        b L41
 
113
L50:
 
114
        lwz r9,72(r1)
 
115
        lhz r3,0(r9)
 
116
        b L1
 
117
L49:
 
118
        lwz r9,72(r1)
 
119
        lbz r3,0(r9)
 
120
        b L1
 
121
L42:
 
122
        lwz r3,88(r1)
 
123
        b L1
 
124
L48:
 
125
        lfd f1,88(r1)
 
126
        b L1
 
127
L47:
 
128
        lfs f1,88(r1)
 
129
        b L1
 
130
L46:
 
131
        lhz r3,88(r1)
 
132
        b L1
 
133
L45:
 
134
        lha r3,88(r1)
 
135
        b L1
 
136
L44:
 
137
        lbz r3,88(r1)
 
138
        b L1
 
139
L43:
 
140
        lbz r0,88(r1)
 
141
        extsb r3,r0
 
142
        b L1
 
143
.data
 
144
.non_lazy_symbol_pointer
 
145
L_vacall_function$non_lazy_ptr:
 
146
        .indirect_symbol _vacall_function
 
147
        .long   0