1 | .set r0,0; .set SP,1; .set RTOC,2; .set r3,3; .set r4,4
|
---|
2 | .set r5,5; .set r6,6; .set r7,7; .set r8,8; .set r9,9
|
---|
3 | .set r10,10; .set r11,11; .set r12,12; .set r13,13; .set r14,14
|
---|
4 | .set r15,15; .set r16,16; .set r17,17; .set r18,18; .set r19,19
|
---|
5 | .set r20,20; .set r21,21; .set r22,22; .set r23,23; .set r24,24
|
---|
6 | .set r25,25; .set r26,26; .set r27,27; .set r28,28; .set r29,29
|
---|
7 | .set r30,30; .set r31,31
|
---|
8 | .set fp0,0; .set fp1,1; .set fp2,2; .set fp3,3; .set fp4,4
|
---|
9 | .set fp5,5; .set fp6,6; .set fp7,7; .set fp8,8; .set fp9,9
|
---|
10 | .set fp10,10; .set fp11,11; .set fp12,12; .set fp13,13; .set fp14,14
|
---|
11 | .set fp15,15; .set fp16,16; .set fp17,17; .set fp18,18; .set fp19,19
|
---|
12 | .set fp20,20; .set fp21,21; .set fp22,22; .set fp23,23; .set fp24,24
|
---|
13 | .set fp25,25; .set fp26,26; .set fp27,27; .set fp28,28; .set fp29,29
|
---|
14 | .set fp30,30; .set fp31,31
|
---|
15 | .set v0,0; .set v1,1; .set v2,2; .set v3,3; .set v4,4
|
---|
16 | .set v5,5; .set v6,6; .set v7,7; .set v8,8; .set v9,9
|
---|
17 | .set v10,10; .set v11,11; .set v12,12; .set v13,13; .set v14,14
|
---|
18 | .set v15,15; .set v16,16; .set v17,17; .set v18,18; .set v19,19
|
---|
19 | .set v20,20; .set v21,21; .set v22,22; .set v23,23; .set v24,24
|
---|
20 | .set v25,25; .set v26,26; .set v27,27; .set v28,28; .set v29,29
|
---|
21 | .set v30,30; .set v31,31
|
---|
22 | .set x0,0; .set x1,1; .set x2,2; .set x3,3; .set x4,4
|
---|
23 | .set x5,5; .set x6,6; .set x7,7; .set x8,8; .set x9,9
|
---|
24 | .set x10,10; .set x11,11; .set x12,12; .set x13,13; .set x14,14
|
---|
25 | .set x15,15; .set x16,16; .set x17,17; .set x18,18; .set x19,19
|
---|
26 | .set x20,20; .set x21,21; .set x22,22; .set x23,23; .set x24,24
|
---|
27 | .set x25,25; .set x26,26; .set x27,27; .set x28,28; .set x29,29
|
---|
28 | .set x30,30; .set x31,31; .set x32,32; .set x33,33; .set x34,34
|
---|
29 | .set x35,35; .set x36,36; .set x37,37; .set x38,38; .set x39,39
|
---|
30 | .set x40,40; .set x41,41; .set x42,42; .set x43,43; .set x44,44
|
---|
31 | .set x45,45; .set x46,46; .set x47,47; .set x48,48; .set x49,49
|
---|
32 | .set x50,50; .set x51,51; .set x52,52; .set x53,53; .set x54,54
|
---|
33 | .set x55,55; .set x56,56; .set x57,57; .set x58,58; .set x59,59
|
---|
34 | .set x60,60; .set x61,61; .set x62,62; .set x63,63
|
---|
35 | .set MQ,0; .set XER,1; .set FROM_RTCU,4; .set FROM_RTCL,5; .set FROM_DEC,6
|
---|
36 | .set LR,8; .set CTR,9; .set TID,17; .set DSISR,18; .set DAR,19; .set TO_RTCU,20
|
---|
37 | .set TO_RTCL,21; .set TO_DEC,22; .set SDR_0,24; .set SDR_1,25; .set SRR_0,26
|
---|
38 | .set SRR_1,27
|
---|
39 | .set BO_dCTR_NZERO_AND_NOT,0; .set BO_dCTR_NZERO_AND_NOT_1,1
|
---|
40 | .set BO_dCTR_ZERO_AND_NOT,2; .set BO_dCTR_ZERO_AND_NOT_1,3
|
---|
41 | .set BO_IF_NOT,4; .set BO_IF_NOT_1,5; .set BO_IF_NOT_2,6
|
---|
42 | .set BO_IF_NOT_3,7; .set BO_dCTR_NZERO_AND,8; .set BO_dCTR_NZERO_AND_1,9
|
---|
43 | .set BO_dCTR_ZERO_AND,10; .set BO_dCTR_ZERO_AND_1,11; .set BO_IF,12
|
---|
44 | .set BO_IF_1,13; .set BO_IF_2,14; .set BO_IF_3,15; .set BO_dCTR_NZERO,16
|
---|
45 | .set BO_dCTR_NZERO_1,17; .set BO_dCTR_ZERO,18; .set BO_dCTR_ZERO_1,19
|
---|
46 | .set BO_ALWAYS,20; .set BO_ALWAYS_1,21; .set BO_ALWAYS_2,22
|
---|
47 | .set BO_ALWAYS_3,23; .set BO_dCTR_NZERO_8,24; .set BO_dCTR_NZERO_9,25
|
---|
48 | .set BO_dCTR_ZERO_8,26; .set BO_dCTR_ZERO_9,27; .set BO_ALWAYS_8,28
|
---|
49 | .set BO_ALWAYS_9,29; .set BO_ALWAYS_10,30; .set BO_ALWAYS_11,31
|
---|
50 | .set CR0_LT,0; .set CR0_GT,1; .set CR0_EQ,2; .set CR0_SO,3
|
---|
51 | .set CR1_FX,4; .set CR1_FEX,5; .set CR1_VX,6; .set CR1_OX,7
|
---|
52 | .set CR2_LT,8; .set CR2_GT,9; .set CR2_EQ,10; .set CR2_SO,11
|
---|
53 | .set CR3_LT,12; .set CR3_GT,13; .set CR3_EQ,14; .set CR3_SO,15
|
---|
54 | .set CR4_LT,16; .set CR4_GT,17; .set CR4_EQ,18; .set CR4_SO,19
|
---|
55 | .set CR5_LT,20; .set CR5_GT,21; .set CR5_EQ,22; .set CR5_SO,23
|
---|
56 | .set CR6_LT,24; .set CR6_GT,25; .set CR6_EQ,26; .set CR6_SO,27
|
---|
57 | .set CR7_LT,28; .set CR7_GT,29; .set CR7_EQ,30; .set CR7_SO,31
|
---|
58 | .set TO_LT,16; .set TO_GT,8; .set TO_EQ,4; .set TO_LLT,2; .set TO_LGT,1
|
---|
59 |
|
---|
60 | .rename H.10.NO_SYMBOL{PR},""
|
---|
61 | .rename H.22.cmd_new{TC},"cmd_new"
|
---|
62 | .rename H.26.cmd_free{TC},"cmd_free"
|
---|
63 | .rename H.30.cmd_release_targets_and_shell{TC},"cmd_release_targets_and_shell"
|
---|
64 |
|
---|
65 | .lglobl H.10.NO_SYMBOL{PR}
|
---|
66 | .globl .cmd_new
|
---|
67 | .globl .cmd_free
|
---|
68 | .globl .cmd_release_targets_and_shell
|
---|
69 | .globl cmd_new{DS}
|
---|
70 | .globl cmd_free{DS}
|
---|
71 | .globl cmd_release_targets_and_shell{DS}
|
---|
72 | .extern .profile_memory{PR}
|
---|
73 | .extern .malloc{PR}
|
---|
74 | .extern .lol_init{PR}
|
---|
75 | .extern .lol_add{PR}
|
---|
76 | .extern .string_new{PR}
|
---|
77 | .extern .frame_init{PR}
|
---|
78 | .extern .list_copy{PR}
|
---|
79 | .extern .stack_global{PR}
|
---|
80 | .extern .function_run_actions{PR}
|
---|
81 | .extern .frame_free{PR}
|
---|
82 | .extern .lol_free{PR}
|
---|
83 | .extern .list_free{PR}
|
---|
84 | .extern .string_free{PR}
|
---|
85 | .extern .free{PR}
|
---|
86 |
|
---|
87 |
|
---|
88 | # .text section
|
---|
89 | .file "command.c"
|
---|
90 |
|
---|
91 |
|
---|
92 | .csect H.10.NO_SYMBOL{PR}, 7
|
---|
93 | .cmd_new: # 0x00000000 (H.10.NO_SYMBOL)
|
---|
94 | mfspr r0,LR
|
---|
95 | st r31,-4(SP)
|
---|
96 | st r30,-8(SP)
|
---|
97 | st r29,-12(SP)
|
---|
98 | oril r31,r3,0x0000
|
---|
99 | oril r30,r6,0x0000
|
---|
100 | cal r3,140(r0)
|
---|
101 | st r0,8(SP)
|
---|
102 | stu SP,-192(SP)
|
---|
103 | st r4,172(SP)
|
---|
104 | st r5,176(SP)
|
---|
105 | bl .profile_memory{PR}
|
---|
106 | oril r0,r0,0x0000
|
---|
107 | cal r3,140(r0)
|
---|
108 | bl .malloc{PR}
|
---|
109 | oril r0,r0,0x0000
|
---|
110 | oril r29,r3,0x0000
|
---|
111 | cal r0,0(r0)
|
---|
112 | cal r3,12(r3)
|
---|
113 | st r31,4(r29)
|
---|
114 | st r30,8(r29)
|
---|
115 | st r0,0(r29)
|
---|
116 | st r0,136(r29)
|
---|
117 | bl .lol_init{PR}
|
---|
118 | oril r0,r0,0x0000
|
---|
119 | cal r3,12(r29)
|
---|
120 | l r4,172(SP)
|
---|
121 | bl .lol_add{PR}
|
---|
122 | oril r0,r0,0x0000
|
---|
123 | cal r3,12(r29)
|
---|
124 | l r4,176(SP)
|
---|
125 | bl .lol_add{PR}
|
---|
126 | oril r0,r0,0x0000
|
---|
127 | cal r3,92(r29)
|
---|
128 | bl .string_new{PR}
|
---|
129 | oril r0,r0,0x0000
|
---|
130 | cal r3,64(SP)
|
---|
131 | bl .frame_init{PR}
|
---|
132 | oril r0,r0,0x0000
|
---|
133 | l r0,12(r31)
|
---|
134 | st r0,152(SP)
|
---|
135 | cal r3,72(SP)
|
---|
136 | bl .lol_init{PR}
|
---|
137 | oril r0,r0,0x0000
|
---|
138 | l r3,172(SP)
|
---|
139 | bl .list_copy{PR}
|
---|
140 | oril r0,r0,0x0000
|
---|
141 | oril r4,r3,0x0000
|
---|
142 | cal r3,72(SP)
|
---|
143 | bl .lol_add{PR}
|
---|
144 | oril r0,r0,0x0000
|
---|
145 | l r3,176(SP)
|
---|
146 | bl .list_copy{PR}
|
---|
147 | oril r0,r0,0x0000
|
---|
148 | oril r4,r3,0x0000
|
---|
149 | cal r3,72(SP)
|
---|
150 | bl .lol_add{PR}
|
---|
151 | oril r0,r0,0x0000
|
---|
152 | l r3,8(r31)
|
---|
153 | l r31,4(r3)
|
---|
154 | bl .stack_global{PR}
|
---|
155 | oril r0,r0,0x0000
|
---|
156 | oril r5,r3,0x0000
|
---|
157 | cal r4,64(SP)
|
---|
158 | oril r3,r31,0x0000
|
---|
159 | cal r6,92(r29)
|
---|
160 | bl .function_run_actions{PR}
|
---|
161 | oril r0,r0,0x0000
|
---|
162 | cal r3,64(SP)
|
---|
163 | bl .frame_free{PR}
|
---|
164 | oril r0,r0,0x0000
|
---|
165 | oril r3,r29,0x0000
|
---|
166 | l r12,200(SP)
|
---|
167 | cal SP,192(SP)
|
---|
168 | mtspr LR,r12
|
---|
169 | l r29,-12(SP)
|
---|
170 | l r30,-8(SP)
|
---|
171 | l r31,-4(SP)
|
---|
172 | bcr BO_ALWAYS,CR0_LT
|
---|
173 | .long 0x00000000
|
---|
174 | # traceback table
|
---|
175 | .byte 0x00 # VERSION=0
|
---|
176 | .byte 0x00 # LANG=TB_C
|
---|
177 | .byte 0x20 # IS_GL=0,IS_EPROL=0,HAS_TBOFF=1
|
---|
178 | # INT_PROC=0,HAS_CTL=0,TOCLESS=0
|
---|
179 | # FP_PRESENT=0,LOG_ABORT=0
|
---|
180 | .byte 0x01 # INT_HNDL=0,NAME_PRESENT=0
|
---|
181 | # USES_ALLOCA=0,CL_DIS_INV=WALK_ONCOND
|
---|
182 | # SAVES_CR=0,SAVES_LR=1
|
---|
183 | .byte 0x80 # STORES_BC=1,FPR_SAVED=0
|
---|
184 | .byte 0x03 # GPR_SAVED=3
|
---|
185 | .byte 0x00 # FIXEDPARMS=0
|
---|
186 | .byte 0x00 # FLOATPARMS=0,PARMSONSTK=0
|
---|
187 | .long 0x0000013c # TB_OFFSET
|
---|
188 | # End of traceback table
|
---|
189 | .long 0x00000000 # "\0\0\0\0"
|
---|
190 | .long 0x00000000 # "\0\0\0\0"
|
---|
191 | .long 0x00000000 # "\0\0\0\0"
|
---|
192 | .long 0x00000000 # "\0\0\0\0"
|
---|
193 | .long 0x00000000 # "\0\0\0\0"
|
---|
194 | .cmd_free: # 0x00000160 (H.10.NO_SYMBOL+0x160)
|
---|
195 | mfspr r0,LR
|
---|
196 | st r31,-4(SP)
|
---|
197 | oril r31,r3,0x0000
|
---|
198 | cal r3,12(r3)
|
---|
199 | st r0,8(SP)
|
---|
200 | stu SP,-64(SP)
|
---|
201 | bl .lol_free{PR}
|
---|
202 | oril r0,r0,0x0000
|
---|
203 | l r3,8(r31)
|
---|
204 | bl .list_free{PR}
|
---|
205 | oril r0,r0,0x0000
|
---|
206 | cal r3,92(r31)
|
---|
207 | bl .string_free{PR}
|
---|
208 | oril r0,r0,0x0000
|
---|
209 | oril r3,r31,0x0000
|
---|
210 | bl .free{PR}
|
---|
211 | oril r0,r0,0x0000
|
---|
212 | l r12,72(SP)
|
---|
213 | cal SP,64(SP)
|
---|
214 | mtspr LR,r12
|
---|
215 | l r31,-4(SP)
|
---|
216 | bcr BO_ALWAYS,CR0_LT
|
---|
217 | .long 0x00000000
|
---|
218 | # traceback table
|
---|
219 | .byte 0x00 # VERSION=0
|
---|
220 | .byte 0x00 # LANG=TB_C
|
---|
221 | .byte 0x20 # IS_GL=0,IS_EPROL=0,HAS_TBOFF=1
|
---|
222 | # INT_PROC=0,HAS_CTL=0,TOCLESS=0
|
---|
223 | # FP_PRESENT=0,LOG_ABORT=0
|
---|
224 | .byte 0x01 # INT_HNDL=0,NAME_PRESENT=0
|
---|
225 | # USES_ALLOCA=0,CL_DIS_INV=WALK_ONCOND
|
---|
226 | # SAVES_CR=0,SAVES_LR=1
|
---|
227 | .byte 0x80 # STORES_BC=1,FPR_SAVED=0
|
---|
228 | .byte 0x01 # GPR_SAVED=1
|
---|
229 | .byte 0x00 # FIXEDPARMS=0
|
---|
230 | .byte 0x00 # FLOATPARMS=0,PARMSONSTK=0
|
---|
231 | .long 0x00000058 # TB_OFFSET
|
---|
232 | # End of traceback table
|
---|
233 | .long 0x00000000 # "\0\0\0\0"
|
---|
234 | .long 0x00000000 # "\0\0\0\0"
|
---|
235 | .long 0x00000000 # "\0\0\0\0"
|
---|
236 | .long 0x00000000 # "\0\0\0\0"
|
---|
237 | .long 0x00000000 # "\0\0\0\0"
|
---|
238 | .long 0x00000000 # "\0\0\0\0"
|
---|
239 | .cmd_release_targets_and_shell: # 0x000001e0 (H.10.NO_SYMBOL+0x1e0)
|
---|
240 | cal r0,0(r0)
|
---|
241 | st r0,16(r3)
|
---|
242 | st r0,8(r3)
|
---|
243 | bcr BO_ALWAYS,CR0_LT
|
---|
244 | .long 0x00000000
|
---|
245 | # traceback table
|
---|
246 | .byte 0x00 # VERSION=0
|
---|
247 | .byte 0x00 # LANG=TB_C
|
---|
248 | .byte 0x20 # IS_GL=0,IS_EPROL=0,HAS_TBOFF=1
|
---|
249 | # INT_PROC=0,HAS_CTL=0,TOCLESS=0
|
---|
250 | # FP_PRESENT=0,LOG_ABORT=0
|
---|
251 | .byte 0x00 # INT_HNDL=0,NAME_PRESENT=0
|
---|
252 | # USES_ALLOCA=0,CL_DIS_INV=WALK_ONCOND
|
---|
253 | # SAVES_CR=0,SAVES_LR=0
|
---|
254 | .byte 0x00 # STORES_BC=0,FPR_SAVED=0
|
---|
255 | .byte 0x00 # GPR_SAVED=0
|
---|
256 | .byte 0x00 # FIXEDPARMS=0
|
---|
257 | .byte 0x00 # FLOATPARMS=0,PARMSONSTK=0
|
---|
258 | .long 0x00000010 # TB_OFFSET
|
---|
259 | # End of traceback table
|
---|
260 | # End csect H.10.NO_SYMBOL{PR}
|
---|
261 |
|
---|
262 | # .data section
|
---|
263 |
|
---|
264 |
|
---|
265 | .toc # 0x00000200
|
---|
266 | T.22.cmd_new:
|
---|
267 | .tc H.22.cmd_new{TC},cmd_new{DS}
|
---|
268 | T.26.cmd_free:
|
---|
269 | .tc H.26.cmd_free{TC},cmd_free{DS}
|
---|
270 | T.30.cmd_release_targets_and_shell:
|
---|
271 | .tc H.30.cmd_release_targets_and_shell{TC},cmd_release_targets_and_shell{DS}
|
---|
272 |
|
---|
273 |
|
---|
274 | .csect cmd_new{DS}
|
---|
275 | .long .cmd_new # "\0\0\0\0"
|
---|
276 | .long TOC{TC0} # "\0\0\002\0"
|
---|
277 | .long 0x00000000 # "\0\0\0\0"
|
---|
278 | # End csect cmd_new{DS}
|
---|
279 |
|
---|
280 |
|
---|
281 | .csect cmd_free{DS}
|
---|
282 | .long .cmd_free # "\0\0\001`"
|
---|
283 | .long TOC{TC0} # "\0\0\002\0"
|
---|
284 | .long 0x00000000 # "\0\0\0\0"
|
---|
285 | # End csect cmd_free{DS}
|
---|
286 |
|
---|
287 |
|
---|
288 | .csect cmd_release_targets_and_shell{DS}
|
---|
289 | .long .cmd_release_targets_and_shell# "\0\0\001\340"
|
---|
290 | .long TOC{TC0} # "\0\0\002\0"
|
---|
291 | .long 0x00000000 # "\0\0\0\0"
|
---|
292 | # End csect cmd_release_targets_and_shell{DS}
|
---|
293 |
|
---|
294 |
|
---|
295 |
|
---|
296 | # .bss section
|
---|
297 |
|
---|
298 |
|
---|
299 | # dwarf sections
|
---|
300 |
|
---|
301 | # end dwarf sections
|
---|