2182 lines
80 KiB
Plaintext
2182 lines
80 KiB
Plaintext
ARM GAS /tmp/cckj2aNq.s page 1
|
||
|
||
|
||
1 .cpu cortex-m4
|
||
2 .eabi_attribute 27, 1
|
||
3 .eabi_attribute 28, 1
|
||
4 .eabi_attribute 20, 1
|
||
5 .eabi_attribute 21, 1
|
||
6 .eabi_attribute 23, 3
|
||
7 .eabi_attribute 24, 1
|
||
8 .eabi_attribute 25, 1
|
||
9 .eabi_attribute 26, 1
|
||
10 .eabi_attribute 30, 2
|
||
11 .eabi_attribute 34, 1
|
||
12 .eabi_attribute 18, 4
|
||
13 .file "SupportFunctions.c"
|
||
14 .text
|
||
15 .section .text.arm_heapify,"ax",%progbits
|
||
16 .align 1
|
||
17 .p2align 2,,3
|
||
18 .arch armv7e-m
|
||
19 .syntax unified
|
||
20 .thumb
|
||
21 .thumb_func
|
||
22 .fpu fpv4-sp-d16
|
||
24 arm_heapify:
|
||
25 @ args = 0, pretend = 0, frame = 0
|
||
26 @ frame_needed = 0, uses_anonymous_args = 0
|
||
27 0000 F0B5 push {r4, r5, r6, r7, lr}
|
||
28 0002 20E0 b .L5
|
||
29 .L2:
|
||
30 0004 8E45 cmp lr, r1
|
||
31 0006 3FD2 bcs .L1
|
||
32 0008 9446 mov ip, r2
|
||
33 000a 9600 lsls r6, r2, #2
|
||
34 .L6:
|
||
35 000c 8419 adds r4, r0, r6
|
||
36 000e 00EBC505 add r5, r0, r5, lsl #3
|
||
37 0012 D4ED007A vldr.32 s15, [r4]
|
||
38 0016 95ED007A vldr.32 s14, [r5]
|
||
39 001a B4EEE77A vcmpe.f32 s14, s15
|
||
40 001e F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
41 0022 CCBF ite gt
|
||
42 0024 0126 movgt r6, #1
|
||
43 0026 0026 movle r6, #0
|
||
44 0028 9E42 cmp r6, r3
|
||
45 002a 03D1 bne .L3
|
||
46 002c F0EE477A vmov.f32 s15, s14
|
||
47 0030 2C46 mov r4, r5
|
||
48 0032 F446 mov ip, lr
|
||
49 .L3:
|
||
50 0034 9445 cmp ip, r2
|
||
51 0036 00EB8205 add r5, r0, r2, lsl #2
|
||
52 003a 25D0 beq .L1
|
||
53 003c 2E68 ldr r6, [r5] @ float
|
||
54 003e C5ED007A vstr.32 s15, [r5]
|
||
55 0042 6246 mov r2, ip
|
||
56 0044 2660 str r6, [r4] @ float
|
||
57 .L5:
|
||
58 0046 4FEA420E lsl lr, r2, #1
|
||
ARM GAS /tmp/cckj2aNq.s page 2
|
||
|
||
|
||
59 004a 0EF1010C add ip, lr, #1
|
||
60 004e 8C45 cmp ip, r1
|
||
61 0050 00EB8207 add r7, r0, r2, lsl #2
|
||
62 0054 00EB8C04 add r4, r0, ip, lsl #2
|
||
63 0058 0EF1020E add lr, lr, #2
|
||
64 005c 02F10105 add r5, r2, #1
|
||
65 0060 D0D2 bcs .L2
|
||
66 0062 97ED007A vldr.32 s14, [r7]
|
||
67 0066 D4ED007A vldr.32 s15, [r4]
|
||
68 006a F4EEC77A vcmpe.f32 s15, s14
|
||
69 006e F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
70 0072 CCBF ite gt
|
||
71 0074 0127 movgt r7, #1
|
||
72 0076 0027 movle r7, #0
|
||
73 0078 9F42 cmp r7, r3
|
||
74 007a C3D1 bne .L2
|
||
75 007c 8E45 cmp lr, r1
|
||
76 007e 38BF it cc
|
||
77 0080 4FEA8C06 lslcc r6, ip, #2
|
||
78 0084 D6D2 bcs .L3
|
||
79 0086 C1E7 b .L6
|
||
80 .L1:
|
||
81 0088 F0BD pop {r4, r5, r6, r7, pc}
|
||
83 008a 00BF .section .text.arm_merge_sort_core_f32,"ax",%progbits
|
||
84 .align 1
|
||
85 .p2align 2,,3
|
||
86 .syntax unified
|
||
87 .thumb
|
||
88 .thumb_func
|
||
89 .fpu fpv4-sp-d16
|
||
91 arm_merge_sort_core_f32:
|
||
92 @ args = 4, pretend = 0, frame = 0
|
||
93 @ frame_needed = 0, uses_anonymous_args = 0
|
||
94 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr}
|
||
95 0004 1E46 mov r6, r3
|
||
96 0006 83B0 sub sp, sp, #12
|
||
97 0008 531A subs r3, r2, r1
|
||
98 000a 012B cmp r3, #1
|
||
99 000c 9DF82890 ldrb r9, [sp, #40] @ zero_extendqisi2
|
||
100 0010 02DC bgt .L26
|
||
101 .L10:
|
||
102 0012 03B0 add sp, sp, #12
|
||
103 @ sp needed
|
||
104 0014 BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc}
|
||
105 .L26:
|
||
106 0018 02EB0108 add r8, r2, r1
|
||
107 001c 4FEA5808 lsr r8, r8, #1
|
||
108 0020 1746 mov r7, r2
|
||
109 0022 0346 mov r3, r0
|
||
110 0024 0446 mov r4, r0
|
||
111 0026 4246 mov r2, r8
|
||
112 0028 3046 mov r0, r6
|
||
113 002a CDF80090 str r9, [sp]
|
||
114 002e 0D46 mov r5, r1
|
||
115 0030 FFF7E6FF bl arm_merge_sort_core_f32
|
||
116 0034 CDF80090 str r9, [sp]
|
||
117 0038 2346 mov r3, r4
|
||
ARM GAS /tmp/cckj2aNq.s page 3
|
||
|
||
|
||
118 003a 3A46 mov r2, r7
|
||
119 003c 4146 mov r1, r8
|
||
120 003e 3046 mov r0, r6
|
||
121 0040 FFF7DEFF bl arm_merge_sort_core_f32
|
||
122 0044 AF42 cmp r7, r5
|
||
123 0046 E4D9 bls .L10
|
||
124 0048 A845 cmp r8, r5
|
||
125 004a 06EB8502 add r2, r6, r5, lsl #2
|
||
126 004e AC46 mov ip, r5
|
||
127 0050 4346 mov r3, r8
|
||
128 0052 14D9 bls .L13
|
||
129 .L27:
|
||
130 0054 04EB8500 add r0, r4, r5, lsl #2
|
||
131 0058 9F42 cmp r7, r3
|
||
132 005a 04EB8301 add r1, r4, r3, lsl #2
|
||
133 005e 8646 mov lr, r0
|
||
134 0060 24D8 bhi .L14
|
||
135 0062 D0ED007A vldr.32 s15, [r0]
|
||
136 .L15:
|
||
137 0066 C2ED007A vstr.32 s15, [r2]
|
||
138 006a 0CF1010C add ip, ip, #1
|
||
139 006e 6745 cmp r7, ip
|
||
140 0070 05F10105 add r5, r5, #1
|
||
141 0074 CDD0 beq .L10
|
||
142 .L23:
|
||
143 0076 A845 cmp r8, r5
|
||
144 0078 02F10402 add r2, r2, #4
|
||
145 007c EAD8 bhi .L27
|
||
146 .L13:
|
||
147 007e 04EB8301 add r1, r4, r3, lsl #2
|
||
148 0082 0133 adds r3, r3, #1
|
||
149 0084 0868 ldr r0, [r1] @ float
|
||
150 0086 1060 str r0, [r2] @ float
|
||
151 0088 0CF10101 add r1, ip, #1
|
||
152 008c 8F42 cmp r7, r1
|
||
153 008e C0D0 beq .L10
|
||
154 0090 04EB8304 add r4, r4, r3, lsl #2
|
||
155 0094 06EB8103 add r3, r6, r1, lsl #2
|
||
156 .L21:
|
||
157 0098 0131 adds r1, r1, #1
|
||
158 009a 54F8042B ldr r2, [r4], #4 @ float
|
||
159 009e 43F8042B str r2, [r3], #4 @ float
|
||
160 00a2 8F42 cmp r7, r1
|
||
161 00a4 F8D8 bhi .L21
|
||
162 00a6 03B0 add sp, sp, #12
|
||
163 @ sp needed
|
||
164 00a8 BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc}
|
||
165 .L14:
|
||
166 00ac 91ED007A vldr.32 s14, [r1]
|
||
167 00b0 D0ED007A vldr.32 s15, [r0]
|
||
168 00b4 F4EEC77A vcmpe.f32 s15, s14
|
||
169 00b8 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
170 00bc 94BF ite ls
|
||
171 00be 0121 movls r1, #1
|
||
172 00c0 0021 movhi r1, #0
|
||
173 00c2 4945 cmp r1, r9
|
||
174 00c4 CFD0 beq .L15
|
||
ARM GAS /tmp/cckj2aNq.s page 4
|
||
|
||
|
||
175 00c6 0CF1010C add ip, ip, #1
|
||
176 00ca 6745 cmp r7, ip
|
||
177 00cc 82ED007A vstr.32 s14, [r2]
|
||
178 00d0 03F10103 add r3, r3, #1
|
||
179 00d4 CFD1 bne .L23
|
||
180 00d6 9CE7 b .L10
|
||
182 .section .text.arm_quick_sort_core_f32,"ax",%progbits
|
||
183 .align 1
|
||
184 .p2align 2,,3
|
||
185 .syntax unified
|
||
186 .thumb
|
||
187 .thumb_func
|
||
188 .fpu fpv4-sp-d16
|
||
190 arm_quick_sort_core_f32:
|
||
191 @ args = 0, pretend = 0, frame = 8
|
||
192 @ frame_needed = 0, uses_anonymous_args = 0
|
||
193 0000 8A42 cmp r2, r1
|
||
194 0002 78DD ble .L55
|
||
195 0004 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr}
|
||
196 0008 571C adds r7, r2, #1
|
||
197 000a 0646 mov r6, r0
|
||
198 000c 01F1FF39 add r9, r1, #-1
|
||
199 0010 1546 mov r5, r2
|
||
200 0012 02F10208 add r8, r2, #2
|
||
201 0016 B945 cmp r9, r7
|
||
202 0018 06EB8102 add r2, r6, r1, lsl #2
|
||
203 001c D2ED006A vldr.32 s13, [r2]
|
||
204 0020 83B0 sub sp, sp, #12
|
||
205 0022 38DA bge .L30
|
||
206 .L61:
|
||
207 0024 F0EE667A vmov.f32 s15, s13
|
||
208 0028 3A46 mov r2, r7
|
||
209 002a 8C46 mov ip, r1
|
||
210 .L43:
|
||
211 002c 09F10200 add r0, r9, #2
|
||
212 0030 06EB8000 add r0, r6, r0, lsl #2
|
||
213 0034 33B9 cbnz r3, .L35
|
||
214 0036 37E0 b .L32
|
||
215 .L58:
|
||
216 0038 6545 cmp r5, ip
|
||
217 003a 09DD ble .L33
|
||
218 003c F0EC017A vldmia.32 r0!, {s15}
|
||
219 0040 0CF1010C add ip, ip, #1
|
||
220 .L35:
|
||
221 0044 F4EEE76A vcmpe.f32 s13, s15
|
||
222 0048 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
223 004c E146 mov r9, ip
|
||
224 004e F3DC bgt .L58
|
||
225 .L33:
|
||
226 0050 06EB8200 add r0, r6, r2, lsl #2
|
||
227 .L36:
|
||
228 0054 10ED017A vldr.32 s14, [r0, #-4]
|
||
229 0058 F4EEC76A vcmpe.f32 s13, s14
|
||
230 005c A0F1040E sub lr, r0, #4
|
||
231 0060 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
232 0064 1446 mov r4, r2
|
||
233 0066 7046 mov r0, lr
|
||
ARM GAS /tmp/cckj2aNq.s page 5
|
||
|
||
|
||
234 0068 02F1FF32 add r2, r2, #-1
|
||
235 006c F2D4 bmi .L36
|
||
236 006e 9445 cmp ip, r2
|
||
237 0070 06EB8C00 add r0, r6, ip, lsl #2
|
||
238 0074 31DB blt .L59
|
||
239 .L42:
|
||
240 0076 3046 mov r0, r6
|
||
241 0078 0193 str r3, [sp, #4]
|
||
242 007a FFF7C1FF bl arm_quick_sort_core_f32
|
||
243 007e A542 cmp r5, r4
|
||
244 0080 019B ldr r3, [sp, #4]
|
||
245 0082 35DD ble .L60
|
||
246 0084 2146 mov r1, r4
|
||
247 0086 01F1FF39 add r9, r1, #-1
|
||
248 008a 06EB8102 add r2, r6, r1, lsl #2
|
||
249 008e B945 cmp r9, r7
|
||
250 0090 D2ED006A vldr.32 s13, [r2]
|
||
251 0094 C6DB blt .L61
|
||
252 .L30:
|
||
253 0096 4446 mov r4, r8
|
||
254 0098 3A46 mov r2, r7
|
||
255 009a ECE7 b .L42
|
||
256 .L62:
|
||
257 009c 6545 cmp r5, ip
|
||
258 009e 09DD ble .L38
|
||
259 00a0 F0EC017A vldmia.32 r0!, {s15}
|
||
260 00a4 0CF1010C add ip, ip, #1
|
||
261 .L32:
|
||
262 00a8 F4EEE76A vcmpe.f32 s13, s15
|
||
263 00ac F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
264 00b0 E146 mov r9, ip
|
||
265 00b2 F3D4 bmi .L62
|
||
266 .L38:
|
||
267 00b4 06EB8200 add r0, r6, r2, lsl #2
|
||
268 .L40:
|
||
269 00b8 10ED017A vldr.32 s14, [r0, #-4]
|
||
270 00bc F4EEC76A vcmpe.f32 s13, s14
|
||
271 00c0 A0F1040E sub lr, r0, #4
|
||
272 00c4 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
273 00c8 1446 mov r4, r2
|
||
274 00ca 7046 mov r0, lr
|
||
275 00cc 02F1FF32 add r2, r2, #-1
|
||
276 00d0 F2DC bgt .L40
|
||
277 00d2 9445 cmp ip, r2
|
||
278 00d4 06EB8C00 add r0, r6, ip, lsl #2
|
||
279 00d8 CDDA bge .L42
|
||
280 .L59:
|
||
281 00da 0CF1010C add ip, ip, #1
|
||
282 00de 80ED007A vstr.32 s14, [r0]
|
||
283 00e2 06EB8C00 add r0, r6, ip, lsl #2
|
||
284 00e6 CEED007A vstr.32 s15, [lr]
|
||
285 00ea D0ED007A vldr.32 s15, [r0]
|
||
286 00ee 9DE7 b .L43
|
||
287 .L60:
|
||
288 00f0 03B0 add sp, sp, #12
|
||
289 @ sp needed
|
||
290 00f2 BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc}
|
||
ARM GAS /tmp/cckj2aNq.s page 6
|
||
|
||
|
||
291 .L55:
|
||
292 00f6 7047 bx lr
|
||
294 .section .text.arm_barycenter_f32,"ax",%progbits
|
||
295 .align 1
|
||
296 .p2align 2,,3
|
||
297 .global arm_barycenter_f32
|
||
298 .syntax unified
|
||
299 .thumb
|
||
300 .thumb_func
|
||
301 .fpu fpv4-sp-d16
|
||
303 arm_barycenter_f32:
|
||
304 @ args = 4, pretend = 0, frame = 0
|
||
305 @ frame_needed = 0, uses_anonymous_args = 0
|
||
306 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr}
|
||
307 0004 089D ldr r5, [sp, #32]
|
||
308 0006 8046 mov r8, r0
|
||
309 0008 8946 mov r9, r1
|
||
310 000a 1646 mov r6, r2
|
||
311 000c 1F46 mov r7, r3
|
||
312 000e 55B3 cbz r5, .L64
|
||
313 0010 4FEA850A lsl r10, r5, #2
|
||
314 0014 5246 mov r2, r10
|
||
315 0016 0021 movs r1, #0
|
||
316 0018 3046 mov r0, r6
|
||
317 001a FFF7FEFF bl memset
|
||
318 001e 37B3 cbz r7, .L72
|
||
319 .L71:
|
||
320 0020 9FED146A vldr.32 s12, .L84
|
||
321 .L68:
|
||
322 0024 F9EC016A vldmia.32 r9!, {s13}
|
||
323 0028 36EE266A vadd.f32 s12, s12, s13
|
||
324 002c 75B1 cbz r5, .L66
|
||
325 002e B646 mov lr, r6
|
||
326 0030 AC46 mov ip, r5
|
||
327 0032 4446 mov r4, r8
|
||
328 .L67:
|
||
329 0034 DEED007A vldr.32 s15, [lr]
|
||
330 0038 B4EC017A vldmia.32 r4!, {s14}
|
||
331 003c E7EE267A vfma.f32 s15, s14, s13
|
||
332 0040 BCF1010C subs ip, ip, #1
|
||
333 0044 EEEC017A vstmia.32 lr!, {s15}
|
||
334 0048 F4D1 bne .L67
|
||
335 004a D044 add r8, r8, r10
|
||
336 .L66:
|
||
337 004c 013F subs r7, r7, #1
|
||
338 004e E9D1 bne .L68
|
||
339 0050 3DB1 cbz r5, .L63
|
||
340 .L70:
|
||
341 0052 96ED007A vldr.32 s14, [r6]
|
||
342 0056 C7EE067A vdiv.f32 s15, s14, s12
|
||
343 005a 013D subs r5, r5, #1
|
||
344 005c E6EC017A vstmia.32 r6!, {s15}
|
||
345 0060 F7D1 bne .L70
|
||
346 .L63:
|
||
347 0062 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
|
||
348 .L64:
|
||
349 0066 002B cmp r3, #0
|
||
ARM GAS /tmp/cckj2aNq.s page 7
|
||
|
||
|
||
350 0068 FBD0 beq .L63
|
||
351 006a AA46 mov r10, r5
|
||
352 006c D8E7 b .L71
|
||
353 .L72:
|
||
354 006e 9FED016A vldr.32 s12, .L84
|
||
355 0072 EEE7 b .L70
|
||
356 .L85:
|
||
357 .align 2
|
||
358 .L84:
|
||
359 0074 00000000 .word 0
|
||
361 .section .text.arm_bitonic_sort_f32,"ax",%progbits
|
||
362 .align 1
|
||
363 .p2align 2,,3
|
||
364 .global arm_bitonic_sort_f32
|
||
365 .syntax unified
|
||
366 .thumb
|
||
367 .thumb_func
|
||
368 .fpu fpv4-sp-d16
|
||
370 arm_bitonic_sort_f32:
|
||
371 @ args = 0, pretend = 0, frame = 24
|
||
372 @ frame_needed = 0, uses_anonymous_args = 0
|
||
373 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
374 0004 87B0 sub sp, sp, #28
|
||
375 0006 8A42 cmp r2, r1
|
||
376 0008 90F801A0 ldrb r10, [r0, #1] @ zero_extendqisi2
|
||
377 000c 0492 str r2, [sp, #16]
|
||
378 000e 0093 str r3, [sp]
|
||
379 0010 03D0 beq .L87
|
||
380 0012 1046 mov r0, r2
|
||
381 0014 9A00 lsls r2, r3, #2
|
||
382 0016 FFF7FEFF bl memcpy
|
||
383 .L87:
|
||
384 001a 009A ldr r2, [sp]
|
||
385 001c 531E subs r3, r2, #1
|
||
386 001e 1342 tst r3, r2
|
||
387 0020 61D1 bne .L86
|
||
388 0022 012A cmp r2, #1
|
||
389 0024 5FD9 bls .L86
|
||
390 0026 4FF0020B mov fp, #2
|
||
391 002a 5F46 mov r7, fp
|
||
392 .L89:
|
||
393 002c 7B08 lsrs r3, r7, #1
|
||
394 002e 0293 str r3, [sp, #8]
|
||
395 0030 BB08 lsrs r3, r7, #2
|
||
396 0032 0193 str r3, [sp, #4]
|
||
397 0034 7B00 lsls r3, r7, #1
|
||
398 0036 4FF00008 mov r8, #0
|
||
399 003a 0393 str r3, [sp, #12]
|
||
400 003c BB00 lsls r3, r7, #2
|
||
401 003e C146 mov r9, r8
|
||
402 0040 0593 str r3, [sp, #20]
|
||
403 .L99:
|
||
404 0042 049B ldr r3, [sp, #16]
|
||
405 0044 03EB8808 add r8, r3, r8, lsl #2
|
||
406 0048 029B ldr r3, [sp, #8]
|
||
407 004a C3B1 cbz r3, .L90
|
||
408 004c 059A ldr r2, [sp, #20]
|
||
ARM GAS /tmp/cckj2aNq.s page 8
|
||
|
||
|
||
409 004e 0399 ldr r1, [sp, #12]
|
||
410 0050 4346 mov r3, r8
|
||
411 0052 4244 add r2, r8, r2
|
||
412 0054 08EB0100 add r0, r8, r1
|
||
413 .L92:
|
||
414 0058 F3EC017A vldmia.32 r3!, {s15}
|
||
415 005c 32ED017A vldmdb.32 r2!, {s14}
|
||
416 0060 F4EEC77A vcmpe.f32 s15, s14
|
||
417 0064 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
418 0068 CCBF ite gt
|
||
419 006a 0121 movgt r1, #1
|
||
420 006c 0021 movle r1, #0
|
||
421 006e 5145 cmp r1, r10
|
||
422 0070 04BF itt eq
|
||
423 0072 03ED017A vstreq.32 s14, [r3, #-4]
|
||
424 0076 C2ED007A vstreq.32 s15, [r2]
|
||
425 007a 8342 cmp r3, r0
|
||
426 007c ECD1 bne .L92
|
||
427 .L90:
|
||
428 007e 019B ldr r3, [sp, #4]
|
||
429 0080 1E46 mov r6, r3
|
||
430 0082 13B3 cbz r3, .L94
|
||
431 .L93:
|
||
432 0084 4FEA460E lsl lr, r6, #1
|
||
433 0088 4FEAC60C lsl ip, r6, #3
|
||
434 008c 4546 mov r5, r8
|
||
435 008e 08EB8604 add r4, r8, r6, lsl #2
|
||
436 0092 0020 movs r0, #0
|
||
437 .L98:
|
||
438 0094 2246 mov r2, r4
|
||
439 0096 2B46 mov r3, r5
|
||
440 0098 0021 movs r1, #0
|
||
441 .L97:
|
||
442 009a F3EC017A vldmia.32 r3!, {s15}
|
||
443 009e B2EC017A vldmia.32 r2!, {s14}
|
||
444 00a2 F4EEC77A vcmpe.f32 s15, s14
|
||
445 00a6 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
446 00aa 01F10101 add r1, r1, #1
|
||
447 00ae C4BF itt gt
|
||
448 00b0 03ED017A vstrgt.32 s14, [r3, #-4]
|
||
449 00b4 42ED017A vstrgt.32 s15, [r2, #-4]
|
||
450 00b8 B142 cmp r1, r6
|
||
451 00ba EED3 bcc .L97
|
||
452 00bc 7044 add r0, r0, lr
|
||
453 00be B842 cmp r0, r7
|
||
454 00c0 6544 add r5, r5, ip
|
||
455 00c2 6444 add r4, r4, ip
|
||
456 00c4 E6D3 bcc .L98
|
||
457 00c6 7608 lsrs r6, r6, #1
|
||
458 00c8 DCD1 bne .L93
|
||
459 .L94:
|
||
460 00ca 009B ldr r3, [sp]
|
||
461 00cc D944 add r9, r9, fp
|
||
462 00ce 1FFA89F9 uxth r9, r9
|
||
463 00d2 9945 cmp r9, r3
|
||
464 00d4 C846 mov r8, r9
|
||
465 00d6 B4D3 bcc .L99
|
||
ARM GAS /tmp/cckj2aNq.s page 9
|
||
|
||
|
||
466 00d8 4FEA4B0B lsl fp, fp, #1
|
||
467 00dc 1FFA8BFB uxth fp, fp
|
||
468 00e0 9B45 cmp fp, r3
|
||
469 00e2 5F46 mov r7, fp
|
||
470 00e4 A2D9 bls .L89
|
||
471 .L86:
|
||
472 00e6 07B0 add sp, sp, #28
|
||
473 @ sp needed
|
||
474 00e8 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
476 .section .text.arm_bubble_sort_f32,"ax",%progbits
|
||
477 .align 1
|
||
478 .p2align 2,,3
|
||
479 .global arm_bubble_sort_f32
|
||
480 .syntax unified
|
||
481 .thumb
|
||
482 .thumb_func
|
||
483 .fpu fpv4-sp-d16
|
||
485 arm_bubble_sort_f32:
|
||
486 @ args = 0, pretend = 0, frame = 0
|
||
487 @ frame_needed = 0, uses_anonymous_args = 0
|
||
488 0000 70B5 push {r4, r5, r6, lr}
|
||
489 0002 8A42 cmp r2, r1
|
||
490 0004 4578 ldrb r5, [r0, #1] @ zero_extendqisi2
|
||
491 0006 1446 mov r4, r2
|
||
492 0008 1E46 mov r6, r3
|
||
493 000a 03D0 beq .L115
|
||
494 000c 9A00 lsls r2, r3, #2
|
||
495 000e 2046 mov r0, r4
|
||
496 0010 FFF7FEFF bl memcpy
|
||
497 .L115:
|
||
498 0014 0022 movs r2, #0
|
||
499 0016 1046 mov r0, r2
|
||
500 .L116:
|
||
501 0018 06F1FF3E add lr, r6, #-1
|
||
502 001c 8645 cmp lr, r0
|
||
503 001e 22D9 bls .L125
|
||
504 .L119:
|
||
505 0020 04EB8001 add r1, r4, r0, lsl #2
|
||
506 0024 8C46 mov ip, r1
|
||
507 0026 0431 adds r1, r1, #4
|
||
508 .L117:
|
||
509 0028 FCEC017A vldmia.32 ip!, {s15}
|
||
510 002c B1EC017A vldmia.32 r1!, {s14}
|
||
511 0030 F4EEC77A vcmpe.f32 s15, s14
|
||
512 0034 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
513 0038 CCBF ite gt
|
||
514 003a 0123 movgt r3, #1
|
||
515 003c 0023 movle r3, #0
|
||
516 003e AB42 cmp r3, r5
|
||
517 0040 00F10100 add r0, r0, #1
|
||
518 0044 E8D1 bne .L116
|
||
519 0046 7045 cmp r0, lr
|
||
520 0048 0CED017A vstr.32 s14, [ip, #-4]
|
||
521 004c 4FF00102 mov r2, #1
|
||
522 0050 41ED017A vstr.32 s15, [r1, #-4]
|
||
523 0054 E8D3 bcc .L117
|
||
524 0056 7646 mov r6, lr
|
||
ARM GAS /tmp/cckj2aNq.s page 10
|
||
|
||
|
||
525 0058 0020 movs r0, #0
|
||
526 005a 012E cmp r6, #1
|
||
527 005c 0EF1FF3E add lr, lr, #-1
|
||
528 0060 0246 mov r2, r0
|
||
529 0062 DDD1 bne .L119
|
||
530 .L114:
|
||
531 0064 70BD pop {r4, r5, r6, pc}
|
||
532 .L125:
|
||
533 0066 002A cmp r2, #0
|
||
534 0068 FCD0 beq .L114
|
||
535 006a 7646 mov r6, lr
|
||
536 006c 0020 movs r0, #0
|
||
537 006e 012E cmp r6, #1
|
||
538 0070 0EF1FF3E add lr, lr, #-1
|
||
539 0074 0246 mov r2, r0
|
||
540 0076 D3D1 bne .L119
|
||
541 0078 F4E7 b .L114
|
||
543 007a 00BF .section .text.arm_copy_f32,"ax",%progbits
|
||
544 .align 1
|
||
545 .p2align 2,,3
|
||
546 .global arm_copy_f32
|
||
547 .syntax unified
|
||
548 .thumb
|
||
549 .thumb_func
|
||
550 .fpu fpv4-sp-d16
|
||
552 arm_copy_f32:
|
||
553 @ args = 0, pretend = 0, frame = 0
|
||
554 @ frame_needed = 0, uses_anonymous_args = 0
|
||
555 @ link register save eliminated.
|
||
556 0000 2AB1 cbz r2, .L126
|
||
557 .L128:
|
||
558 0002 50F8043B ldr r3, [r0], #4 @ float
|
||
559 0006 41F8043B str r3, [r1], #4 @ float
|
||
560 000a 013A subs r2, r2, #1
|
||
561 000c F9D1 bne .L128
|
||
562 .L126:
|
||
563 000e 7047 bx lr
|
||
565 .section .text.arm_copy_q15,"ax",%progbits
|
||
566 .align 1
|
||
567 .p2align 2,,3
|
||
568 .global arm_copy_q15
|
||
569 .syntax unified
|
||
570 .thumb
|
||
571 .thumb_func
|
||
572 .fpu fpv4-sp-d16
|
||
574 arm_copy_q15:
|
||
575 @ args = 0, pretend = 0, frame = 0
|
||
576 @ frame_needed = 0, uses_anonymous_args = 0
|
||
577 0000 32B3 cbz r2, .L152
|
||
578 0002 531E subs r3, r2, #1
|
||
579 0004 092B cmp r3, #9
|
||
580 0006 30B5 push {r4, r5, lr}
|
||
581 0008 00F10204 add r4, r0, #2
|
||
582 000c 15D9 bls .L135
|
||
583 000e A142 cmp r1, r4
|
||
584 0010 13D0 beq .L135
|
||
585 0012 5508 lsrs r5, r2, #1
|
||
ARM GAS /tmp/cckj2aNq.s page 11
|
||
|
||
|
||
586 0014 8646 mov lr, r0
|
||
587 0016 8C46 mov ip, r1
|
||
588 0018 0023 movs r3, #0
|
||
589 .L136:
|
||
590 001a 0133 adds r3, r3, #1
|
||
591 001c 5EF8044B ldr r4, [lr], #4 @ unaligned
|
||
592 0020 4CF8044B str r4, [ip], #4 @ unaligned
|
||
593 0024 AB42 cmp r3, r5
|
||
594 0026 F8D1 bne .L136
|
||
595 0028 22F00103 bic r3, r2, #1
|
||
596 002c D207 lsls r2, r2, #31
|
||
597 002e 03D5 bpl .L133
|
||
598 0030 30F91320 ldrsh r2, [r0, r3, lsl #1]
|
||
599 0034 21F81320 strh r2, [r1, r3, lsl #1] @ movhi
|
||
600 .L133:
|
||
601 0038 30BD pop {r4, r5, pc}
|
||
602 .L135:
|
||
603 003a 0239 subs r1, r1, #2
|
||
604 003c 01E0 b .L138
|
||
605 .L156:
|
||
606 003e 013B subs r3, r3, #1
|
||
607 0040 0234 adds r4, r4, #2
|
||
608 .L138:
|
||
609 0042 34F9022C ldrsh r2, [r4, #-2]
|
||
610 0046 21F8022F strh r2, [r1, #2]! @ movhi
|
||
611 004a 002B cmp r3, #0
|
||
612 004c F7D1 bne .L156
|
||
613 004e 30BD pop {r4, r5, pc}
|
||
614 .L152:
|
||
615 0050 7047 bx lr
|
||
617 .section .text.arm_copy_q31,"ax",%progbits
|
||
618 .align 1
|
||
619 .p2align 2,,3
|
||
620 .global arm_copy_q31
|
||
621 .syntax unified
|
||
622 .thumb
|
||
623 .thumb_func
|
||
624 .fpu fpv4-sp-d16
|
||
626 arm_copy_q31:
|
||
627 @ args = 0, pretend = 0, frame = 0
|
||
628 @ frame_needed = 0, uses_anonymous_args = 0
|
||
629 0000 002A cmp r2, #0
|
||
630 0002 39D0 beq .L176
|
||
631 0004 531E subs r3, r2, #1
|
||
632 0006 00F1040C add ip, r0, #4
|
||
633 000a 6145 cmp r1, ip
|
||
634 000c 18BF it ne
|
||
635 000e 0B2B cmpne r3, #11
|
||
636 0010 27D9 bls .L177
|
||
637 0012 10B5 push {r4, lr}
|
||
638 0014 41EA0004 orr r4, r1, r0
|
||
639 0018 6407 lsls r4, r4, #29
|
||
640 001a 16D1 bne .L159
|
||
641 001c 5408 lsrs r4, r2, #1
|
||
642 001e A0F1080E sub lr, r0, #8
|
||
643 0022 8C46 mov ip, r1
|
||
644 0024 0023 movs r3, #0
|
||
ARM GAS /tmp/cckj2aNq.s page 12
|
||
|
||
|
||
645 .L160:
|
||
646 0026 9EED027B vldr.64 d7, [lr, #8] @ int
|
||
647 002a 0133 adds r3, r3, #1
|
||
648 002c A342 cmp r3, r4
|
||
649 002e 0EF1080E add lr, lr, #8
|
||
650 0032 ACEC027B vstmia.64 ip!, {d7} @ int
|
||
651 0036 F6D1 bne .L160
|
||
652 0038 22F00103 bic r3, r2, #1
|
||
653 003c D207 lsls r2, r2, #31
|
||
654 003e 03D5 bpl .L157
|
||
655 0040 50F82320 ldr r2, [r0, r3, lsl #2]
|
||
656 0044 41F82320 str r2, [r1, r3, lsl #2]
|
||
657 .L157:
|
||
658 0048 10BD pop {r4, pc}
|
||
659 .L159:
|
||
660 004a 0439 subs r1, r1, #4
|
||
661 004c 02E0 b .L162
|
||
662 .L183:
|
||
663 004e 013B subs r3, r3, #1
|
||
664 0050 0CF1040C add ip, ip, #4
|
||
665 .L162:
|
||
666 0054 5CF8042C ldr r2, [ip, #-4]
|
||
667 0058 41F8042F str r2, [r1, #4]!
|
||
668 005c 002B cmp r3, #0
|
||
669 005e F6D1 bne .L183
|
||
670 0060 10BD pop {r4, pc}
|
||
671 .L177:
|
||
672 0062 0439 subs r1, r1, #4
|
||
673 0064 02E0 b .L178
|
||
674 .L184:
|
||
675 0066 013B subs r3, r3, #1
|
||
676 0068 0CF1040C add ip, ip, #4
|
||
677 .L178:
|
||
678 006c 5CF8042C ldr r2, [ip, #-4]
|
||
679 0070 41F8042F str r2, [r1, #4]!
|
||
680 0074 002B cmp r3, #0
|
||
681 0076 F6D1 bne .L184
|
||
682 .L176:
|
||
683 0078 7047 bx lr
|
||
685 007a 00BF .section .text.arm_copy_q7,"ax",%progbits
|
||
686 .align 1
|
||
687 .p2align 2,,3
|
||
688 .global arm_copy_q7
|
||
689 .syntax unified
|
||
690 .thumb
|
||
691 .thumb_func
|
||
692 .fpu fpv4-sp-d16
|
||
694 arm_copy_q7:
|
||
695 @ args = 0, pretend = 0, frame = 0
|
||
696 @ frame_needed = 0, uses_anonymous_args = 0
|
||
697 0000 B2B3 cbz r2, .L210
|
||
698 0002 431C adds r3, r0, #1
|
||
699 0004 10B5 push {r4, lr}
|
||
700 0006 CC1A subs r4, r1, r3
|
||
701 0008 022C cmp r4, #2
|
||
702 000a 26D9 bls .L187
|
||
703 000c 541E subs r4, r2, #1
|
||
ARM GAS /tmp/cckj2aNq.s page 13
|
||
|
||
|
||
704 000e 072C cmp r4, #7
|
||
705 0010 23D9 bls .L187
|
||
706 0012 22F00304 bic r4, r2, #3
|
||
707 0016 0346 mov r3, r0
|
||
708 0018 8C46 mov ip, r1
|
||
709 001a 0444 add r4, r4, r0
|
||
710 .L188:
|
||
711 001c 53F804EB ldr lr, [r3], #4 @ unaligned
|
||
712 0020 4CF804EB str lr, [ip], #4 @ unaligned
|
||
713 0024 A342 cmp r3, r4
|
||
714 0026 F9D1 bne .L188
|
||
715 0028 22F00303 bic r3, r2, #3
|
||
716 002c 9A42 cmp r2, r3
|
||
717 002e 00EB030E add lr, r0, r3
|
||
718 0032 01EB030C add ip, r1, r3
|
||
719 0036 A2EB0304 sub r4, r2, r3
|
||
720 003a 0DD0 beq .L185
|
||
721 003c C256 ldrsb r2, [r0, r3]
|
||
722 003e CA54 strb r2, [r1, r3]
|
||
723 0040 012C cmp r4, #1
|
||
724 0042 09D0 beq .L185
|
||
725 0044 9EF90130 ldrsb r3, [lr, #1]
|
||
726 0048 8CF80130 strb r3, [ip, #1]
|
||
727 004c 022C cmp r4, #2
|
||
728 004e 03D0 beq .L185
|
||
729 0050 9EF90230 ldrsb r3, [lr, #2]
|
||
730 0054 8CF80230 strb r3, [ip, #2]
|
||
731 .L185:
|
||
732 0058 10BD pop {r4, pc}
|
||
733 .L187:
|
||
734 005a 0139 subs r1, r1, #1
|
||
735 005c 0244 add r2, r2, r0
|
||
736 005e 00E0 b .L190
|
||
737 .L214:
|
||
738 0060 0133 adds r3, r3, #1
|
||
739 .L190:
|
||
740 0062 13F9010C ldrsb r0, [r3, #-1]
|
||
741 0066 01F8010F strb r0, [r1, #1]!
|
||
742 006a 9342 cmp r3, r2
|
||
743 006c F8D1 bne .L214
|
||
744 006e 10BD pop {r4, pc}
|
||
745 .L210:
|
||
746 0070 7047 bx lr
|
||
748 0072 00BF .section .text.arm_fill_f32,"ax",%progbits
|
||
749 .align 1
|
||
750 .p2align 2,,3
|
||
751 .global arm_fill_f32
|
||
752 .syntax unified
|
||
753 .thumb
|
||
754 .thumb_func
|
||
755 .fpu fpv4-sp-d16
|
||
757 arm_fill_f32:
|
||
758 @ args = 0, pretend = 0, frame = 0
|
||
759 @ frame_needed = 0, uses_anonymous_args = 0
|
||
760 @ link register save eliminated.
|
||
761 0000 19B1 cbz r1, .L215
|
||
762 .L217:
|
||
ARM GAS /tmp/cckj2aNq.s page 14
|
||
|
||
|
||
763 0002 0139 subs r1, r1, #1
|
||
764 0004 A0EC010A vstmia.32 r0!, {s0}
|
||
765 0008 FBD1 bne .L217
|
||
766 .L215:
|
||
767 000a 7047 bx lr
|
||
769 .section .text.arm_fill_q15,"ax",%progbits
|
||
770 .align 1
|
||
771 .p2align 2,,3
|
||
772 .global arm_fill_q15
|
||
773 .syntax unified
|
||
774 .thumb
|
||
775 .thumb_func
|
||
776 .fpu fpv4-sp-d16
|
||
778 arm_fill_q15:
|
||
779 @ args = 0, pretend = 0, frame = 0
|
||
780 @ frame_needed = 0, uses_anonymous_args = 0
|
||
781 0000 0AB3 cbz r2, .L239
|
||
782 0002 531E subs r3, r2, #1
|
||
783 0004 022B cmp r3, #2
|
||
784 0006 10B5 push {r4, lr}
|
||
785 0008 1ED9 bls .L227
|
||
786 000a 4FF0000E mov lr, #0
|
||
787 000e 60F30F0E bfi lr, r0, #0, #16
|
||
788 0012 5408 lsrs r4, r2, #1
|
||
789 0014 60F31F4E bfi lr, r0, #16, #16
|
||
790 0018 8C46 mov ip, r1
|
||
791 001a 0023 movs r3, #0
|
||
792 .L225:
|
||
793 001c 0133 adds r3, r3, #1
|
||
794 001e A342 cmp r3, r4
|
||
795 0020 4CF804EB str lr, [ip], #4 @ unaligned
|
||
796 0024 FAD1 bne .L225
|
||
797 0026 22F00103 bic r3, r2, #1
|
||
798 002a 9A42 cmp r2, r3
|
||
799 002c 01EB4301 add r1, r1, r3, lsl #1
|
||
800 0030 A2EB0304 sub r4, r2, r3
|
||
801 0034 06D0 beq .L222
|
||
802 .L224:
|
||
803 0036 012C cmp r4, #1
|
||
804 0038 0880 strh r0, [r1] @ movhi
|
||
805 003a 03D0 beq .L222
|
||
806 003c 022C cmp r4, #2
|
||
807 003e 4880 strh r0, [r1, #2] @ movhi
|
||
808 0040 18BF it ne
|
||
809 0042 8880 strhne r0, [r1, #4] @ movhi
|
||
810 .L222:
|
||
811 0044 10BD pop {r4, pc}
|
||
812 .L239:
|
||
813 0046 7047 bx lr
|
||
814 .L227:
|
||
815 0048 1446 mov r4, r2
|
||
816 004a F4E7 b .L224
|
||
818 .section .text.arm_fill_q31,"ax",%progbits
|
||
819 .align 1
|
||
820 .p2align 2,,3
|
||
821 .global arm_fill_q31
|
||
822 .syntax unified
|
||
ARM GAS /tmp/cckj2aNq.s page 15
|
||
|
||
|
||
823 .thumb
|
||
824 .thumb_func
|
||
825 .fpu fpv4-sp-d16
|
||
827 arm_fill_q31:
|
||
828 @ args = 0, pretend = 0, frame = 0
|
||
829 @ frame_needed = 0, uses_anonymous_args = 0
|
||
830 0000 B2B3 cbz r2, .L269
|
||
831 0002 02F1FF3C add ip, r2, #-1
|
||
832 0006 BCF1050F cmp ip, #5
|
||
833 000a 10B5 push {r4, lr}
|
||
834 000c C1F38003 ubfx r3, r1, #2, #1
|
||
835 0010 6446 mov r4, ip
|
||
836 0012 1AD9 bls .L244
|
||
837 0014 4BB3 cbz r3, .L248
|
||
838 0016 0C46 mov r4, r1
|
||
839 0018 44F8040B str r0, [r4], #4
|
||
840 .L245:
|
||
841 001c A2EB030E sub lr, r2, r3
|
||
842 0020 01EB8301 add r1, r1, r3, lsl #2
|
||
843 0024 4FEA5E02 lsr r2, lr, #1
|
||
844 0028 0023 movs r3, #0
|
||
845 .L246:
|
||
846 002a 0133 adds r3, r3, #1
|
||
847 002c 9342 cmp r3, r2
|
||
848 002e C1E90000 strd r0, r0, [r1]
|
||
849 0032 01F10801 add r1, r1, #8
|
||
850 0036 F8D1 bne .L246
|
||
851 0038 2EF00103 bic r3, lr, #1
|
||
852 003c 9E45 cmp lr, r3
|
||
853 003e 04EB8301 add r1, r4, r3, lsl #2
|
||
854 0042 ACEB0302 sub r2, ip, r3
|
||
855 0046 0FD0 beq .L242
|
||
856 0048 541E subs r4, r2, #1
|
||
857 .L244:
|
||
858 004a 0860 str r0, [r1]
|
||
859 004c 64B1 cbz r4, .L242
|
||
860 004e 022A cmp r2, #2
|
||
861 0050 4860 str r0, [r1, #4]
|
||
862 0052 09D0 beq .L242
|
||
863 0054 032A cmp r2, #3
|
||
864 0056 8860 str r0, [r1, #8]
|
||
865 0058 06D0 beq .L242
|
||
866 005a 042A cmp r2, #4
|
||
867 005c C860 str r0, [r1, #12]
|
||
868 005e 03D0 beq .L242
|
||
869 0060 052A cmp r2, #5
|
||
870 0062 0861 str r0, [r1, #16]
|
||
871 0064 18BF it ne
|
||
872 0066 4861 strne r0, [r1, #20]
|
||
873 .L242:
|
||
874 0068 10BD pop {r4, pc}
|
||
875 .L248:
|
||
876 006a 9446 mov ip, r2
|
||
877 006c 0C46 mov r4, r1
|
||
878 006e D5E7 b .L245
|
||
879 .L269:
|
||
880 0070 7047 bx lr
|
||
ARM GAS /tmp/cckj2aNq.s page 16
|
||
|
||
|
||
882 .section .text.arm_fill_q7,"ax",%progbits
|
||
883 .align 1
|
||
884 .p2align 2,,3
|
||
885 .global arm_fill_q7
|
||
886 .syntax unified
|
||
887 .thumb
|
||
888 .thumb_func
|
||
889 .fpu fpv4-sp-d16
|
||
891 arm_fill_q7:
|
||
892 @ args = 0, pretend = 0, frame = 0
|
||
893 @ frame_needed = 0, uses_anonymous_args = 0
|
||
894 @ link register save eliminated.
|
||
895 0000 0346 mov r3, r0
|
||
896 0002 0846 mov r0, r1
|
||
897 0004 12B1 cbz r2, .L272
|
||
898 0006 1946 mov r1, r3
|
||
899 0008 FFF7FEBF b memset
|
||
900 .L272:
|
||
901 000c 7047 bx lr
|
||
903 000e 00BF .section .text.arm_heap_sort_f32,"ax",%progbits
|
||
904 .align 1
|
||
905 .p2align 2,,3
|
||
906 .global arm_heap_sort_f32
|
||
907 .syntax unified
|
||
908 .thumb
|
||
909 .thumb_func
|
||
910 .fpu fpv4-sp-d16
|
||
912 arm_heap_sort_f32:
|
||
913 @ args = 0, pretend = 0, frame = 0
|
||
914 @ frame_needed = 0, uses_anonymous_args = 0
|
||
915 0000 8A42 cmp r2, r1
|
||
916 0002 F8B5 push {r3, r4, r5, r6, r7, lr}
|
||
917 0004 1546 mov r5, r2
|
||
918 0006 0746 mov r7, r0
|
||
919 0008 1C46 mov r4, r3
|
||
920 000a 03D0 beq .L275
|
||
921 000c 9A00 lsls r2, r3, #2
|
||
922 000e 2846 mov r0, r5
|
||
923 0010 FFF7FEFF bl memcpy
|
||
924 .L275:
|
||
925 0014 6308 lsrs r3, r4, #1
|
||
926 0016 5E1E subs r6, r3, #1
|
||
927 0018 43B1 cbz r3, .L276
|
||
928 .L277:
|
||
929 001a 3246 mov r2, r6
|
||
930 001c 7B78 ldrb r3, [r7, #1] @ zero_extendqisi2
|
||
931 001e 2146 mov r1, r4
|
||
932 0020 2846 mov r0, r5
|
||
933 0022 013E subs r6, r6, #1
|
||
934 0024 FFF7FEFF bl arm_heapify
|
||
935 0028 721C adds r2, r6, #1
|
||
936 002a F6D1 bne .L277
|
||
937 .L276:
|
||
938 002c 661E subs r6, r4, #1
|
||
939 002e 0FD4 bmi .L274
|
||
940 0030 05EB8404 add r4, r5, r4, lsl #2
|
||
941 .L279:
|
||
ARM GAS /tmp/cckj2aNq.s page 17
|
||
|
||
|
||
942 0034 54F8043D ldr r3, [r4, #-4]! @ float
|
||
943 0038 2A68 ldr r2, [r5] @ float
|
||
944 003a 2260 str r2, [r4] @ float
|
||
945 003c 2B60 str r3, [r5] @ float
|
||
946 003e 7B78 ldrb r3, [r7, #1] @ zero_extendqisi2
|
||
947 0040 3146 mov r1, r6
|
||
948 0042 0022 movs r2, #0
|
||
949 0044 2846 mov r0, r5
|
||
950 0046 013E subs r6, r6, #1
|
||
951 0048 FFF7FEFF bl arm_heapify
|
||
952 004c 731C adds r3, r6, #1
|
||
953 004e F1D1 bne .L279
|
||
954 .L274:
|
||
955 0050 F8BD pop {r3, r4, r5, r6, r7, pc}
|
||
957 0052 00BF .section .text.arm_insertion_sort_f32,"ax",%progbits
|
||
958 .align 1
|
||
959 .p2align 2,,3
|
||
960 .global arm_insertion_sort_f32
|
||
961 .syntax unified
|
||
962 .thumb
|
||
963 .thumb_func
|
||
964 .fpu fpv4-sp-d16
|
||
966 arm_insertion_sort_f32:
|
||
967 @ args = 0, pretend = 0, frame = 0
|
||
968 @ frame_needed = 0, uses_anonymous_args = 0
|
||
969 0000 70B5 push {r4, r5, r6, lr}
|
||
970 0002 8A42 cmp r2, r1
|
||
971 0004 4478 ldrb r4, [r0, #1] @ zero_extendqisi2
|
||
972 0006 1546 mov r5, r2
|
||
973 0008 1E46 mov r6, r3
|
||
974 000a 03D0 beq .L287
|
||
975 000c 9A00 lsls r2, r3, #2
|
||
976 000e 2846 mov r0, r5
|
||
977 0010 FFF7FEFF bl memcpy
|
||
978 .L287:
|
||
979 0014 012E cmp r6, #1
|
||
980 0016 21D9 bls .L286
|
||
981 0018 05F1080E add lr, r5, #8
|
||
982 001c 0125 movs r5, #1
|
||
983 .L291:
|
||
984 001e AEF10401 sub r1, lr, #4
|
||
985 0022 7246 mov r2, lr
|
||
986 0024 2846 mov r0, r5
|
||
987 0026 05E0 b .L290
|
||
988 .L292:
|
||
989 0028 0138 subs r0, r0, #1
|
||
990 002a C2ED007A vstr.32 s15, [r2]
|
||
991 002e 81ED007A vstr.32 s14, [r1]
|
||
992 0032 0ED0 beq .L293
|
||
993 .L290:
|
||
994 0034 32ED017A vldmdb.32 r2!, {s14}
|
||
995 0038 71ED017A vldmdb.32 r1!, {s15}
|
||
996 003c B4EEE77A vcmpe.f32 s14, s15
|
||
997 0040 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
998 0044 4CBF ite mi
|
||
999 0046 4FF0010C movmi ip, #1
|
||
1000 004a 4FF0000C movpl ip, #0
|
||
ARM GAS /tmp/cckj2aNq.s page 18
|
||
|
||
|
||
1001 004e A445 cmp ip, r4
|
||
1002 0050 EAD0 beq .L292
|
||
1003 .L293:
|
||
1004 0052 0135 adds r5, r5, #1
|
||
1005 0054 AE42 cmp r6, r5
|
||
1006 0056 0EF1040E add lr, lr, #4
|
||
1007 005a E0D1 bne .L291
|
||
1008 .L286:
|
||
1009 005c 70BD pop {r4, r5, r6, pc}
|
||
1011 005e 00BF .section .text.arm_merge_sort_f32,"ax",%progbits
|
||
1012 .align 1
|
||
1013 .p2align 2,,3
|
||
1014 .global arm_merge_sort_f32
|
||
1015 .syntax unified
|
||
1016 .thumb
|
||
1017 .thumb_func
|
||
1018 .fpu fpv4-sp-d16
|
||
1020 arm_merge_sort_f32:
|
||
1021 @ args = 0, pretend = 0, frame = 8
|
||
1022 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1023 0000 F0B5 push {r4, r5, r6, r7, lr}
|
||
1024 0002 9142 cmp r1, r2
|
||
1025 0004 1546 mov r5, r2
|
||
1026 0006 85B0 sub sp, sp, #20
|
||
1027 0008 0E46 mov r6, r1
|
||
1028 000a 0446 mov r4, r0
|
||
1029 000c 1F46 mov r7, r3
|
||
1030 000e 4FEA8302 lsl r2, r3, #2
|
||
1031 0012 04D0 beq .L299
|
||
1032 0014 2846 mov r0, r5
|
||
1033 0016 0392 str r2, [sp, #12]
|
||
1034 0018 FFF7FEFF bl memcpy
|
||
1035 001c 039A ldr r2, [sp, #12]
|
||
1036 .L299:
|
||
1037 001e 6068 ldr r0, [r4, #4]
|
||
1038 0020 3146 mov r1, r6
|
||
1039 0022 FFF7FEFF bl memcpy
|
||
1040 0026 2378 ldrb r3, [r4] @ zero_extendqisi2
|
||
1041 0028 6068 ldr r0, [r4, #4]
|
||
1042 002a 0093 str r3, [sp]
|
||
1043 002c 3A46 mov r2, r7
|
||
1044 002e 2B46 mov r3, r5
|
||
1045 0030 0021 movs r1, #0
|
||
1046 0032 FFF7FEFF bl arm_merge_sort_core_f32
|
||
1047 0036 05B0 add sp, sp, #20
|
||
1048 @ sp needed
|
||
1049 0038 F0BD pop {r4, r5, r6, r7, pc}
|
||
1051 003a 00BF .section .text.arm_merge_sort_init_f32,"ax",%progbits
|
||
1052 .align 1
|
||
1053 .p2align 2,,3
|
||
1054 .global arm_merge_sort_init_f32
|
||
1055 .syntax unified
|
||
1056 .thumb
|
||
1057 .thumb_func
|
||
1058 .fpu fpv4-sp-d16
|
||
1060 arm_merge_sort_init_f32:
|
||
1061 @ args = 0, pretend = 0, frame = 0
|
||
ARM GAS /tmp/cckj2aNq.s page 19
|
||
|
||
|
||
1062 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1063 @ link register save eliminated.
|
||
1064 0000 0170 strb r1, [r0]
|
||
1065 0002 4260 str r2, [r0, #4]
|
||
1066 0004 7047 bx lr
|
||
1068 0006 00BF .section .text.arm_quick_sort_f32,"ax",%progbits
|
||
1069 .align 1
|
||
1070 .p2align 2,,3
|
||
1071 .global arm_quick_sort_f32
|
||
1072 .syntax unified
|
||
1073 .thumb
|
||
1074 .thumb_func
|
||
1075 .fpu fpv4-sp-d16
|
||
1077 arm_quick_sort_f32:
|
||
1078 @ args = 0, pretend = 0, frame = 0
|
||
1079 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1080 0000 8A42 cmp r2, r1
|
||
1081 0002 70B5 push {r4, r5, r6, lr}
|
||
1082 0004 1446 mov r4, r2
|
||
1083 0006 0646 mov r6, r0
|
||
1084 0008 1D46 mov r5, r3
|
||
1085 000a 03D0 beq .L303
|
||
1086 000c 9A00 lsls r2, r3, #2
|
||
1087 000e 2046 mov r0, r4
|
||
1088 0010 FFF7FEFF bl memcpy
|
||
1089 .L303:
|
||
1090 0014 7378 ldrb r3, [r6, #1] @ zero_extendqisi2
|
||
1091 0016 6A1E subs r2, r5, #1
|
||
1092 0018 2046 mov r0, r4
|
||
1093 001a 0021 movs r1, #0
|
||
1094 001c BDE87040 pop {r4, r5, r6, lr}
|
||
1095 0020 FFF7FEBF b arm_quick_sort_core_f32
|
||
1097 .section .text.arm_selection_sort_f32,"ax",%progbits
|
||
1098 .align 1
|
||
1099 .p2align 2,,3
|
||
1100 .global arm_selection_sort_f32
|
||
1101 .syntax unified
|
||
1102 .thumb
|
||
1103 .thumb_func
|
||
1104 .fpu fpv4-sp-d16
|
||
1106 arm_selection_sort_f32:
|
||
1107 @ args = 0, pretend = 0, frame = 0
|
||
1108 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1109 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr}
|
||
1110 0004 8A42 cmp r2, r1
|
||
1111 0006 4678 ldrb r6, [r0, #1] @ zero_extendqisi2
|
||
1112 0008 1746 mov r7, r2
|
||
1113 000a 1D46 mov r5, r3
|
||
1114 000c 03D0 beq .L306
|
||
1115 000e 9A00 lsls r2, r3, #2
|
||
1116 0010 3846 mov r0, r7
|
||
1117 0012 FFF7FEFF bl memcpy
|
||
1118 .L306:
|
||
1119 0016 B5F1010A subs r10, r5, #1
|
||
1120 001a 31D0 beq .L305
|
||
1121 001c B946 mov r9, r7
|
||
1122 001e 0023 movs r3, #0
|
||
ARM GAS /tmp/cckj2aNq.s page 20
|
||
|
||
|
||
1123 .L311:
|
||
1124 0020 9846 mov r8, r3
|
||
1125 0022 0133 adds r3, r3, #1
|
||
1126 0024 9D42 cmp r5, r3
|
||
1127 0026 98BF it ls
|
||
1128 0028 09F10402 addls r2, r9, #4
|
||
1129 002c 25D9 bls .L308
|
||
1130 002e 4A46 mov r2, r9
|
||
1131 0030 F2EC016A vldmia.32 r2!, {s13}
|
||
1132 0034 4446 mov r4, r8
|
||
1133 0036 B0EE667A vmov.f32 s14, s13
|
||
1134 003a 1046 mov r0, r2
|
||
1135 003c 1946 mov r1, r3
|
||
1136 .L310:
|
||
1137 003e 8646 mov lr, r0
|
||
1138 0040 F0EC017A vldmia.32 r0!, {s15}
|
||
1139 0044 F4EEC77A vcmpe.f32 s15, s14
|
||
1140 0048 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
1141 004c 4CBF ite mi
|
||
1142 004e 4FF0010C movmi ip, #1
|
||
1143 0052 4FF0000C movpl ip, #0
|
||
1144 0056 B445 cmp ip, r6
|
||
1145 0058 08BF it eq
|
||
1146 005a 0C46 moveq r4, r1
|
||
1147 005c 01F10101 add r1, r1, #1
|
||
1148 0060 14BF ite ne
|
||
1149 0062 07EB840E addne lr, r7, r4, lsl #2
|
||
1150 0066 B0EE677A vmoveq.f32 s14, s15
|
||
1151 006a A942 cmp r1, r5
|
||
1152 006c E7D1 bne .L310
|
||
1153 006e 4445 cmp r4, r8
|
||
1154 0070 1CBF itt ne
|
||
1155 0072 89ED007A vstrne.32 s14, [r9]
|
||
1156 0076 CEED006A vstrne.32 s13, [lr]
|
||
1157 .L308:
|
||
1158 007a 5345 cmp r3, r10
|
||
1159 007c 9146 mov r9, r2
|
||
1160 007e CFD1 bne .L311
|
||
1161 .L305:
|
||
1162 0080 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
|
||
1164 .section .text.arm_sort_f32,"ax",%progbits
|
||
1165 .align 1
|
||
1166 .p2align 2,,3
|
||
1167 .global arm_sort_f32
|
||
1168 .syntax unified
|
||
1169 .thumb
|
||
1170 .thumb_func
|
||
1171 .fpu fpv4-sp-d16
|
||
1173 arm_sort_f32:
|
||
1174 @ args = 0, pretend = 0, frame = 0
|
||
1175 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1176 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr}
|
||
1177 0004 0678 ldrb r6, [r0] @ zero_extendqisi2
|
||
1178 0006 0746 mov r7, r0
|
||
1179 0008 1446 mov r4, r2
|
||
1180 000a 1D46 mov r5, r3
|
||
1181 000c 052E cmp r6, #5
|
||
ARM GAS /tmp/cckj2aNq.s page 21
|
||
|
||
|
||
1182 000e 40D8 bhi .L319
|
||
1183 0010 DFE806F0 tbb [pc, r6]
|
||
1184 .L322:
|
||
1185 0014 41 .byte (.L327-.L322)/2
|
||
1186 0015 46 .byte (.L326-.L322)/2
|
||
1187 0016 6E .byte (.L325-.L322)/2
|
||
1188 0017 95 .byte (.L324-.L322)/2
|
||
1189 0018 C0 .byte (.L323-.L322)/2
|
||
1190 0019 03 .byte (.L321-.L322)/2
|
||
1191 .p2align 1
|
||
1192 .L321:
|
||
1193 001a 9142 cmp r1, r2
|
||
1194 001c 4778 ldrb r7, [r0, #1] @ zero_extendqisi2
|
||
1195 001e 03D0 beq .L348
|
||
1196 0020 AA00 lsls r2, r5, #2
|
||
1197 0022 2046 mov r0, r4
|
||
1198 0024 FFF7FEFF bl memcpy
|
||
1199 .L348:
|
||
1200 0028 B5F1010A subs r10, r5, #1
|
||
1201 002c 31D0 beq .L319
|
||
1202 002e A146 mov r9, r4
|
||
1203 0030 4FF0000C mov ip, #0
|
||
1204 .L352:
|
||
1205 0034 E046 mov r8, ip
|
||
1206 0036 0CF1010C add ip, ip, #1
|
||
1207 003a 6545 cmp r5, ip
|
||
1208 003c 98BF it ls
|
||
1209 003e 09F1040E addls lr, r9, #4
|
||
1210 0042 23D9 bls .L349
|
||
1211 0044 CE46 mov lr, r9
|
||
1212 0046 FEEC016A vldmia.32 lr!, {s13}
|
||
1213 004a 4646 mov r6, r8
|
||
1214 004c B0EE667A vmov.f32 s14, s13
|
||
1215 0050 7346 mov r3, lr
|
||
1216 0052 6246 mov r2, ip
|
||
1217 .L351:
|
||
1218 0054 1846 mov r0, r3
|
||
1219 0056 F3EC017A vldmia.32 r3!, {s15}
|
||
1220 005a F4EEC77A vcmpe.f32 s15, s14
|
||
1221 005e F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
1222 0062 4CBF ite mi
|
||
1223 0064 0121 movmi r1, #1
|
||
1224 0066 0021 movpl r1, #0
|
||
1225 0068 B942 cmp r1, r7
|
||
1226 006a 08BF it eq
|
||
1227 006c 1646 moveq r6, r2
|
||
1228 006e 02F10102 add r2, r2, #1
|
||
1229 0072 14BF ite ne
|
||
1230 0074 04EB8600 addne r0, r4, r6, lsl #2
|
||
1231 0078 B0EE677A vmoveq.f32 s14, s15
|
||
1232 007c 9542 cmp r5, r2
|
||
1233 007e E9D1 bne .L351
|
||
1234 0080 B045 cmp r8, r6
|
||
1235 0082 1CBF itt ne
|
||
1236 0084 89ED007A vstrne.32 s14, [r9]
|
||
1237 0088 C0ED006A vstrne.32 s13, [r0]
|
||
1238 .L349:
|
||
ARM GAS /tmp/cckj2aNq.s page 22
|
||
|
||
|
||
1239 008c D445 cmp ip, r10
|
||
1240 008e F146 mov r9, lr
|
||
1241 0090 D0D1 bne .L352
|
||
1242 .L319:
|
||
1243 0092 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
|
||
1244 .L327:
|
||
1245 0096 2B46 mov r3, r5
|
||
1246 0098 BDE8F047 pop {r4, r5, r6, r7, r8, r9, r10, lr}
|
||
1247 009c FFF7FEBF b arm_bitonic_sort_f32
|
||
1248 .L326:
|
||
1249 00a0 9142 cmp r1, r2
|
||
1250 00a2 4778 ldrb r7, [r0, #1] @ zero_extendqisi2
|
||
1251 00a4 03D0 beq .L328
|
||
1252 00a6 AA00 lsls r2, r5, #2
|
||
1253 00a8 2046 mov r0, r4
|
||
1254 00aa FFF7FEFF bl memcpy
|
||
1255 .L328:
|
||
1256 00ae 4FF0000E mov lr, #0
|
||
1257 00b2 F446 mov ip, lr
|
||
1258 .L329:
|
||
1259 00b4 6A1E subs r2, r5, #1
|
||
1260 00b6 9445 cmp ip, r2
|
||
1261 00b8 7AD2 bcs .L371
|
||
1262 .L332:
|
||
1263 00ba 04EB8C01 add r1, r4, ip, lsl #2
|
||
1264 00be 0B46 mov r3, r1
|
||
1265 00c0 0431 adds r1, r1, #4
|
||
1266 .L330:
|
||
1267 00c2 F3EC017A vldmia.32 r3!, {s15}
|
||
1268 00c6 B1EC017A vldmia.32 r1!, {s14}
|
||
1269 00ca F4EEC77A vcmpe.f32 s15, s14
|
||
1270 00ce F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
1271 00d2 CCBF ite gt
|
||
1272 00d4 0120 movgt r0, #1
|
||
1273 00d6 0020 movle r0, #0
|
||
1274 00d8 B842 cmp r0, r7
|
||
1275 00da 0CF1010C add ip, ip, #1
|
||
1276 00de E9D1 bne .L329
|
||
1277 00e0 9445 cmp ip, r2
|
||
1278 00e2 03ED017A vstr.32 s14, [r3, #-4]
|
||
1279 00e6 41ED017A vstr.32 s15, [r1, #-4]
|
||
1280 00ea 65D2 bcs .L370
|
||
1281 00ec B646 mov lr, r6
|
||
1282 00ee E8E7 b .L330
|
||
1283 .L325:
|
||
1284 00f0 9142 cmp r1, r2
|
||
1285 00f2 03D0 beq .L334
|
||
1286 00f4 AA00 lsls r2, r5, #2
|
||
1287 00f6 2046 mov r0, r4
|
||
1288 00f8 FFF7FEFF bl memcpy
|
||
1289 .L334:
|
||
1290 00fc 6B08 lsrs r3, r5, #1
|
||
1291 00fe 5E1E subs r6, r3, #1
|
||
1292 0100 43B1 cbz r3, .L337
|
||
1293 .L335:
|
||
1294 0102 3246 mov r2, r6
|
||
1295 0104 7B78 ldrb r3, [r7, #1] @ zero_extendqisi2
|
||
ARM GAS /tmp/cckj2aNq.s page 23
|
||
|
||
|
||
1296 0106 2946 mov r1, r5
|
||
1297 0108 013E subs r6, r6, #1
|
||
1298 010a 2046 mov r0, r4
|
||
1299 010c FFF7FEFF bl arm_heapify
|
||
1300 0110 721C adds r2, r6, #1
|
||
1301 0112 F6D1 bne .L335
|
||
1302 .L337:
|
||
1303 0114 6E1E subs r6, r5, #1
|
||
1304 0116 58BF it pl
|
||
1305 0118 04EB8505 addpl r5, r4, r5, lsl #2
|
||
1306 011c B9D4 bmi .L319
|
||
1307 .L338:
|
||
1308 011e 55F8043D ldr r3, [r5, #-4]! @ float
|
||
1309 0122 2268 ldr r2, [r4] @ float
|
||
1310 0124 2A60 str r2, [r5] @ float
|
||
1311 0126 2360 str r3, [r4] @ float
|
||
1312 0128 7B78 ldrb r3, [r7, #1] @ zero_extendqisi2
|
||
1313 012a 3146 mov r1, r6
|
||
1314 012c 0022 movs r2, #0
|
||
1315 012e 013E subs r6, r6, #1
|
||
1316 0130 2046 mov r0, r4
|
||
1317 0132 FFF7FEFF bl arm_heapify
|
||
1318 0136 731C adds r3, r6, #1
|
||
1319 0138 F1D1 bne .L338
|
||
1320 013a BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
|
||
1321 .L324:
|
||
1322 013e 9142 cmp r1, r2
|
||
1323 0140 4678 ldrb r6, [r0, #1] @ zero_extendqisi2
|
||
1324 0142 03D0 beq .L339
|
||
1325 0144 AA00 lsls r2, r5, #2
|
||
1326 0146 2046 mov r0, r4
|
||
1327 0148 FFF7FEFF bl memcpy
|
||
1328 .L339:
|
||
1329 014c 002D cmp r5, #0
|
||
1330 014e A0D0 beq .L319
|
||
1331 0150 012D cmp r5, #1
|
||
1332 0152 9ED0 beq .L319
|
||
1333 0154 0834 adds r4, r4, #8
|
||
1334 0156 0127 movs r7, #1
|
||
1335 .L342:
|
||
1336 0158 231F subs r3, r4, #4
|
||
1337 015a 2246 mov r2, r4
|
||
1338 015c 3946 mov r1, r7
|
||
1339 015e 05E0 b .L341
|
||
1340 .L344:
|
||
1341 0160 0139 subs r1, r1, #1
|
||
1342 0162 82ED007A vstr.32 s14, [r2]
|
||
1343 0166 C3ED007A vstr.32 s15, [r3]
|
||
1344 016a 0CD0 beq .L345
|
||
1345 .L341:
|
||
1346 016c 72ED017A vldmdb.32 r2!, {s15}
|
||
1347 0170 33ED017A vldmdb.32 r3!, {s14}
|
||
1348 0174 B4EEE77A vcmpe.f32 s14, s15
|
||
1349 0178 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
1350 017c CCBF ite gt
|
||
1351 017e 0120 movgt r0, #1
|
||
1352 0180 0020 movle r0, #0
|
||
ARM GAS /tmp/cckj2aNq.s page 24
|
||
|
||
|
||
1353 0182 B042 cmp r0, r6
|
||
1354 0184 ECD0 beq .L344
|
||
1355 .L345:
|
||
1356 0186 0137 adds r7, r7, #1
|
||
1357 0188 BD42 cmp r5, r7
|
||
1358 018a 04F10404 add r4, r4, #4
|
||
1359 018e E3D1 bne .L342
|
||
1360 0190 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
|
||
1361 .L323:
|
||
1362 0194 9142 cmp r1, r2
|
||
1363 0196 03D0 beq .L347
|
||
1364 0198 AA00 lsls r2, r5, #2
|
||
1365 019a 2046 mov r0, r4
|
||
1366 019c FFF7FEFF bl memcpy
|
||
1367 .L347:
|
||
1368 01a0 7B78 ldrb r3, [r7, #1] @ zero_extendqisi2
|
||
1369 01a2 6A1E subs r2, r5, #1
|
||
1370 01a4 2046 mov r0, r4
|
||
1371 01a6 0021 movs r1, #0
|
||
1372 01a8 BDE8F047 pop {r4, r5, r6, r7, r8, r9, r10, lr}
|
||
1373 01ac FFF7FEBF b arm_quick_sort_core_f32
|
||
1374 .L371:
|
||
1375 01b0 BEF1010F cmp lr, #1
|
||
1376 01b4 7FF46DAF bne .L319
|
||
1377 .L370:
|
||
1378 01b8 1546 mov r5, r2
|
||
1379 01ba 4FF0000C mov ip, #0
|
||
1380 01be 012D cmp r5, #1
|
||
1381 01c0 02F1FF32 add r2, r2, #-1
|
||
1382 01c4 E646 mov lr, ip
|
||
1383 01c6 7FF478AF bne .L332
|
||
1384 01ca BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
|
||
1386 01ce 00BF .section .text.arm_sort_init_f32,"ax",%progbits
|
||
1387 .align 1
|
||
1388 .p2align 2,,3
|
||
1389 .global arm_sort_init_f32
|
||
1390 .syntax unified
|
||
1391 .thumb
|
||
1392 .thumb_func
|
||
1393 .fpu fpv4-sp-d16
|
||
1395 arm_sort_init_f32:
|
||
1396 @ args = 0, pretend = 0, frame = 0
|
||
1397 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1398 @ link register save eliminated.
|
||
1399 0000 0170 strb r1, [r0]
|
||
1400 0002 4270 strb r2, [r0, #1]
|
||
1401 0004 7047 bx lr
|
||
1403 0006 00BF .section .text.arm_spline_f32,"ax",%progbits
|
||
1404 .align 1
|
||
1405 .p2align 2,,3
|
||
1406 .global arm_spline_f32
|
||
1407 .syntax unified
|
||
1408 .thumb
|
||
1409 .thumb_func
|
||
1410 .fpu fpv4-sp-d16
|
||
1412 arm_spline_f32:
|
||
1413 @ args = 0, pretend = 0, frame = 16
|
||
ARM GAS /tmp/cckj2aNq.s page 25
|
||
|
||
|
||
1414 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1415 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
1416 0004 D0E90348 ldrd r4, r8, [r0, #12]
|
||
1417 0008 8668 ldr r6, [r0, #8]
|
||
1418 000a D0F804A0 ldr r10, [r0, #4]
|
||
1419 000e 04F18040 add r0, r4, #1073741824
|
||
1420 0012 85B0 sub sp, sp, #20
|
||
1421 0014 04F1FF39 add r9, r4, #-1
|
||
1422 0018 0138 subs r0, r0, #1
|
||
1423 001a 8400 lsls r4, r0, #2
|
||
1424 001c 08EBC905 add r5, r8, r9, lsl #3
|
||
1425 0020 08EB8000 add r0, r8, r0, lsl #2
|
||
1426 0024 B9F1000F cmp r9, #0
|
||
1427 0028 0296 str r6, [sp, #8]
|
||
1428 002a 0390 str r0, [sp, #12]
|
||
1429 002c 0195 str r5, [sp, #4]
|
||
1430 002e 7BDD ble .L384
|
||
1431 0030 0434 adds r4, r4, #4
|
||
1432 0032 D1ED007A vldr.32 s15, [r1]
|
||
1433 0036 AE46 mov lr, r5
|
||
1434 0038 04EB0A0B add fp, r4, r10
|
||
1435 003c 5746 mov r7, r10
|
||
1436 003e 4546 mov r5, r8
|
||
1437 0040 0446 mov r4, r0
|
||
1438 0042 0AF1040C add ip, r10, #4
|
||
1439 .L375:
|
||
1440 0046 BCEC017A vldmia.32 ip!, {s14}
|
||
1441 004a B4EEE77A vcmpe.f32 s14, s15
|
||
1442 004e F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
1443 0052 2ADB blt .L376
|
||
1444 0054 002B cmp r3, #0
|
||
1445 0056 C8BF it gt
|
||
1446 0058 081D addgt r0, r1, #4
|
||
1447 005a 01DC bgt .L378
|
||
1448 005c 25E0 b .L376
|
||
1449 .L392:
|
||
1450 005e 23B3 cbz r3, .L376
|
||
1451 .L378:
|
||
1452 0060 97ED007A vldr.32 s14, [r7]
|
||
1453 0064 D5ED006A vldr.32 s13, [r5]
|
||
1454 0068 94ED006A vldr.32 s12, [r4]
|
||
1455 006c 77EEC77A vsub.f32 s15, s15, s14
|
||
1456 0070 96ED007A vldr.32 s14, [r6]
|
||
1457 0074 A6EEA77A vfma.f32 s14, s13, s15
|
||
1458 0078 0146 mov r1, r0
|
||
1459 007a 013B subs r3, r3, #1
|
||
1460 007c DEED006A vldr.32 s13, [lr]
|
||
1461 0080 27EE866A vmul.f32 s12, s15, s12
|
||
1462 0084 67EEA66A vmul.f32 s13, s15, s13
|
||
1463 0088 A7EE867A vfma.f32 s14, s15, s12
|
||
1464 008c 66EEA76A vmul.f32 s13, s13, s15
|
||
1465 0090 A7EEA67A vfma.f32 s14, s15, s13
|
||
1466 0094 A2EC017A vstmia.32 r2!, {s14}
|
||
1467 0098 F0EC017A vldmia.32 r0!, {s15}
|
||
1468 009c 1CED017A vldr.32 s14, [ip, #-4]
|
||
1469 00a0 F4EEC77A vcmpe.f32 s15, s14
|
||
1470 00a4 F1EE10FA vmrs APSR_nzcv, FPSCR
|
||
ARM GAS /tmp/cckj2aNq.s page 26
|
||
|
||
|
||
1471 00a8 D9D9 bls .L392
|
||
1472 .L376:
|
||
1473 00aa E345 cmp fp, ip
|
||
1474 00ac 07F10407 add r7, r7, #4
|
||
1475 00b0 06F10406 add r6, r6, #4
|
||
1476 00b4 05F10405 add r5, r5, #4
|
||
1477 00b8 04F10404 add r4, r4, #4
|
||
1478 00bc 0EF1040E add lr, lr, #4
|
||
1479 00c0 C1D1 bne .L375
|
||
1480 .L374:
|
||
1481 00c2 002B cmp r3, #0
|
||
1482 00c4 2DDD ble .L373
|
||
1483 00c6 029C ldr r4, [sp, #8]
|
||
1484 00c8 019E ldr r6, [sp, #4]
|
||
1485 00ca 09F18040 add r0, r9, #1073741824
|
||
1486 00ce 0138 subs r0, r0, #1
|
||
1487 00d0 04EB8005 add r5, r4, r0, lsl #2
|
||
1488 00d4 039C ldr r4, [sp, #12]
|
||
1489 00d6 08EB8008 add r8, r8, r0, lsl #2
|
||
1490 00da 0AEB800A add r10, r10, r0, lsl #2
|
||
1491 00de 04EB8004 add r4, r4, r0, lsl #2
|
||
1492 00e2 06EB8000 add r0, r6, r0, lsl #2
|
||
1493 .L382:
|
||
1494 00e6 9AED007A vldr.32 s14, [r10]
|
||
1495 00ea F1EC017A vldmia.32 r1!, {s15}
|
||
1496 00ee D8ED006A vldr.32 s13, [r8]
|
||
1497 00f2 94ED006A vldr.32 s12, [r4]
|
||
1498 00f6 77EEC77A vsub.f32 s15, s15, s14
|
||
1499 00fa 95ED007A vldr.32 s14, [r5]
|
||
1500 00fe A6EEA77A vfma.f32 s14, s13, s15
|
||
1501 0102 013B subs r3, r3, #1
|
||
1502 0104 D0ED006A vldr.32 s13, [r0]
|
||
1503 0108 27EE866A vmul.f32 s12, s15, s12
|
||
1504 010c 67EEA66A vmul.f32 s13, s15, s13
|
||
1505 0110 A7EE867A vfma.f32 s14, s15, s12
|
||
1506 0114 66EEA76A vmul.f32 s13, s13, s15
|
||
1507 0118 A7EEA67A vfma.f32 s14, s15, s13
|
||
1508 011c A2EC017A vstmia.32 r2!, {s14}
|
||
1509 0120 E1D1 bne .L382
|
||
1510 .L373:
|
||
1511 0122 05B0 add sp, sp, #20
|
||
1512 @ sp needed
|
||
1513 0124 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
1514 .L384:
|
||
1515 0128 4FF00009 mov r9, #0
|
||
1516 012c C9E7 b .L374
|
||
1518 012e 00BF .section .text.arm_spline_init_f32,"ax",%progbits
|
||
1519 .align 1
|
||
1520 .p2align 2,,3
|
||
1521 .global arm_spline_init_f32
|
||
1522 .syntax unified
|
||
1523 .thumb
|
||
1524 .thumb_func
|
||
1525 .fpu fpv4-sp-d16
|
||
1527 arm_spline_init_f32:
|
||
1528 @ args = 12, pretend = 0, frame = 8
|
||
1529 @ frame_needed = 0, uses_anonymous_args = 0
|
||
ARM GAS /tmp/cckj2aNq.s page 27
|
||
|
||
|
||
1530 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
1531 0004 83B0 sub sp, sp, #12
|
||
1532 0006 C0E90123 strd r2, r3, [r0, #4]
|
||
1533 000a DDF83090 ldr r9, [sp, #48]
|
||
1534 000e 0E9D ldr r5, [sp, #56]
|
||
1535 0010 C0F80C90 str r9, [r0, #12]
|
||
1536 0014 09F18044 add r4, r9, #1073741824
|
||
1537 0018 013C subs r4, r4, #1
|
||
1538 001a 09F1FF3A add r10, r9, #-1
|
||
1539 001e 4FEA840C lsl ip, r4, #2
|
||
1540 0022 05EB8404 add r4, r5, r4, lsl #2
|
||
1541 0026 4FEACA05 lsl r5, r10, #3
|
||
1542 002a 0195 str r5, [sp, #4]
|
||
1543 002c 0029 cmp r1, #0
|
||
1544 002e 40F0B180 bne .L394
|
||
1545 0032 0E9E ldr r6, [sp, #56]
|
||
1546 0034 0025 movs r5, #0
|
||
1547 0036 3560 str r5, [r6] @ float
|
||
1548 .L395:
|
||
1549 0038 0025 movs r5, #0
|
||
1550 003a 2560 str r5, [r4] @ float
|
||
1551 003c D2ED017A vldr.32 s15, [r2, #4]
|
||
1552 0040 92ED007A vldr.32 s14, [r2]
|
||
1553 0044 B9F1020F cmp r9, #2
|
||
1554 0048 77EEC77A vsub.f32 s15, s15, s14
|
||
1555 004c 41DD ble .L400
|
||
1556 004e 0E9E ldr r6, [sp, #56]
|
||
1557 0050 F0EE084A vmov.f32 s9, #3.0e+0
|
||
1558 0054 B0EE003A vmov.f32 s6, #2.0e+0
|
||
1559 0058 02F1040E add lr, r2, #4
|
||
1560 005c 1F46 mov r7, r3
|
||
1561 005e 2546 mov r5, r4
|
||
1562 0060 02EB0C0B add fp, r2, ip
|
||
1563 .L399:
|
||
1564 0064 96ED007A vldr.32 s14, [r6]
|
||
1565 0068 DEED006A vldr.32 s13, [lr]
|
||
1566 006c 97ED006A vldr.32 s12, [r7]
|
||
1567 0070 D7ED025A vldr.32 s11, [r7, #8]
|
||
1568 0074 B0EE675A vmov.f32 s10, s15
|
||
1569 0078 27EEC77A vnmul.f32 s14, s15, s14
|
||
1570 007c DEED017A vldr.32 s15, [lr, #4]
|
||
1571 0080 77EEE67A vsub.f32 s15, s15, s13
|
||
1572 0084 0437 adds r7, r7, #4
|
||
1573 0086 77EE856A vadd.f32 s13, s15, s10
|
||
1574 008a 0436 adds r6, r6, #4
|
||
1575 008c A6EE837A vfma.f32 s14, s13, s6
|
||
1576 0090 0EF1040E add lr, lr, #4
|
||
1577 0094 0435 adds r5, r5, #4
|
||
1578 0096 D7ED006A vldr.32 s13, [r7]
|
||
1579 009a 75EEE65A vsub.f32 s11, s11, s13
|
||
1580 009e 76EEC66A vsub.f32 s13, s13, s12
|
||
1581 00a2 65EEA45A vmul.f32 s11, s11, s9
|
||
1582 00a6 66EEA46A vmul.f32 s13, s13, s9
|
||
1583 00aa C7EE873A vdiv.f32 s7, s15, s14
|
||
1584 00ae F345 cmp fp, lr
|
||
1585 00b0 85EEA76A vdiv.f32 s12, s11, s15
|
||
1586 00b4 86EE854A vdiv.f32 s8, s13, s10
|
||
ARM GAS /tmp/cckj2aNq.s page 28
|
||
|
||
|
||
1587 00b8 C6ED003A vstr.32 s7, [r6]
|
||
1588 00bc 55ED015A vldr.32 s11, [r5, #-4]
|
||
1589 00c0 76EE446A vsub.f32 s13, s12, s8
|
||
1590 00c4 E5EEC56A vfms.f32 s13, s11, s10
|
||
1591 00c8 86EE876A vdiv.f32 s12, s13, s14
|
||
1592 00cc 85ED006A vstr.32 s12, [r5]
|
||
1593 00d0 C8D1 bne .L399
|
||
1594 .L400:
|
||
1595 00d2 0029 cmp r1, #0
|
||
1596 00d4 57D1 bne .L411
|
||
1597 00d6 9FED3D7A vldr.32 s14, .L412
|
||
1598 00da 04EB0C01 add r1, r4, ip
|
||
1599 00de F0EE477A vmov.f32 s15, s14
|
||
1600 00e2 81ED007A vstr.32 s14, [r1]
|
||
1601 .L401:
|
||
1602 00e6 B9F10201 subs r1, r9, #2
|
||
1603 00ea 47D4 bmi .L405
|
||
1604 00ec 019D ldr r5, [sp, #4]
|
||
1605 00ee 0D9F ldr r7, [sp, #52]
|
||
1606 00f0 0E9E ldr r6, [sp, #56]
|
||
1607 00f2 0CEB8A0C add ip, ip, r10, lsl #2
|
||
1608 00f6 05EB8A05 add r5, r5, r10, lsl #2
|
||
1609 00fa 04EB8A04 add r4, r4, r10, lsl #2
|
||
1610 00fe 06EB8A06 add r6, r6, r10, lsl #2
|
||
1611 0102 BC44 add ip, ip, r7
|
||
1612 0104 07EB8A0A add r10, r7, r10, lsl #2
|
||
1613 0108 3D44 add r5, r5, r7
|
||
1614 010a 02EB8902 add r2, r2, r9, lsl #2
|
||
1615 010e 03EB8903 add r3, r3, r9, lsl #2
|
||
1616 0112 B0EE004A vmov.f32 s8, #2.0e+0
|
||
1617 0116 B0EE085A vmov.f32 s10, #3.0e+0
|
||
1618 .L404:
|
||
1619 011a 36ED017A vldmdb.32 r6!, {s14}
|
||
1620 011e 74ED016A vldmdb.32 r4!, {s13}
|
||
1621 0122 E7EE676A vfms.f32 s13, s14, s15
|
||
1622 0126 0139 subs r1, r1, #1
|
||
1623 0128 4F1C adds r7, r1, #1
|
||
1624 012a B0EE676A vmov.f32 s12, s15
|
||
1625 012e 6CED016A vstmdb.32 ip!, {s13}
|
||
1626 0132 32ED017A vldmdb.32 r2!, {s14}
|
||
1627 0136 73ED015A vldmdb.32 r3!, {s11}
|
||
1628 013a 52ED014A vldr.32 s9, [r2, #-4]
|
||
1629 013e A6EE846A vfma.f32 s12, s13, s8
|
||
1630 0142 37EE647A vsub.f32 s14, s14, s9
|
||
1631 0146 53ED016A vldr.32 s13, [r3, #-4]
|
||
1632 014a 26EE076A vmul.f32 s12, s12, s14
|
||
1633 014e 75EEE65A vsub.f32 s11, s11, s13
|
||
1634 0152 67EE054A vmul.f32 s9, s14, s10
|
||
1635 0156 C5EE876A vdiv.f32 s13, s11, s14
|
||
1636 015a 86EE057A vdiv.f32 s14, s12, s10
|
||
1637 015e 36EEC77A vsub.f32 s14, s13, s14
|
||
1638 0162 2AED017A vstmdb.32 r10!, {s14}
|
||
1639 0166 9CED007A vldr.32 s14, [ip]
|
||
1640 016a 77EEC77A vsub.f32 s15, s15, s14
|
||
1641 016e 87EEA47A vdiv.f32 s14, s15, s9
|
||
1642 0172 25ED017A vstmdb.32 r5!, {s14}
|
||
1643 0176 DCED007A vldr.32 s15, [ip]
|
||
ARM GAS /tmp/cckj2aNq.s page 29
|
||
|
||
|
||
1644 017a CED1 bne .L404
|
||
1645 .L405:
|
||
1646 017c 0D9B ldr r3, [sp, #52]
|
||
1647 017e 0361 str r3, [r0, #16]
|
||
1648 0180 03B0 add sp, sp, #12
|
||
1649 @ sp needed
|
||
1650 0182 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
1651 .L411:
|
||
1652 0186 0129 cmp r1, #1
|
||
1653 0188 0BD0 beq .L402
|
||
1654 018a 04EB0C01 add r1, r4, ip
|
||
1655 018e D1ED007A vldr.32 s15, [r1]
|
||
1656 0192 A8E7 b .L401
|
||
1657 .L394:
|
||
1658 0194 0129 cmp r1, #1
|
||
1659 0196 7FF44FAF bne .L395
|
||
1660 019a 0E9E ldr r6, [sp, #56]
|
||
1661 019c 0C4D ldr r5, .L412+4
|
||
1662 019e 3560 str r5, [r6] @ float
|
||
1663 01a0 4AE7 b .L395
|
||
1664 .L402:
|
||
1665 01a2 0E9D ldr r5, [sp, #56]
|
||
1666 01a4 ACF10401 sub r1, ip, #4
|
||
1667 01a8 0D44 add r5, r5, r1
|
||
1668 01aa 95ED007A vldr.32 s14, [r5]
|
||
1669 01ae F7EE007A vmov.f32 s15, #1.0e+0
|
||
1670 01b2 2144 add r1, r1, r4
|
||
1671 01b4 D1ED006A vldr.32 s13, [r1]
|
||
1672 01b8 37EE277A vadd.f32 s14, s14, s15
|
||
1673 01bc 04EB0C01 add r1, r4, ip
|
||
1674 01c0 C6EE877A vdiv.f32 s15, s13, s14
|
||
1675 01c4 C1ED007A vstr.32 s15, [r1]
|
||
1676 01c8 8DE7 b .L401
|
||
1677 .L413:
|
||
1678 01ca 00BF .align 2
|
||
1679 .L412:
|
||
1680 01cc 00000000 .word 0
|
||
1681 01d0 000080BF .word -1082130432
|
||
1683 .section .text.arm_weighted_sum_f32,"ax",%progbits
|
||
1684 .align 1
|
||
1685 .p2align 2,,3
|
||
1686 .global arm_weighted_sum_f32
|
||
1687 .syntax unified
|
||
1688 .thumb
|
||
1689 .thumb_func
|
||
1690 .fpu fpv4-sp-d16
|
||
1692 arm_weighted_sum_f32:
|
||
1693 @ args = 0, pretend = 0, frame = 0
|
||
1694 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1695 @ link register save eliminated.
|
||
1696 0000 9FED087A vldr.32 s14, .L419
|
||
1697 0004 B0EE470A vmov.f32 s0, s14
|
||
1698 0008 4AB1 cbz r2, .L415
|
||
1699 .L416:
|
||
1700 000a F1EC017A vldmia.32 r1!, {s15}
|
||
1701 000e F0EC016A vldmia.32 r0!, {s13}
|
||
1702 0012 013A subs r2, r2, #1
|
||
ARM GAS /tmp/cckj2aNq.s page 30
|
||
|
||
|
||
1703 0014 A6EEA70A vfma.f32 s0, s13, s15
|
||
1704 0018 37EE277A vadd.f32 s14, s14, s15
|
||
1705 001c F5D1 bne .L416
|
||
1706 .L415:
|
||
1707 001e 80EE070A vdiv.f32 s0, s0, s14
|
||
1708 0022 7047 bx lr
|
||
1709 .L420:
|
||
1710 .align 2
|
||
1711 .L419:
|
||
1712 0024 00000000 .word 0
|
||
1714 .section .text.arm_float_to_q15,"ax",%progbits
|
||
1715 .align 1
|
||
1716 .p2align 2,,3
|
||
1717 .global arm_float_to_q15
|
||
1718 .syntax unified
|
||
1719 .thumb
|
||
1720 .thumb_func
|
||
1721 .fpu fpv4-sp-d16
|
||
1723 arm_float_to_q15:
|
||
1724 @ args = 0, pretend = 0, frame = 0
|
||
1725 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1726 @ link register save eliminated.
|
||
1727 0000 5AB1 cbz r2, .L421
|
||
1728 .L423:
|
||
1729 0002 F0EC017A vldmia.32 r0!, {s15}
|
||
1730 0006 FEEEE87A vcvt.s32.f32 s15, s15, #15
|
||
1731 000a 013A subs r2, r2, #1
|
||
1732 000c 17EE903A vmov r3, s15 @ int
|
||
1733 .syntax unified
|
||
1734 @ 294 "Middlewares/Third_Party/ARM_CMSIS/CMSIS/DSP/Source/SupportFunctions/arm_float_to_q15.c" 1
|
||
1735 0010 03F30F03 ssat r3, #16, r3
|
||
1736 @ 0 "" 2
|
||
1737 .thumb
|
||
1738 .syntax unified
|
||
1739 0014 21F8023B strh r3, [r1], #2 @ movhi
|
||
1740 0018 F3D1 bne .L423
|
||
1741 .L421:
|
||
1742 001a 7047 bx lr
|
||
1744 .global __aeabi_f2lz
|
||
1745 .section .text.arm_float_to_q31,"ax",%progbits
|
||
1746 .align 1
|
||
1747 .p2align 2,,3
|
||
1748 .global arm_float_to_q31
|
||
1749 .syntax unified
|
||
1750 .thumb
|
||
1751 .thumb_func
|
||
1752 .fpu fpv4-sp-d16
|
||
1754 arm_float_to_q31:
|
||
1755 @ args = 0, pretend = 0, frame = 0
|
||
1756 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1757 0000 22B3 cbz r2, .L440
|
||
1758 0002 F8B5 push {r3, r4, r5, r6, r7, lr}
|
||
1759 0004 2DED028B vpush.64 {d8}
|
||
1760 0008 9FED118A vldr.32 s16, .L443
|
||
1761 000c 0646 mov r6, r0
|
||
1762 000e 1446 mov r4, r2
|
||
1763 0010 0D1F subs r5, r1, #4
|
||
ARM GAS /tmp/cckj2aNq.s page 31
|
||
|
||
|
||
1764 0012 6FF00047 mvn r7, #-2147483648
|
||
1765 .L432:
|
||
1766 0016 F6EC017A vldmia.32 r6!, {s15}
|
||
1767 001a 67EE887A vmul.f32 s15, s15, s16
|
||
1768 001e 17EE900A vmov r0, s15
|
||
1769 0022 FFF7FEFF bl __aeabi_f2lz
|
||
1770 0026 B1EBE07F cmp r1, r0, asr #31
|
||
1771 002a 87EAE173 eor r3, r7, r1, asr #31
|
||
1772 002e 06D0 beq .L430
|
||
1773 0030 013C subs r4, r4, #1
|
||
1774 0032 45F8043F str r3, [r5, #4]!
|
||
1775 0036 EED1 bne .L432
|
||
1776 0038 BDEC028B vldm sp!, {d8}
|
||
1777 003c F8BD pop {r3, r4, r5, r6, r7, pc}
|
||
1778 .L430:
|
||
1779 003e 013C subs r4, r4, #1
|
||
1780 0040 45F8040F str r0, [r5, #4]!
|
||
1781 0044 E7D1 bne .L432
|
||
1782 0046 BDEC028B vldm sp!, {d8}
|
||
1783 004a F8BD pop {r3, r4, r5, r6, r7, pc}
|
||
1784 .L440:
|
||
1785 004c 7047 bx lr
|
||
1786 .L444:
|
||
1787 004e 00BF .align 2
|
||
1788 .L443:
|
||
1789 0050 0000004F .word 1325400064
|
||
1791 .section .text.arm_float_to_q7,"ax",%progbits
|
||
1792 .align 1
|
||
1793 .p2align 2,,3
|
||
1794 .global arm_float_to_q7
|
||
1795 .syntax unified
|
||
1796 .thumb
|
||
1797 .thumb_func
|
||
1798 .fpu fpv4-sp-d16
|
||
1800 arm_float_to_q7:
|
||
1801 @ args = 0, pretend = 0, frame = 0
|
||
1802 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1803 @ link register save eliminated.
|
||
1804 0000 62B1 cbz r2, .L445
|
||
1805 0002 0A44 add r2, r2, r1
|
||
1806 .L447:
|
||
1807 0004 F0EC017A vldmia.32 r0!, {s15}
|
||
1808 0008 FEEEEC7A vcvt.s32.f32 s15, s15, #7
|
||
1809 000c 17EE903A vmov r3, s15 @ int
|
||
1810 .syntax unified
|
||
1811 @ 316 "Middlewares/Third_Party/ARM_CMSIS/CMSIS/DSP/Source/SupportFunctions/arm_float_to_q7.c" 1
|
||
1812 0010 03F30703 ssat r3, #8, r3
|
||
1813 @ 0 "" 2
|
||
1814 .thumb
|
||
1815 .syntax unified
|
||
1816 0014 01F8013B strb r3, [r1], #1
|
||
1817 0018 9142 cmp r1, r2
|
||
1818 001a F3D1 bne .L447
|
||
1819 .L445:
|
||
1820 001c 7047 bx lr
|
||
1822 001e 00BF .section .text.arm_q15_to_float,"ax",%progbits
|
||
1823 .align 1
|
||
ARM GAS /tmp/cckj2aNq.s page 32
|
||
|
||
|
||
1824 .p2align 2,,3
|
||
1825 .global arm_q15_to_float
|
||
1826 .syntax unified
|
||
1827 .thumb
|
||
1828 .thumb_func
|
||
1829 .fpu fpv4-sp-d16
|
||
1831 arm_q15_to_float:
|
||
1832 @ args = 0, pretend = 0, frame = 0
|
||
1833 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1834 @ link register save eliminated.
|
||
1835 0000 6AB1 cbz r2, .L452
|
||
1836 0002 9FED077A vldr.32 s14, .L459
|
||
1837 .L454:
|
||
1838 0006 30F9023B ldrsh r3, [r0], #2
|
||
1839 000a 07EE903A vmov s15, r3 @ int
|
||
1840 000e F8EEE77A vcvt.f32.s32 s15, s15
|
||
1841 0012 013A subs r2, r2, #1
|
||
1842 0014 67EE877A vmul.f32 s15, s15, s14
|
||
1843 0018 E1EC017A vstmia.32 r1!, {s15}
|
||
1844 001c F3D1 bne .L454
|
||
1845 .L452:
|
||
1846 001e 7047 bx lr
|
||
1847 .L460:
|
||
1848 .align 2
|
||
1849 .L459:
|
||
1850 0020 00000038 .word 939524096
|
||
1852 .section .text.arm_q15_to_q31,"ax",%progbits
|
||
1853 .align 1
|
||
1854 .p2align 2,,3
|
||
1855 .global arm_q15_to_q31
|
||
1856 .syntax unified
|
||
1857 .thumb
|
||
1858 .thumb_func
|
||
1859 .fpu fpv4-sp-d16
|
||
1861 arm_q15_to_q31:
|
||
1862 @ args = 0, pretend = 0, frame = 0
|
||
1863 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1864 @ link register save eliminated.
|
||
1865 0000 3AB1 cbz r2, .L461
|
||
1866 .L463:
|
||
1867 0002 30F9023B ldrsh r3, [r0], #2
|
||
1868 0006 013A subs r2, r2, #1
|
||
1869 0008 4FEA0343 lsl r3, r3, #16
|
||
1870 000c 41F8043B str r3, [r1], #4
|
||
1871 0010 F7D1 bne .L463
|
||
1872 .L461:
|
||
1873 0012 7047 bx lr
|
||
1875 .section .text.arm_q15_to_q7,"ax",%progbits
|
||
1876 .align 1
|
||
1877 .p2align 2,,3
|
||
1878 .global arm_q15_to_q7
|
||
1879 .syntax unified
|
||
1880 .thumb
|
||
1881 .thumb_func
|
||
1882 .fpu fpv4-sp-d16
|
||
1884 arm_q15_to_q7:
|
||
1885 @ args = 0, pretend = 0, frame = 0
|
||
ARM GAS /tmp/cckj2aNq.s page 33
|
||
|
||
|
||
1886 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1887 @ link register save eliminated.
|
||
1888 0000 3AB1 cbz r2, .L468
|
||
1889 0002 0A44 add r2, r2, r1
|
||
1890 .L470:
|
||
1891 0004 30F9023B ldrsh r3, [r0], #2
|
||
1892 0008 1B12 asrs r3, r3, #8
|
||
1893 000a 01F8013B strb r3, [r1], #1
|
||
1894 000e 9142 cmp r1, r2
|
||
1895 0010 F8D1 bne .L470
|
||
1896 .L468:
|
||
1897 0012 7047 bx lr
|
||
1899 .section .text.arm_q31_to_float,"ax",%progbits
|
||
1900 .align 1
|
||
1901 .p2align 2,,3
|
||
1902 .global arm_q31_to_float
|
||
1903 .syntax unified
|
||
1904 .thumb
|
||
1905 .thumb_func
|
||
1906 .fpu fpv4-sp-d16
|
||
1908 arm_q31_to_float:
|
||
1909 @ args = 0, pretend = 0, frame = 0
|
||
1910 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1911 @ link register save eliminated.
|
||
1912 0000 5AB1 cbz r2, .L475
|
||
1913 0002 9FED067A vldr.32 s14, .L482
|
||
1914 .L477:
|
||
1915 0006 F0EC017A vldmia.32 r0!, {s15} @ int
|
||
1916 000a F8EEE77A vcvt.f32.s32 s15, s15
|
||
1917 000e 013A subs r2, r2, #1
|
||
1918 0010 67EE877A vmul.f32 s15, s15, s14
|
||
1919 0014 E1EC017A vstmia.32 r1!, {s15}
|
||
1920 0018 F5D1 bne .L477
|
||
1921 .L475:
|
||
1922 001a 7047 bx lr
|
||
1923 .L483:
|
||
1924 .align 2
|
||
1925 .L482:
|
||
1926 001c 00000030 .word 805306368
|
||
1928 .section .text.arm_q31_to_q15,"ax",%progbits
|
||
1929 .align 1
|
||
1930 .p2align 2,,3
|
||
1931 .global arm_q31_to_q15
|
||
1932 .syntax unified
|
||
1933 .thumb
|
||
1934 .thumb_func
|
||
1935 .fpu fpv4-sp-d16
|
||
1937 arm_q31_to_q15:
|
||
1938 @ args = 0, pretend = 0, frame = 0
|
||
1939 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1940 @ link register save eliminated.
|
||
1941 0000 3AB1 cbz r2, .L484
|
||
1942 .L486:
|
||
1943 0002 50F8043B ldr r3, [r0], #4
|
||
1944 0006 013A subs r2, r2, #1
|
||
1945 0008 4FEA2343 asr r3, r3, #16
|
||
1946 000c 21F8023B strh r3, [r1], #2 @ movhi
|
||
ARM GAS /tmp/cckj2aNq.s page 34
|
||
|
||
|
||
1947 0010 F7D1 bne .L486
|
||
1948 .L484:
|
||
1949 0012 7047 bx lr
|
||
1951 .section .text.arm_q31_to_q7,"ax",%progbits
|
||
1952 .align 1
|
||
1953 .p2align 2,,3
|
||
1954 .global arm_q31_to_q7
|
||
1955 .syntax unified
|
||
1956 .thumb
|
||
1957 .thumb_func
|
||
1958 .fpu fpv4-sp-d16
|
||
1960 arm_q31_to_q7:
|
||
1961 @ args = 0, pretend = 0, frame = 0
|
||
1962 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1963 @ link register save eliminated.
|
||
1964 0000 3AB1 cbz r2, .L491
|
||
1965 0002 0A44 add r2, r2, r1
|
||
1966 .L493:
|
||
1967 0004 50F8043B ldr r3, [r0], #4
|
||
1968 0008 1B16 asrs r3, r3, #24
|
||
1969 000a 01F8013B strb r3, [r1], #1
|
||
1970 000e 9142 cmp r1, r2
|
||
1971 0010 F8D1 bne .L493
|
||
1972 .L491:
|
||
1973 0012 7047 bx lr
|
||
1975 .section .text.arm_q7_to_float,"ax",%progbits
|
||
1976 .align 1
|
||
1977 .p2align 2,,3
|
||
1978 .global arm_q7_to_float
|
||
1979 .syntax unified
|
||
1980 .thumb
|
||
1981 .thumb_func
|
||
1982 .fpu fpv4-sp-d16
|
||
1984 arm_q7_to_float:
|
||
1985 @ args = 0, pretend = 0, frame = 0
|
||
1986 @ frame_needed = 0, uses_anonymous_args = 0
|
||
1987 @ link register save eliminated.
|
||
1988 0000 72B1 cbz r2, .L498
|
||
1989 0002 9FED087A vldr.32 s14, .L505
|
||
1990 0006 0244 add r2, r2, r0
|
||
1991 .L500:
|
||
1992 0008 10F9013B ldrsb r3, [r0], #1
|
||
1993 000c 07EE903A vmov s15, r3 @ int
|
||
1994 0010 F8EEE77A vcvt.f32.s32 s15, s15
|
||
1995 0014 9042 cmp r0, r2
|
||
1996 0016 67EE877A vmul.f32 s15, s15, s14
|
||
1997 001a E1EC017A vstmia.32 r1!, {s15}
|
||
1998 001e F3D1 bne .L500
|
||
1999 .L498:
|
||
2000 0020 7047 bx lr
|
||
2001 .L506:
|
||
2002 0022 00BF .align 2
|
||
2003 .L505:
|
||
2004 0024 0000003C .word 1006632960
|
||
2006 .section .text.arm_q7_to_q15,"ax",%progbits
|
||
2007 .align 1
|
||
2008 .p2align 2,,3
|
||
ARM GAS /tmp/cckj2aNq.s page 35
|
||
|
||
|
||
2009 .global arm_q7_to_q15
|
||
2010 .syntax unified
|
||
2011 .thumb
|
||
2012 .thumb_func
|
||
2013 .fpu fpv4-sp-d16
|
||
2015 arm_q7_to_q15:
|
||
2016 @ args = 0, pretend = 0, frame = 0
|
||
2017 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2018 @ link register save eliminated.
|
||
2019 0000 3AB1 cbz r2, .L507
|
||
2020 0002 0244 add r2, r2, r0
|
||
2021 .L509:
|
||
2022 0004 10F9013B ldrsb r3, [r0], #1
|
||
2023 0008 1B02 lsls r3, r3, #8
|
||
2024 000a 9042 cmp r0, r2
|
||
2025 000c 21F8023B strh r3, [r1], #2 @ movhi
|
||
2026 0010 F8D1 bne .L509
|
||
2027 .L507:
|
||
2028 0012 7047 bx lr
|
||
2030 .section .text.arm_q7_to_q31,"ax",%progbits
|
||
2031 .align 1
|
||
2032 .p2align 2,,3
|
||
2033 .global arm_q7_to_q31
|
||
2034 .syntax unified
|
||
2035 .thumb
|
||
2036 .thumb_func
|
||
2037 .fpu fpv4-sp-d16
|
||
2039 arm_q7_to_q31:
|
||
2040 @ args = 0, pretend = 0, frame = 0
|
||
2041 @ frame_needed = 0, uses_anonymous_args = 0
|
||
2042 @ link register save eliminated.
|
||
2043 0000 3AB1 cbz r2, .L514
|
||
2044 0002 0244 add r2, r2, r0
|
||
2045 .L516:
|
||
2046 0004 10F9013B ldrsb r3, [r0], #1
|
||
2047 0008 1B06 lsls r3, r3, #24
|
||
2048 000a 9042 cmp r0, r2
|
||
2049 000c 41F8043B str r3, [r1], #4
|
||
2050 0010 F8D1 bne .L516
|
||
2051 .L514:
|
||
2052 0012 7047 bx lr
|
||
2054 .ident "GCC: (15:10.3-2021.07-4) 10.3.1 20210621 (release)"
|
||
ARM GAS /tmp/cckj2aNq.s page 36
|
||
|
||
|
||
DEFINED SYMBOLS
|
||
*ABS*:0000000000000000 SupportFunctions.c
|
||
/tmp/cckj2aNq.s:16 .text.arm_heapify:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:24 .text.arm_heapify:0000000000000000 arm_heapify
|
||
/tmp/cckj2aNq.s:84 .text.arm_merge_sort_core_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:91 .text.arm_merge_sort_core_f32:0000000000000000 arm_merge_sort_core_f32
|
||
/tmp/cckj2aNq.s:183 .text.arm_quick_sort_core_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:190 .text.arm_quick_sort_core_f32:0000000000000000 arm_quick_sort_core_f32
|
||
/tmp/cckj2aNq.s:295 .text.arm_barycenter_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:303 .text.arm_barycenter_f32:0000000000000000 arm_barycenter_f32
|
||
/tmp/cckj2aNq.s:359 .text.arm_barycenter_f32:0000000000000074 $d
|
||
/tmp/cckj2aNq.s:362 .text.arm_bitonic_sort_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:370 .text.arm_bitonic_sort_f32:0000000000000000 arm_bitonic_sort_f32
|
||
/tmp/cckj2aNq.s:477 .text.arm_bubble_sort_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:485 .text.arm_bubble_sort_f32:0000000000000000 arm_bubble_sort_f32
|
||
/tmp/cckj2aNq.s:544 .text.arm_copy_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:552 .text.arm_copy_f32:0000000000000000 arm_copy_f32
|
||
/tmp/cckj2aNq.s:566 .text.arm_copy_q15:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:574 .text.arm_copy_q15:0000000000000000 arm_copy_q15
|
||
/tmp/cckj2aNq.s:618 .text.arm_copy_q31:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:626 .text.arm_copy_q31:0000000000000000 arm_copy_q31
|
||
/tmp/cckj2aNq.s:686 .text.arm_copy_q7:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:694 .text.arm_copy_q7:0000000000000000 arm_copy_q7
|
||
/tmp/cckj2aNq.s:749 .text.arm_fill_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:757 .text.arm_fill_f32:0000000000000000 arm_fill_f32
|
||
/tmp/cckj2aNq.s:770 .text.arm_fill_q15:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:778 .text.arm_fill_q15:0000000000000000 arm_fill_q15
|
||
/tmp/cckj2aNq.s:819 .text.arm_fill_q31:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:827 .text.arm_fill_q31:0000000000000000 arm_fill_q31
|
||
/tmp/cckj2aNq.s:883 .text.arm_fill_q7:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:891 .text.arm_fill_q7:0000000000000000 arm_fill_q7
|
||
/tmp/cckj2aNq.s:904 .text.arm_heap_sort_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:912 .text.arm_heap_sort_f32:0000000000000000 arm_heap_sort_f32
|
||
/tmp/cckj2aNq.s:958 .text.arm_insertion_sort_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:966 .text.arm_insertion_sort_f32:0000000000000000 arm_insertion_sort_f32
|
||
/tmp/cckj2aNq.s:1012 .text.arm_merge_sort_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1020 .text.arm_merge_sort_f32:0000000000000000 arm_merge_sort_f32
|
||
/tmp/cckj2aNq.s:1052 .text.arm_merge_sort_init_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1060 .text.arm_merge_sort_init_f32:0000000000000000 arm_merge_sort_init_f32
|
||
/tmp/cckj2aNq.s:1069 .text.arm_quick_sort_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1077 .text.arm_quick_sort_f32:0000000000000000 arm_quick_sort_f32
|
||
/tmp/cckj2aNq.s:1098 .text.arm_selection_sort_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1106 .text.arm_selection_sort_f32:0000000000000000 arm_selection_sort_f32
|
||
/tmp/cckj2aNq.s:1165 .text.arm_sort_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1173 .text.arm_sort_f32:0000000000000000 arm_sort_f32
|
||
/tmp/cckj2aNq.s:1185 .text.arm_sort_f32:0000000000000014 $d
|
||
/tmp/cckj2aNq.s:1191 .text.arm_sort_f32:000000000000001a $t
|
||
/tmp/cckj2aNq.s:1387 .text.arm_sort_init_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1395 .text.arm_sort_init_f32:0000000000000000 arm_sort_init_f32
|
||
/tmp/cckj2aNq.s:1404 .text.arm_spline_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1412 .text.arm_spline_f32:0000000000000000 arm_spline_f32
|
||
/tmp/cckj2aNq.s:1519 .text.arm_spline_init_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1527 .text.arm_spline_init_f32:0000000000000000 arm_spline_init_f32
|
||
/tmp/cckj2aNq.s:1680 .text.arm_spline_init_f32:00000000000001cc $d
|
||
/tmp/cckj2aNq.s:1684 .text.arm_weighted_sum_f32:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1692 .text.arm_weighted_sum_f32:0000000000000000 arm_weighted_sum_f32
|
||
/tmp/cckj2aNq.s:1712 .text.arm_weighted_sum_f32:0000000000000024 $d
|
||
ARM GAS /tmp/cckj2aNq.s page 37
|
||
|
||
|
||
/tmp/cckj2aNq.s:1715 .text.arm_float_to_q15:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1723 .text.arm_float_to_q15:0000000000000000 arm_float_to_q15
|
||
/tmp/cckj2aNq.s:1746 .text.arm_float_to_q31:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1754 .text.arm_float_to_q31:0000000000000000 arm_float_to_q31
|
||
/tmp/cckj2aNq.s:1789 .text.arm_float_to_q31:0000000000000050 $d
|
||
/tmp/cckj2aNq.s:1792 .text.arm_float_to_q7:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1800 .text.arm_float_to_q7:0000000000000000 arm_float_to_q7
|
||
/tmp/cckj2aNq.s:1823 .text.arm_q15_to_float:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1831 .text.arm_q15_to_float:0000000000000000 arm_q15_to_float
|
||
/tmp/cckj2aNq.s:1850 .text.arm_q15_to_float:0000000000000020 $d
|
||
/tmp/cckj2aNq.s:1853 .text.arm_q15_to_q31:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1861 .text.arm_q15_to_q31:0000000000000000 arm_q15_to_q31
|
||
/tmp/cckj2aNq.s:1876 .text.arm_q15_to_q7:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1884 .text.arm_q15_to_q7:0000000000000000 arm_q15_to_q7
|
||
/tmp/cckj2aNq.s:1900 .text.arm_q31_to_float:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1908 .text.arm_q31_to_float:0000000000000000 arm_q31_to_float
|
||
/tmp/cckj2aNq.s:1926 .text.arm_q31_to_float:000000000000001c $d
|
||
/tmp/cckj2aNq.s:1929 .text.arm_q31_to_q15:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1937 .text.arm_q31_to_q15:0000000000000000 arm_q31_to_q15
|
||
/tmp/cckj2aNq.s:1952 .text.arm_q31_to_q7:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1960 .text.arm_q31_to_q7:0000000000000000 arm_q31_to_q7
|
||
/tmp/cckj2aNq.s:1976 .text.arm_q7_to_float:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:1984 .text.arm_q7_to_float:0000000000000000 arm_q7_to_float
|
||
/tmp/cckj2aNq.s:2004 .text.arm_q7_to_float:0000000000000024 $d
|
||
/tmp/cckj2aNq.s:2007 .text.arm_q7_to_q15:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:2015 .text.arm_q7_to_q15:0000000000000000 arm_q7_to_q15
|
||
/tmp/cckj2aNq.s:2031 .text.arm_q7_to_q31:0000000000000000 $t
|
||
/tmp/cckj2aNq.s:2039 .text.arm_q7_to_q31:0000000000000000 arm_q7_to_q31
|
||
|
||
UNDEFINED SYMBOLS
|
||
memset
|
||
memcpy
|
||
__aeabi_f2lz
|