Initial revision
[binutils.git] / gas / testsuite / gas / hppa / reloc / funcrelocbug.s
blob46a43bc62b94c13eaa2b49462913c797c52ec0e9
1 .SPACE $PRIVATE$
2 .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31
3 .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82
4 .SPACE $TEXT$
5 .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44
6 .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY
7 .IMPORT $global$,DATA
8 .IMPORT $$dyncall,MILLICODE
9 ; gcc_compiled.:
10 .SPACE $TEXT$
11 .SUBSPA $CODE$
13 .align 4
14 .EXPORT g,CODE
15 .EXPORT g,ENTRY,PRIV_LEV=3,ARGW0=GR,ARGW1=GR,ARGW2=GR,RTNVAL=GR
17 .PROC
18 .CALLINFO FRAME=128,CALLS,SAVE_RP,SAVE_SP,ENTRY_GR=3
19 .ENTRY
20 stw %r2,-20(%r30)
21 copy %r3,%r1
22 copy %r30,%r3
23 stwm %r1,128(%r30)
24 stw %r26,-36(%r3)
25 stw %r25,-40(%r3)
26 stw %r24,-44(%r3)
27 ldw -36(%r3),%r26
28 ldw -40(%r3),%r25
29 ldw -44(%r3),%r19
30 copy %r19,%r22
31 .CALL ARGW0=GR
32 bl $$dyncall,%r31
33 copy %r31,%r2
34 copy %r28,%r19
35 comiclr,<> 0,%r19,%r0
36 bl,n L$0002,%r0
37 ldw -36(%r3),%r28
38 bl,n L$0001,%r0
39 bl,n L$0003,%r0
40 L$0002
41 ldw -40(%r3),%r28
42 bl,n L$0001,%r0
43 L$0003
44 L$0001
45 ldw -20(%r3),%r2
46 ldo 64(%r3),%r30
47 ldwm -64(%r30),%r3
48 bv,n %r0(%r2)
49 .EXIT
50 .PROCEND
51 .align 4
52 f2___4
53 .PROC
54 .CALLINFO FRAME=64,NO_CALLS,SAVE_SP,ENTRY_GR=3
55 .ENTRY
56 copy %r3,%r1
57 copy %r30,%r3
58 stwm %r1,64(%r30)
59 stw %r29,8(%r3)
60 stw %r26,-36(%r3)
61 stw %r25,-40(%r3)
62 ldw -36(%r3),%r19
63 ldw -40(%r3),%r20
64 comclr,>= %r20,%r19,%r19
65 ldi 1,%r19
66 copy %r19,%r28
67 bl,n L$0005,%r0
68 L$0005
69 ldo 64(%r3),%r30
70 ldwm -64(%r30),%r3
71 bv,n %r0(%r2)
72 .EXIT
73 .PROCEND
74 .IMPORT abort,CODE
75 .SPACE $PRIVATE$
76 .SUBSPA $DATA$
78 .align 4
79 L$TRAMP0000
80 ldw 36(%r22),%r21
81 bb,>=,n %r21,30,.+16
82 depi 0,31,2,%r21
83 ldw 4(%r21),%r19
84 ldw 0(%r21),%r21
85 ldsid (%r21),%r1
86 mtsp %r1,%sr0
87 be 0(%sr0,%r21)
88 ldw 40(%r22),%r29
89 .word 0
90 .word 0
91 .SPACE $TEXT$
92 .SUBSPA $CODE$
94 .align 4
95 .EXPORT f,CODE
96 .EXPORT f,ENTRY,PRIV_LEV=3,RTNVAL=GR
98 .PROC
99 .CALLINFO FRAME=192,CALLS,SAVE_RP,SAVE_SP,ENTRY_GR=3
100 .ENTRY
101 stw %r2,-20(%r30)
102 copy %r3,%r1
103 copy %r30,%r3
104 stwm %r1,192(%r30)
105 ldo 16(%r3),%r19
106 addil L'L$TRAMP0000-$global$,%r27
107 ldo R'L$TRAMP0000-$global$(%r1),%r22
108 ldo 40(%r0),%r20
109 ldws,ma 4(%r22),%r21
110 addib,>= -4,%r20,.-4
111 stws,ma %r21,4(%r19)
112 ldil L'f2___4,%r20
113 ldo R'f2___4(%r20),%r19
114 stw %r19,52(%r3)
115 ldo 8(%r3),%r19
116 stw %r19,56(%r3)
117 ldo 16(%r3),%r19
118 ldo 48(%r3),%r20
119 fdc %r0(%r19)
120 fdc %r0(%r20)
121 sync
122 ldo 32(%r19),%r22
123 mfsp %sr0,%r21
124 ldsid (%r19),%r20
125 mtsp %r20,%sr0
126 fic %r0(%sr0,%r19)
127 fic %r0(%sr0,%r22)
128 sync
129 mtsp %r21,%sr0
136 ldo 16(%r3),%r19
137 ldi 1,%r26
138 ldi 2,%r25
139 copy %r19,%r24
140 .CALL ARGW0=NO,ARGW1=NO,ARGW2=NO,ARGW3=NO
141 bl g,%r2
143 copy %r28,%r19
144 comiclr,<> 2,%r19,%r0
145 bl,n L$0006,%r0
146 .CALL ARGW0=NO,ARGW1=NO,ARGW2=NO,ARGW3=NO
147 bl abort,%r2
149 L$0006
150 L$0004
151 ldw -20(%r3),%r2
152 ldo 64(%r3),%r30
153 ldwm -64(%r30),%r3
154 bv,n %r0(%r2)
155 .EXIT
156 .PROCEND
157 .IMPORT __main,CODE
158 .IMPORT exit,CODE
159 .align 4
160 .EXPORT main,CODE
161 .EXPORT main,ENTRY,PRIV_LEV=3,RTNVAL=GR
162 main
163 .PROC
164 .CALLINFO FRAME=128,CALLS,SAVE_RP,SAVE_SP,ENTRY_GR=3
165 .ENTRY
166 stw %r2,-20(%r30)
167 copy %r3,%r1
168 copy %r30,%r3
169 stwm %r1,128(%r30)
170 .CALL ARGW0=NO,ARGW1=NO,ARGW2=NO,ARGW3=NO
171 bl __main,%r2
173 .CALL ARGW0=NO,ARGW1=NO,ARGW2=NO,ARGW3=NO
174 bl f,%r2
176 copy %r0,%r26
177 .CALL ARGW0=NO,ARGW1=NO,ARGW2=NO,ARGW3=NO
178 bl exit,%r2
180 L$0007
181 ldw -20(%r3),%r2
182 ldo 64(%r3),%r30
183 ldwm -64(%r30),%r3
184 bv,n %r0(%r2)
185 .EXIT
186 .PROCEND