Files
bassofono/codice/build/FIRFilterCode.lst
2022-01-13 01:10:52 +01:00

2473 lines
82 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
ARM GAS /tmp/cczWz03L.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 "FIRFilterCode.c"
14 .text
15 .global __aeabi_i2d
16 .global __aeabi_dmul
17 .global __aeabi_dsub
18 .global __aeabi_dcmpgt
19 .global __aeabi_dcmplt
20 .global __aeabi_ddiv
21 .global __aeabi_dcmpeq
22 .global __aeabi_dadd
23 .section .text.RectWinFIR,"ax",%progbits
24 .align 1
25 .p2align 2,,3
26 .global RectWinFIR
27 .arch armv7e-m
28 .syntax unified
29 .thumb
30 .thumb_func
31 .fpu fpv4-sp-d16
33 RectWinFIR:
34 @ args = 0, pretend = 0, frame = 16
35 @ frame_needed = 0, uses_anonymous_args = 0
36 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
37 0004 2DED088B vpush.64 {d8, d9, d10, d11}
38 0008 85B0 sub sp, sp, #20
39 000a 0446 mov r4, r0
40 000c 0091 str r1, [sp]
41 000e 5BEC10AB vmov r10, fp, d0
42 0012 51EC110B vmov r0, r1, d1
43 0016 042A cmp r2, #4
44 0018 1BD8 bhi .L1
45 001a DFE812F0 tbh [pc, r2, lsl #1]
46 .L4:
47 001e 1F00 .2byte (.L8-.L4)/2
48 0020 DC00 .2byte (.L7-.L4)/2
49 0022 6600 .2byte (.L6-.L4)/2
50 0024 4301 .2byte (.L5-.L4)/2
51 0026 0500 .2byte (.L3-.L4)/2
52 .p2align 1
53 .L3:
54 0028 009B ldr r3, [sp]
55 002a 002B cmp r3, #0
56 002c 04DD ble .L43
57 002e DA00 lsls r2, r3, #3
58 0030 0021 movs r1, #0
ARM GAS /tmp/cczWz03L.s page 2
59 0032 2046 mov r0, r4
60 0034 FFF7FEFF bl memset
61 .L43:
62 0038 009B ldr r3, [sp]
63 003a 03F1FF3B add fp, r3, #-1
64 003e 0BEBDB7B add fp, fp, fp, lsr #31
65 0042 B74B ldr r3, .L69+32
66 0044 4FEA6B0B asr fp, fp, #1
67 0048 0022 movs r2, #0
68 004a 04EBCB04 add r4, r4, fp, lsl #3
69 004e C4E90023 strd r2, [r4]
70 .L1:
71 0052 05B0 add sp, sp, #20
72 @ sp needed
73 0054 BDEC088B vldm sp!, {d8-d11}
74 0058 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
75 .L8:
76 005c 009B ldr r3, [sp]
77 005e 002B cmp r3, #0
78 0060 F7DD ble .L1
79 0062 581E subs r0, r3, #1
80 0064 FFF7FEFF bl __aeabi_i2d
81 0068 AE4B ldr r3, .L69+36
82 006a 0022 movs r2, #0
83 006c FFF7FEFF bl __aeabi_dmul
84 0070 0025 movs r5, #0
85 0072 8046 mov r8, r0
86 0074 8946 mov r9, r1
87 0076 13E0 b .L14
88 .L11:
89 0078 47EC106B vmov d0, r6, r7
90 007c FFF7FEFF bl sin
91 0080 3246 mov r2, r6
92 0082 3B46 mov r3, r7
93 0084 51EC100B vmov r0, r1, d0
94 0088 FFF7FEFF bl __aeabi_ddiv
95 008c 5246 mov r2, r10
96 008e 5B46 mov r3, fp
97 0090 FFF7FEFF bl __aeabi_dmul
98 .L13:
99 0094 009B ldr r3, [sp]
100 0096 0135 adds r5, r5, #1
101 0098 AB42 cmp r3, r5
102 009a E4E80201 strd r0, [r4], #8
103 009e D8D0 beq .L1
104 .L14:
105 00a0 2846 mov r0, r5
106 00a2 FFF7FEFF bl __aeabi_i2d
107 00a6 4246 mov r2, r8
108 00a8 4B46 mov r3, r9
109 00aa FFF7FEFF bl __aeabi_dsub
110 00ae 5246 mov r2, r10
111 00b0 5B46 mov r3, fp
112 00b2 FFF7FEFF bl __aeabi_dmul
113 00b6 92A3 adr r3, .L69
114 00b8 D3E90023 ldrd r2, [r3]
115 00bc FFF7FEFF bl __aeabi_dmul
ARM GAS /tmp/cczWz03L.s page 3
116 00c0 91A3 adr r3, .L69+8
117 00c2 D3E90023 ldrd r2, [r3]
118 00c6 0646 mov r6, r0
119 00c8 0F46 mov r7, r1
120 00ca FFF7FEFF bl __aeabi_dcmpgt
121 00ce 0028 cmp r0, #0
122 00d0 D2D0 beq .L11
123 00d2 8FA3 adr r3, .L69+16
124 00d4 D3E90023 ldrd r2, [r3]
125 00d8 3046 mov r0, r6
126 00da 3946 mov r1, r7
127 00dc FFF7FEFF bl __aeabi_dcmplt
128 00e0 0028 cmp r0, #0
129 00e2 C9D0 beq .L11
130 00e4 5046 mov r0, r10
131 00e6 5946 mov r1, fp
132 00e8 D4E7 b .L13
133 .L6:
134 00ea 8E4B ldr r3, .L69+36
135 00ec 0022 movs r2, #0
136 00ee FFF7FEFF bl __aeabi_dmul
137 00f2 0646 mov r6, r0
138 00f4 0F46 mov r7, r1
139 00f6 3246 mov r2, r6
140 00f8 3B46 mov r3, r7
141 00fa 5046 mov r0, r10
142 00fc 5946 mov r1, fp
143 00fe FFF7FEFF bl __aeabi_dsub
144 0102 5B46 mov r3, fp
145 0104 8046 mov r8, r0
146 0106 8946 mov r9, r1
147 0108 5246 mov r2, r10
148 010a 3046 mov r0, r6
149 010c 3946 mov r1, r7
150 010e FFF7FEFF bl __aeabi_dadd
151 0112 009B ldr r3, [sp]
152 0114 002B cmp r3, #0
153 0116 49EC198B vmov d9, r8, r9
154 011a 41EC1A0B vmov d10, r0, r1
155 011e 98DD ble .L1
156 0120 581E subs r0, r3, #1
157 0122 FFF7FEFF bl __aeabi_i2d
158 0126 7F4B ldr r3, .L69+36
159 0128 0022 movs r2, #0
160 012a FFF7FEFF bl __aeabi_dmul
161 012e 0025 movs r5, #0
162 0130 2346 mov r3, r4
163 0132 9FED798B vldr.64 d8, .L69+24
164 0136 2C46 mov r4, r5
165 0138 0FF2C41B adr fp, .L69
166 013c DBE900AB ldrd r10, [fp]
167 0140 8046 mov r8, r0
168 0142 8946 mov r9, r1
169 0144 1D46 mov r5, r3
170 0146 08E0 b .L32
171 .L67:
172 0148 85ED008B vstr.64 d8, [r5]
ARM GAS /tmp/cczWz03L.s page 4
173 .L31:
174 014c 009B ldr r3, [sp]
175 014e 0134 adds r4, r4, #1
176 0150 A342 cmp r3, r4
177 0152 05F10805 add r5, r5, #8
178 0156 3FF47CAF beq .L1
179 .L32:
180 015a 2046 mov r0, r4
181 015c FFF7FEFF bl __aeabi_i2d
182 0160 4246 mov r2, r8
183 0162 4B46 mov r3, r9
184 0164 FFF7FEFF bl __aeabi_dsub
185 0168 0022 movs r2, #0
186 016a 0023 movs r3, #0
187 016c 0646 mov r6, r0
188 016e 0F46 mov r7, r1
189 0170 FFF7FEFF bl __aeabi_dcmpeq
190 0174 0028 cmp r0, #0
191 0176 E7D1 bne .L67
192 0178 3246 mov r2, r6
193 017a 3B46 mov r3, r7
194 017c 51EC190B vmov r0, r1, d9
195 0180 FFF7FEFF bl __aeabi_dmul
196 0184 5246 mov r2, r10
197 0186 5B46 mov r3, fp
198 0188 FFF7FEFF bl __aeabi_dmul
199 018c 41EC100B vmov d0, r0, r1
200 0190 FFF7FEFF bl cos
201 0194 3246 mov r2, r6
202 0196 3B46 mov r3, r7
203 0198 51EC1A0B vmov r0, r1, d10
204 019c 8DED020B vstr.64 d0, [sp, #8]
205 01a0 FFF7FEFF bl __aeabi_dmul
206 01a4 5246 mov r2, r10
207 01a6 5B46 mov r3, fp
208 01a8 FFF7FEFF bl __aeabi_dmul
209 01ac 41EC100B vmov d0, r0, r1
210 01b0 FFF7FEFF bl cos
211 01b4 DDE90201 ldrd r0, [sp, #8]
212 01b8 53EC102B vmov r2, r3, d0
213 01bc FFF7FEFF bl __aeabi_dsub
214 01c0 5246 mov r2, r10
215 01c2 5B46 mov r3, fp
216 01c4 FFF7FEFF bl __aeabi_ddiv
217 01c8 3246 mov r2, r6
218 01ca 3B46 mov r3, r7
219 01cc FFF7FEFF bl __aeabi_ddiv
220 01d0 C5E90001 strd r0, [r5]
221 01d4 BAE7 b .L31
222 .L7:
223 01d6 009A ldr r2, [sp]
224 01d8 002A cmp r2, #0
225 01da 02F00103 and r3, r2, #1
226 01de B8BF it lt
227 01e0 5B42 rsblt r3, r3, #0
228 01e2 012B cmp r3, #1
229 01e4 00F04281 beq .L16
ARM GAS /tmp/cczWz03L.s page 5
230 01e8 002A cmp r2, #0
231 01ea 7FF732AF ble .L1
232 01ee 501E subs r0, r2, #1
233 01f0 1746 mov r7, r2
234 01f2 FFF7FEFF bl __aeabi_i2d
235 01f6 4B4B ldr r3, .L69+36
236 01f8 0022 movs r2, #0
237 01fa FFF7FEFF bl __aeabi_dmul
238 01fe 0025 movs r5, #0
239 0200 4BEC1AAB vmov d10, r10, fp
240 0204 9FED448B vldr.64 d8, .L69+24
241 0208 0FF2F409 adr r9, .L69
242 020c D9E90089 ldrd r8, [r9]
243 0210 41EC190B vmov d9, r0, r1
244 0214 2646 mov r6, r4
245 0216 AB46 mov fp, r5
246 0218 08E0 b .L28
247 .L68:
248 021a 86ED008B vstr.64 d8, [r6]
249 .L27:
250 021e 0BF1010B add fp, fp, #1
251 0222 5F45 cmp r7, fp
252 0224 06F10806 add r6, r6, #8
253 0228 3FF413AF beq .L1
254 .L28:
255 022c 5846 mov r0, fp
256 022e FFF7FEFF bl __aeabi_i2d
257 0232 53EC192B vmov r2, r3, d9
258 0236 FFF7FEFF bl __aeabi_dsub
259 023a 0022 movs r2, #0
260 023c 0023 movs r3, #0
261 023e 0446 mov r4, r0
262 0240 0D46 mov r5, r1
263 0242 FFF7FEFF bl __aeabi_dcmpeq
264 0246 0028 cmp r0, #0
265 0248 E7D1 bne .L68
266 024a 2246 mov r2, r4
267 024c 2B46 mov r3, r5
268 024e 51EC1A0B vmov r0, r1, d10
269 0252 FFF7FEFF bl __aeabi_dmul
270 0256 4246 mov r2, r8
271 0258 4B46 mov r3, r9
272 025a FFF7FEFF bl __aeabi_dmul
273 025e 41EC100B vmov d0, r0, r1
274 0262 FFF7FEFF bl cos
275 0266 4246 mov r2, r8
276 0268 4B46 mov r3, r9
277 026a 2046 mov r0, r4
278 026c 2946 mov r1, r5
279 026e 8DED000B vstr.64 d0, [sp]
280 0272 FFF7FEFF bl __aeabi_dmul
281 0276 41EC100B vmov d0, r0, r1
282 027a FFF7FEFF bl cos
283 027e DDE90001 ldrd r0, [sp]
284 0282 4246 mov r2, r8
285 0284 4B46 mov r3, r9
286 0286 8DED000B vstr.64 d0, [sp]
ARM GAS /tmp/cczWz03L.s page 6
287 028a FFF7FEFF bl __aeabi_ddiv
288 028e 2246 mov r2, r4
289 0290 2B46 mov r3, r5
290 0292 FFF7FEFF bl __aeabi_ddiv
291 0296 DDE90023 ldrd r2, [sp]
292 029a FFF7FEFF bl __aeabi_dadd
293 029e C6E90001 strd r0, [r6]
294 02a2 BCE7 b .L27
295 .L5:
296 02a4 1F4B ldr r3, .L69+36
297 02a6 0022 movs r2, #0
298 02a8 FFF7FEFF bl __aeabi_dmul
299 02ac 0646 mov r6, r0
300 02ae 0F46 mov r7, r1
301 02b0 3246 mov r2, r6
302 02b2 3B46 mov r3, r7
303 02b4 5046 mov r0, r10
304 02b6 5946 mov r1, fp
305 02b8 FFF7FEFF bl __aeabi_dsub
306 02bc 5B46 mov r3, fp
307 02be 8046 mov r8, r0
308 02c0 8946 mov r9, r1
309 02c2 5246 mov r2, r10
310 02c4 3046 mov r0, r6
311 02c6 3946 mov r1, r7
312 02c8 FFF7FEFF bl __aeabi_dadd
313 02cc 009B ldr r3, [sp]
314 02ce 002B cmp r3, #0
315 02d0 49EC188B vmov d8, r8, r9
316 02d4 41EC190B vmov d9, r0, r1
317 02d8 7FF7BBAE ble .L1
318 02dc 581E subs r0, r3, #1
319 02de FFF7FEFF bl __aeabi_i2d
320 02e2 104B ldr r3, .L69+36
321 02e4 0022 movs r2, #0
322 02e6 FFF7FEFF bl __aeabi_dmul
323 02ea 0FF21C09 adr r9, .L69+8
324 02ee D9E90089 ldrd r8, [r9]
325 02f2 41EC1B0B vmov d11, r0, r1
326 02f6 4FF0000A mov r10, #0
327 02fa A346 mov fp, r4
328 02fc 88E0 b .L42
329 .L70:
330 02fe 00BF .align 3
331 .L69:
332 0300 182D4454 .word 1413754136
333 0304 FB210940 .word 1074340347
334 0308 F168E388 .word -1998362383
335 030c B5F8E4BE .word -1092290379
336 0310 F168E388 .word -1998362383
337 0314 B5F8E43E .word 1055193269
338 0318 00000000 .word 0
339 031c 00000000 .word 0
340 0320 0000F03F .word 1072693248
341 0324 0000E03F .word 1071644672
342 .L33:
343 0328 45EC104B vmov d0, r4, r5
ARM GAS /tmp/cczWz03L.s page 7
344 032c FFF7FEFF bl sin
345 0330 2246 mov r2, r4
346 0332 51EC100B vmov r0, r1, d0
347 0336 2B46 mov r3, r5
348 0338 FFF7FEFF bl __aeabi_ddiv
349 033c 41EC1A0B vmov d10, r0, r1
350 .L35:
351 0340 3246 mov r2, r6
352 0342 3B46 mov r3, r7
353 0344 51EC190B vmov r0, r1, d9
354 0348 FFF7FEFF bl __aeabi_dmul
355 034c 88A3 adr r3, .L71+8
356 034e D3E90023 ldrd r2, [r3]
357 0352 FFF7FEFF bl __aeabi_dmul
358 0356 4246 mov r2, r8
359 0358 4B46 mov r3, r9
360 035a 0446 mov r4, r0
361 035c 0D46 mov r5, r1
362 035e FFF7FEFF bl __aeabi_dcmpgt
363 0362 40B1 cbz r0, .L36
364 0364 86A3 adr r3, .L71+24
365 0366 D3E90023 ldrd r2, [r3]
366 036a 2046 mov r0, r4
367 036c 2946 mov r1, r5
368 036e FFF7FEFF bl __aeabi_dcmplt
369 0372 0028 cmp r0, #0
370 0374 74D1 bne .L48
371 .L36:
372 0376 45EC104B vmov d0, r4, r5
373 037a FFF7FEFF bl sin
374 037e 2246 mov r2, r4
375 0380 51EC100B vmov r0, r1, d0
376 0384 2B46 mov r3, r5
377 0386 FFF7FEFF bl __aeabi_ddiv
378 038a 53EC192B vmov r2, r3, d9
379 038e FFF7FEFF bl __aeabi_dmul
380 0392 0246 mov r2, r0
381 0394 0B46 mov r3, r1
382 .L38:
383 0396 51EC1A0B vmov r0, r1, d10
384 039a FFF7FEFF bl __aeabi_dsub
385 039e 3246 mov r2, r6
386 03a0 3B46 mov r3, r7
387 03a2 0646 mov r6, r0
388 03a4 0F46 mov r7, r1
389 03a6 51EC180B vmov r0, r1, d8
390 03aa FFF7FEFF bl __aeabi_dmul
391 03ae 70A3 adr r3, .L71+8
392 03b0 D3E90023 ldrd r2, [r3]
393 03b4 FFF7FEFF bl __aeabi_dmul
394 03b8 4246 mov r2, r8
395 03ba 4B46 mov r3, r9
396 03bc 0446 mov r4, r0
397 03be 0D46 mov r5, r1
398 03c0 FFF7FEFF bl __aeabi_dcmpgt
399 03c4 40B1 cbz r0, .L39
400 03c6 6EA3 adr r3, .L71+24
ARM GAS /tmp/cczWz03L.s page 8
401 03c8 D3E90023 ldrd r2, [r3]
402 03cc 2046 mov r0, r4
403 03ce 2946 mov r1, r5
404 03d0 FFF7FEFF bl __aeabi_dcmplt
405 03d4 0028 cmp r0, #0
406 03d6 46D1 bne .L49
407 .L39:
408 03d8 45EC104B vmov d0, r4, r5
409 03dc FFF7FEFF bl sin
410 03e0 2246 mov r2, r4
411 03e2 51EC100B vmov r0, r1, d0
412 03e6 2B46 mov r3, r5
413 03e8 FFF7FEFF bl __aeabi_ddiv
414 03ec 53EC182B vmov r2, r3, d8
415 03f0 FFF7FEFF bl __aeabi_dmul
416 03f4 0246 mov r2, r0
417 03f6 0B46 mov r3, r1
418 .L41:
419 03f8 3046 mov r0, r6
420 03fa 3946 mov r1, r7
421 03fc FFF7FEFF bl __aeabi_dsub
422 0400 009B ldr r3, [sp]
423 0402 0AF1010A add r10, r10, #1
424 0406 5345 cmp r3, r10
425 0408 EBE80201 strd r0, [fp], #8
426 040c 3FF421AE beq .L1
427 .L42:
428 0410 5046 mov r0, r10
429 0412 FFF7FEFF bl __aeabi_i2d
430 0416 53EC1B2B vmov r2, r3, d11
431 041a FFF7FEFF bl __aeabi_dsub
432 041e 54A3 adr r3, .L71+8
433 0420 D3E90023 ldrd r2, [r3]
434 0424 0646 mov r6, r0
435 0426 0F46 mov r7, r1
436 0428 FFF7FEFF bl __aeabi_dmul
437 042c 4246 mov r2, r8
438 042e 4B46 mov r3, r9
439 0430 0446 mov r4, r0
440 0432 0D46 mov r5, r1
441 0434 FFF7FEFF bl __aeabi_dcmpgt
442 0438 0028 cmp r0, #0
443 043a 3FF475AF beq .L33
444 043e 50A3 adr r3, .L71+24
445 0440 D3E90023 ldrd r2, [r3]
446 0444 2046 mov r0, r4
447 0446 2946 mov r1, r5
448 0448 FFF7FEFF bl __aeabi_dcmplt
449 044c 0028 cmp r0, #0
450 044e 3FF46BAF beq .L33
451 0452 9FED457B vldr.64 d7, .L71
452 0456 B0EE47AA vmov.f32 s20, s14
453 045a F0EE67AA vmov.f32 s21, s15
454 045e 6FE7 b .L35
455 .L48:
456 0460 53EC192B vmov r2, r3, d9
457 0464 97E7 b .L38
ARM GAS /tmp/cczWz03L.s page 9
458 .L49:
459 0466 53EC182B vmov r2, r3, d8
460 046a C5E7 b .L41
461 .L16:
462 046c 002A cmp r2, #0
463 046e 7FF7F0AD ble .L1
464 0472 501E subs r0, r2, #1
465 0474 FFF7FEFF bl __aeabi_i2d
466 0478 434B ldr r3, .L71+32
467 047a 0022 movs r2, #0
468 047c FFF7FEFF bl __aeabi_dmul
469 0480 2746 mov r7, r4
470 0482 41EC190B vmov d9, r0, r1
471 0486 0026 movs r6, #0
472 0488 42E0 b .L24
473 .L18:
474 048a 45EC104B vmov d0, r4, r5
475 048e FFF7FEFF bl sin
476 0492 2246 mov r2, r4
477 0494 51EC100B vmov r0, r1, d0
478 0498 2B46 mov r3, r5
479 049a FFF7FEFF bl __aeabi_ddiv
480 049e 8046 mov r8, r0
481 04a0 8946 mov r9, r1
482 .L20:
483 04a2 53EC182B vmov r2, r3, d8
484 04a6 5046 mov r0, r10
485 04a8 5946 mov r1, fp
486 04aa FFF7FEFF bl __aeabi_dmul
487 04ae 30A3 adr r3, .L71+8
488 04b0 D3E90023 ldrd r2, [r3]
489 04b4 FFF7FEFF bl __aeabi_dmul
490 04b8 2FA3 adr r3, .L71+16
491 04ba D3E90023 ldrd r2, [r3]
492 04be 0446 mov r4, r0
493 04c0 0D46 mov r5, r1
494 04c2 FFF7FEFF bl __aeabi_dcmpgt
495 04c6 40B1 cbz r0, .L21
496 04c8 2DA3 adr r3, .L71+24
497 04ca D3E90023 ldrd r2, [r3]
498 04ce 2046 mov r0, r4
499 04d0 2946 mov r1, r5
500 04d2 FFF7FEFF bl __aeabi_dcmplt
501 04d6 0028 cmp r0, #0
502 04d8 41D1 bne .L46
503 .L21:
504 04da 45EC104B vmov d0, r4, r5
505 04de FFF7FEFF bl sin
506 04e2 2246 mov r2, r4
507 04e4 51EC100B vmov r0, r1, d0
508 04e8 2B46 mov r3, r5
509 04ea FFF7FEFF bl __aeabi_ddiv
510 04ee 5246 mov r2, r10
511 04f0 5B46 mov r3, fp
512 04f2 FFF7FEFF bl __aeabi_dmul
513 04f6 0246 mov r2, r0
514 04f8 0B46 mov r3, r1
ARM GAS /tmp/cczWz03L.s page 10
515 .L23:
516 04fa 4046 mov r0, r8
517 04fc 4946 mov r1, r9
518 04fe FFF7FEFF bl __aeabi_dsub
519 0502 009B ldr r3, [sp]
520 0504 0136 adds r6, r6, #1
521 0506 B342 cmp r3, r6
522 0508 E7E80201 strd r0, [r7], #8
523 050c 3FF4A1AD beq .L1
524 .L24:
525 0510 3046 mov r0, r6
526 0512 FFF7FEFF bl __aeabi_i2d
527 0516 53EC192B vmov r2, r3, d9
528 051a FFF7FEFF bl __aeabi_dsub
529 051e 0246 mov r2, r0
530 0520 0B46 mov r3, r1
531 0522 43EC182B vmov d8, r2, r3
532 0526 12A3 adr r3, .L71+8
533 0528 D3E90023 ldrd r2, [r3]
534 052c FFF7FEFF bl __aeabi_dmul
535 0530 11A3 adr r3, .L71+16
536 0532 D3E90023 ldrd r2, [r3]
537 0536 0446 mov r4, r0
538 0538 0D46 mov r5, r1
539 053a FFF7FEFF bl __aeabi_dcmpgt
540 053e 0028 cmp r0, #0
541 0540 A3D0 beq .L18
542 0542 0FA3 adr r3, .L71+24
543 0544 D3E90023 ldrd r2, [r3]
544 0548 2046 mov r0, r4
545 054a 2946 mov r1, r5
546 054c FFF7FEFF bl __aeabi_dcmplt
547 0550 0028 cmp r0, #0
548 0552 9AD0 beq .L18
549 0554 DFF83490 ldr r9, .L71+36
550 0558 4FF00008 mov r8, #0
551 055c A1E7 b .L20
552 .L46:
553 055e 5246 mov r2, r10
554 0560 5B46 mov r3, fp
555 0562 CAE7 b .L23
556 .L72:
557 0564 AFF30080 .align 3
558 .L71:
559 0568 00000000 .word 0
560 056c 0000F03F .word 1072693248
561 0570 182D4454 .word 1413754136
562 0574 FB210940 .word 1074340347
563 0578 F168E388 .word -1998362383
564 057c B5F8E4BE .word -1092290379
565 0580 F168E388 .word -1998362383
566 0584 B5F8E43E .word 1055193269
567 0588 0000E03F .word 1071644672
568 058c 0000F03F .word 1072693248
570 .section .text.Sinc,"ax",%progbits
571 .align 1
572 .p2align 2,,3
ARM GAS /tmp/cczWz03L.s page 11
573 .global Sinc
574 .syntax unified
575 .thumb
576 .thumb_func
577 .fpu fpv4-sp-d16
579 Sinc:
580 @ args = 0, pretend = 0, frame = 0
581 @ frame_needed = 0, uses_anonymous_args = 0
582 0000 38B5 push {r3, r4, r5, lr}
583 0002 55EC104B vmov r4, r5, d0
584 0006 12A3 adr r3, .L80+8
585 0008 D3E90023 ldrd r2, [r3]
586 000c 10EE100A vmov r0, s0 @ int
587 0010 2946 mov r1, r5
588 0012 FFF7FEFF bl __aeabi_dcmpgt
589 0016 38B1 cbz r0, .L74
590 0018 0FA3 adr r3, .L80+16
591 001a D3E90023 ldrd r2, [r3]
592 001e 2046 mov r0, r4
593 0020 2946 mov r1, r5
594 0022 FFF7FEFF bl __aeabi_dcmplt
595 0026 60B9 cbnz r0, .L77
596 .L74:
597 0028 45EC104B vmov d0, r4, r5
598 002c FFF7FEFF bl sin
599 0030 2246 mov r2, r4
600 0032 51EC100B vmov r0, r1, d0
601 0036 2B46 mov r3, r5
602 0038 FFF7FEFF bl __aeabi_ddiv
603 003c 41EC100B vmov d0, r0, r1
604 0040 38BD pop {r3, r4, r5, pc}
605 .L77:
606 0042 9FED010B vldr.64 d0, .L80
607 0046 38BD pop {r3, r4, r5, pc}
608 .L81:
609 .align 3
610 .L80:
611 0048 00000000 .word 0
612 004c 0000F03F .word 1072693248
613 0050 F168E388 .word -1998362383
614 0054 B5F8E4BE .word -1092290379
615 0058 F168E388 .word -1998362383
616 005c B5F8E43E .word 1055193269
618 .section .text.Bessel,"ax",%progbits
619 .align 1
620 .p2align 2,,3
621 .global Bessel
622 .syntax unified
623 .thumb
624 .thumb_func
625 .fpu fpv4-sp-d16
627 Bessel:
628 @ args = 0, pretend = 0, frame = 0
629 @ frame_needed = 0, uses_anonymous_args = 0
630 0000 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr}
631 0004 51EC100B vmov r0, r1, d0
632 0008 2DED028B vpush.64 {d8}
ARM GAS /tmp/cczWz03L.s page 12
633 000c 2C4B ldr r3, .L97
634 000e 2D4D ldr r5, .L97+4
635 0010 0022 movs r2, #0
636 0012 FFF7FEFF bl __aeabi_dmul
637 0016 0026 movs r6, #0
638 0018 41EC180B vmov d8, r0, r1
639 001c 0027 movs r7, #0
640 001e 0124 movs r4, #1
641 0020 27E0 b .L84
642 .L96:
643 0022 022C cmp r4, #2
644 0024 34D0 beq .L86
645 0026 032C cmp r4, #3
646 0028 3ED0 beq .L87
647 002a 042C cmp r4, #4
648 002c 3ED0 beq .L88
649 002e 052C cmp r4, #5
650 0030 3ED0 beq .L89
651 0032 062C cmp r4, #6
652 0034 3ED0 beq .L90
653 0036 072C cmp r4, #7
654 0038 3FD0 beq .L91
655 003a 49F68050 movw r0, #40320
656 003e 092C cmp r4, #9
657 0040 08BF it eq
658 0042 2846 moveq r0, r5
659 .L83:
660 0044 FFF7FEFF bl __aeabi_i2d
661 0048 0246 mov r2, r0
662 004a 0B46 mov r3, r1
663 004c 4046 mov r0, r8
664 004e 4946 mov r1, r9
665 0050 FFF7FEFF bl __aeabi_ddiv
666 0054 0246 mov r2, r0
667 0056 0B46 mov r3, r1
668 0058 FFF7FEFF bl __aeabi_dmul
669 005c 0246 mov r2, r0
670 005e 0B46 mov r3, r1
671 0060 3046 mov r0, r6
672 0062 3946 mov r1, r7
673 0064 FFF7FEFF bl __aeabi_dadd
674 0068 0134 adds r4, r4, #1
675 006a 0A2C cmp r4, #10
676 006c 0646 mov r6, r0
677 006e 0F46 mov r7, r1
678 0070 10D0 beq .L95
679 .L84:
680 0072 2046 mov r0, r4
681 0074 FFF7FEFF bl __aeabi_i2d
682 0078 B0EE480A vmov.f32 s0, s16
683 007c F0EE680A vmov.f32 s1, s17
684 0080 41EC110B vmov d1, r0, r1
685 0084 FFF7FEFF bl pow
686 0088 012C cmp r4, #1
687 008a 59EC108B vmov r8, r9, d0
688 008e C8D1 bne .L96
689 .L86:
ARM GAS /tmp/cczWz03L.s page 13
690 0090 2046 mov r0, r4
691 0092 D7E7 b .L83
692 .L95:
693 0094 0C4B ldr r3, .L97+8
694 0096 0022 movs r2, #0
695 0098 FFF7FEFF bl __aeabi_dadd
696 009c BDEC028B vldm sp!, {d8}
697 00a0 41EC100B vmov d0, r0, r1
698 00a4 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
699 .L87:
700 00a8 0620 movs r0, #6
701 00aa CBE7 b .L83
702 .L88:
703 00ac 1820 movs r0, #24
704 00ae C9E7 b .L83
705 .L89:
706 00b0 7820 movs r0, #120
707 00b2 C7E7 b .L83
708 .L90:
709 00b4 4FF43470 mov r0, #720
710 00b8 C4E7 b .L83
711 .L91:
712 00ba 41F2B030 movw r0, #5040
713 00be C1E7 b .L83
714 .L98:
715 .align 2
716 .L97:
717 00c0 0000E03F .word 1071644672
718 00c4 80890500 .word 362880
719 00c8 0000F03F .word 1072693248
721 .section .text.FIRFilterWindow,"ax",%progbits
722 .align 1
723 .p2align 2,,3
724 .global FIRFilterWindow
725 .syntax unified
726 .thumb
727 .thumb_func
728 .fpu fpv4-sp-d16
730 FIRFilterWindow:
731 @ args = 0, pretend = 0, frame = 32
732 @ frame_needed = 0, uses_anonymous_args = 0
733 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
734 0004 2DED088B vpush.64 {d8, d9, d10, d11}
735 0008 89B0 sub sp, sp, #36
736 000a 012A cmp r2, #1
737 000c 0790 str r0, [sp, #28]
738 000e 0391 str r1, [sp, #12]
739 0010 00F0BA81 beq .L99
740 0014 B0EE409A vmov.f32 s18, s0
741 0018 F0EE609A vmov.f32 s19, s1
742 001c 56EC105B vmov r5, r6, d0
743 0020 1446 mov r4, r2
744 0022 10EE100A vmov r0, s0 @ int
745 0026 0022 movs r2, #0
746 0028 0023 movs r3, #0
747 002a 3146 mov r1, r6
748 002c FFF7FEFF bl __aeabi_dcmplt
ARM GAS /tmp/cczWz03L.s page 14
749 0030 0028 cmp r0, #0
750 0032 7FD1 bne .L127
751 0034 C64B ldr r3, .L169+24
752 0036 0022 movs r2, #0
753 0038 2846 mov r0, r5
754 003a 3146 mov r1, r6
755 003c FFF7FEFF bl __aeabi_dcmpgt
756 0040 28B1 cbz r0, .L102
757 0042 9FEDBD7B vldr.64 d7, .L169
758 0046 B0EE479A vmov.f32 s18, s14
759 004a F0EE679A vmov.f32 s19, s15
760 .L102:
761 004e 039D ldr r5, [sp, #12]
762 0050 AB1C adds r3, r5, #2
763 0052 DB00 lsls r3, r3, #3
764 0054 1846 mov r0, r3
765 0056 0693 str r3, [sp, #24]
766 0058 FFF7FEFF bl malloc
767 005c 0290 str r0, [sp, #8]
768 005e 0028 cmp r0, #0
769 0060 00F09281 beq .L99
770 0064 681C adds r0, r5, #1
771 0066 FFF7FEFF bl __aeabi_i2d
772 006a 022C cmp r4, #2
773 006c 41EC1B0B vmov d11, r0, r1
774 0070 67D0 beq .L161
775 0072 032C cmp r4, #3
776 0074 00F08D81 beq .L162
777 0078 0E2C cmp r4, #14
778 007a 53D1 bne .L106
779 007c 039B ldr r3, [sp, #12]
780 007e 03EBD374 add r4, r3, r3, lsr #31
781 0082 012B cmp r3, #1
782 0084 4FEA6404 asr r4, r4, #1
783 0088 38DD ble .L121
784 008a DDF80890 ldr r9, [sp, #8]
785 008e ACA7 adr r7, .L169+8
786 0090 D7E90067 ldrd r6, [r7]
787 0094 C846 mov r8, r9
788 0096 0025 movs r5, #0
789 0098 8246 mov r10, r0
790 009a 8B46 mov fp, r1
791 .L122:
792 009c 0135 adds r5, r5, #1
793 009e 2846 mov r0, r5
794 00a0 FFF7FEFF bl __aeabi_i2d
795 00a4 3246 mov r2, r6
796 00a6 3B46 mov r3, r7
797 00a8 FFF7FEFF bl __aeabi_dmul
798 00ac 5246 mov r2, r10
799 00ae 5B46 mov r3, fp
800 00b0 FFF7FEFF bl __aeabi_ddiv
801 00b4 41EC100B vmov d0, r0, r1
802 00b8 FFF7FEFF bl sin
803 00bc A542 cmp r5, r4
804 00be A9EC020B vstmia.64 r9!, {d0}
805 00c2 EBDB blt .L122
ARM GAS /tmp/cczWz03L.s page 15
806 00c4 57EC196B vmov r6, r7, d9
807 00c8 0025 movs r5, #0
808 .L123:
809 00ca 98ED000B vldr.64 d0, [r8]
810 00ce 47EC116B vmov d1, r6, r7
811 00d2 FFF7FEFF bl pow
812 00d6 0135 adds r5, r5, #1
813 00d8 A542 cmp r5, r4
814 00da A8EC020B vstmia.64 r8!, {d0}
815 00de F4DB blt .L123
816 00e0 069B ldr r3, [sp, #24]
817 00e2 103B subs r3, r3, #16
818 00e4 0593 str r3, [sp, #20]
819 .L124:
820 00e6 0599 ldr r1, [sp, #20]
821 00e8 029A ldr r2, [sp, #8]
822 00ea 0023 movs r3, #0
823 00ec 1144 add r1, r1, r2
824 .L125:
825 00ee F2E80267 ldrd r6, [r2], #8
826 00f2 0133 adds r3, r3, #1
827 00f4 9C42 cmp r4, r3
828 00f6 61E90267 strd r6, [r1, #-8]!
829 00fa F8DC bgt .L125
830 .L121:
831 00fc 039B ldr r3, [sp, #12]
832 00fe 002B cmp r3, #0
833 0100 10DD ble .L106
834 0102 069B ldr r3, [sp, #24]
835 0104 103B subs r3, r3, #16
836 0106 0593 str r3, [sp, #20]
837 0108 1E46 mov r6, r3
838 .L113:
839 010a 079C ldr r4, [sp, #28]
840 010c 029D ldr r5, [sp, #8]
841 010e 2644 add r6, r6, r4
842 .L126:
843 0110 D4E90001 ldrd r0, [r4]
844 0114 F5E80223 ldrd r2, [r5], #8
845 0118 FFF7FEFF bl __aeabi_dmul
846 011c E4E80201 strd r0, [r4], #8
847 0120 A642 cmp r6, r4
848 0122 F5D1 bne .L126
849 .L106:
850 0124 0298 ldr r0, [sp, #8]
851 0126 09B0 add sp, sp, #36
852 @ sp needed
853 0128 BDEC088B vldm sp!, {d8-d11}
854 012c BDE8F04F pop {r4, r5, r6, r7, r8, r9, r10, fp, lr}
855 0130 FFF7FEBF b free
856 .L127:
857 0134 9FED847B vldr.64 d7, .L169+16
858 0138 B0EE479A vmov.f32 s18, s14
859 013c F0EE679A vmov.f32 s19, s15
860 0140 85E7 b .L102
861 .L161:
862 0142 039B ldr r3, [sp, #12]
ARM GAS /tmp/cczWz03L.s page 16
863 0144 002B cmp r3, #0
864 0146 EDDD ble .L106
865 0148 069B ldr r3, [sp, #24]
866 014a 029A ldr r2, [sp, #8]
867 014c DFF80CB2 ldr fp, .L169+36
868 0150 0192 str r2, [sp, #4]
869 0152 103B subs r3, r3, #16
870 0154 0593 str r3, [sp, #20]
871 0156 D318 adds r3, r2, r3
872 0158 A146 mov r9, r4
873 015a 0493 str r3, [sp, #16]
874 .L111:
875 015c 55EC1B4B vmov r4, r5, d11
876 0160 4846 mov r0, r9
877 0162 FFF7FEFF bl __aeabi_i2d
878 0166 2B46 mov r3, r5
879 0168 1BEE102A vmov r2, s22 @ int
880 016c FFF7FEFF bl __aeabi_dsub
881 0170 2B46 mov r3, r5
882 0172 1BEE102A vmov r2, s22 @ int
883 0176 FFF7FEFF bl __aeabi_ddiv
884 017a 0246 mov r2, r0
885 017c 0B46 mov r3, r1
886 017e FFF7FEFF bl __aeabi_dmul
887 0182 0246 mov r2, r0
888 0184 0B46 mov r3, r1
889 0186 0020 movs r0, #0
890 0188 7249 ldr r1, .L169+28
891 018a FFF7FEFF bl __aeabi_dsub
892 018e 41EC100B vmov d0, r0, r1
893 0192 FFF7FEFF bl sqrt
894 0196 53EC192B vmov r2, r3, d9
895 019a 51EC100B vmov r0, r1, d0
896 019e FFF7FEFF bl __aeabi_dmul
897 01a2 6D4B ldr r3, .L169+32
898 01a4 0022 movs r2, #0
899 01a6 FFF7FEFF bl __aeabi_dmul
900 01aa 4FF00108 mov r8, #1
901 01ae 41EC180B vmov d8, r0, r1
902 01b2 0024 movs r4, #0
903 01b4 0025 movs r5, #0
904 01b6 35E0 b .L108
905 .L164:
906 01b8 B8F1020F cmp r8, #2
907 01bc 42D0 beq .L129
908 01be B8F1030F cmp r8, #3
909 01c2 00F0B580 beq .L130
910 01c6 B8F1040F cmp r8, #4
911 01ca 00F0CB80 beq .L131
912 01ce B8F1050F cmp r8, #5
913 01d2 00F0C980 beq .L132
914 01d6 B8F1060F cmp r8, #6
915 01da 00F0CC80 beq .L133
916 01de B8F1070F cmp r8, #7
917 01e2 00F0CE80 beq .L134
918 01e6 49F68050 movw r0, #40320
919 01ea B8F1090F cmp r8, #9
ARM GAS /tmp/cczWz03L.s page 17
920 01ee 08BF it eq
921 01f0 5846 moveq r0, fp
922 .L107:
923 01f2 FFF7FEFF bl __aeabi_i2d
924 01f6 0246 mov r2, r0
925 01f8 0B46 mov r3, r1
926 01fa 3046 mov r0, r6
927 01fc 3946 mov r1, r7
928 01fe FFF7FEFF bl __aeabi_ddiv
929 0202 0246 mov r2, r0
930 0204 0B46 mov r3, r1
931 0206 FFF7FEFF bl __aeabi_dmul
932 020a 0246 mov r2, r0
933 020c 0B46 mov r3, r1
934 020e 2046 mov r0, r4
935 0210 2946 mov r1, r5
936 0212 FFF7FEFF bl __aeabi_dadd
937 0216 08F10108 add r8, r8, #1
938 021a B8F10A0F cmp r8, #10
939 021e 0446 mov r4, r0
940 0220 0D46 mov r5, r1
941 0222 11D0 beq .L163
942 .L108:
943 0224 4046 mov r0, r8
944 0226 FFF7FEFF bl __aeabi_i2d
945 022a B0EE480A vmov.f32 s0, s16
946 022e F0EE680A vmov.f32 s1, s17
947 0232 41EC110B vmov d1, r0, r1
948 0236 FFF7FEFF bl pow
949 023a B8F1010F cmp r8, #1
950 023e 57EC106B vmov r6, r7, d0
951 0242 B9D1 bne .L164
952 .L129:
953 0244 4046 mov r0, r8
954 0246 D4E7 b .L107
955 .L163:
956 0248 424B ldr r3, .L169+28
957 024a 0022 movs r2, #0
958 024c FFF7FEFF bl __aeabi_dadd
959 0250 414B ldr r3, .L169+32
960 0252 41EC1A0B vmov d10, r0, r1
961 0256 0022 movs r2, #0
962 0258 51EC190B vmov r0, r1, d9
963 025c FFF7FEFF bl __aeabi_dmul
964 0260 4FF0010A mov r10, #1
965 0264 41EC180B vmov d8, r0, r1
966 0268 0024 movs r4, #0
967 026a 0025 movs r5, #0
968 026c 30E0 b .L110
969 .L166:
970 026e BAF1020F cmp r10, #2
971 0272 3DD0 beq .L137
972 0274 BAF1030F cmp r10, #3
973 0278 5CD0 beq .L138
974 027a BAF1040F cmp r10, #4
975 027e 6FD0 beq .L139
976 0280 BAF1050F cmp r10, #5
ARM GAS /tmp/cczWz03L.s page 18
977 0284 72D0 beq .L140
978 0286 BAF1060F cmp r10, #6
979 028a 71D0 beq .L141
980 028c BAF1070F cmp r10, #7
981 0290 74D0 beq .L142
982 0292 49F68050 movw r0, #40320
983 0296 BAF1090F cmp r10, #9
984 029a 08BF it eq
985 029c 5846 moveq r0, fp
986 .L109:
987 029e FFF7FEFF bl __aeabi_i2d
988 02a2 0246 mov r2, r0
989 02a4 0B46 mov r3, r1
990 02a6 3046 mov r0, r6
991 02a8 3946 mov r1, r7
992 02aa FFF7FEFF bl __aeabi_ddiv
993 02ae 0246 mov r2, r0
994 02b0 0B46 mov r3, r1
995 02b2 FFF7FEFF bl __aeabi_dmul
996 02b6 0246 mov r2, r0
997 02b8 0B46 mov r3, r1
998 02ba 2046 mov r0, r4
999 02bc 2946 mov r1, r5
1000 02be FFF7FEFF bl __aeabi_dadd
1001 02c2 0AF1010A add r10, r10, #1
1002 02c6 BAF10A0F cmp r10, #10
1003 02ca 0446 mov r4, r0
1004 02cc 0D46 mov r5, r1
1005 02ce 11D0 beq .L165
1006 .L110:
1007 02d0 5046 mov r0, r10
1008 02d2 FFF7FEFF bl __aeabi_i2d
1009 02d6 B0EE480A vmov.f32 s0, s16
1010 02da F0EE680A vmov.f32 s1, s17
1011 02de 41EC110B vmov d1, r0, r1
1012 02e2 FFF7FEFF bl pow
1013 02e6 BAF1010F cmp r10, #1
1014 02ea 57EC106B vmov r6, r7, d0
1015 02ee BED1 bne .L166
1016 .L137:
1017 02f0 5046 mov r0, r10
1018 02f2 D4E7 b .L109
1019 .L165:
1020 02f4 174B ldr r3, .L169+28
1021 02f6 0022 movs r2, #0
1022 02f8 FFF7FEFF bl __aeabi_dadd
1023 02fc 0246 mov r2, r0
1024 02fe 0B46 mov r3, r1
1025 0300 51EC1A0B vmov r0, r1, d10
1026 0304 FFF7FEFF bl __aeabi_ddiv
1027 0308 019B ldr r3, [sp, #4]
1028 030a 049A ldr r2, [sp, #16]
1029 030c E3E80201 strd r0, [r3], #8
1030 0310 9A42 cmp r2, r3
1031 0312 09F10209 add r9, r9, #2
1032 0316 0193 str r3, [sp, #4]
1033 0318 7FF420AF bne .L111
ARM GAS /tmp/cczWz03L.s page 19
1034 031c 039B ldr r3, [sp, #12]
1035 031e 03EBD374 add r4, r3, r3, lsr #31
1036 0322 012B cmp r3, #1
1037 0324 4FEA6404 asr r4, r4, #1
1038 0328 3FF7DDAE bgt .L124
1039 .L168:
1040 032c 059E ldr r6, [sp, #20]
1041 032e ECE6 b .L113
1042 .L130:
1043 0330 0620 movs r0, #6
1044 0332 5EE7 b .L107
1045 .L138:
1046 0334 0620 movs r0, #6
1047 0336 B2E7 b .L109
1048 .L170:
1049 .align 3
1050 .L169:
1051 0338 00000000 .word 0
1052 033c 00002440 .word 1076101120
1053 0340 182D4454 .word 1413754136
1054 0344 FB210940 .word 1074340347
1055 0348 00000000 .word 0
1056 034c 00000000 .word 0
1057 0350 00002440 .word 1076101120
1058 0354 0000F03F .word 1072693248
1059 0358 0000E03F .word 1071644672
1060 035c 80890500 .word 362880
1061 .L139:
1062 0360 1820 movs r0, #24
1063 0362 9CE7 b .L109
1064 .L131:
1065 0364 1820 movs r0, #24
1066 0366 44E7 b .L107
1067 .L132:
1068 0368 7820 movs r0, #120
1069 036a 42E7 b .L107
1070 .L140:
1071 036c 7820 movs r0, #120
1072 036e 96E7 b .L109
1073 .L141:
1074 0370 4FF43470 mov r0, #720
1075 0374 93E7 b .L109
1076 .L133:
1077 0376 4FF43470 mov r0, #720
1078 037a 3AE7 b .L107
1079 .L142:
1080 037c 41F2B030 movw r0, #5040
1081 0380 8DE7 b .L109
1082 .L134:
1083 0382 41F2B030 movw r0, #5040
1084 0386 34E7 b .L107
1085 .L99:
1086 0388 09B0 add sp, sp, #36
1087 @ sp needed
1088 038a BDEC088B vldm sp!, {d8-d11}
1089 038e BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
1090 .L162:
ARM GAS /tmp/cczWz03L.s page 20
1091 0392 039B ldr r3, [sp, #12]
1092 0394 002B cmp r3, #0
1093 0396 7FF7C5AE ble .L106
1094 039a 069A ldr r2, [sp, #24]
1095 039c 029F ldr r7, [sp, #8]
1096 039e 0497 str r7, [sp, #16]
1097 03a0 103A subs r2, r2, #16
1098 03a2 07EB0209 add r9, r7, r2
1099 03a6 C3F10108 rsb r8, r3, #1
1100 03aa CDF80490 str r9, [sp, #4]
1101 03ae 0FF2B00B adr fp, .L171+8
1102 03b2 DBE900AB ldrd r10, [fp]
1103 03b6 C146 mov r9, r8
1104 03b8 9FED278B vldr.64 d8, .L171
1105 03bc B846 mov r8, r7
1106 03be 0592 str r2, [sp, #20]
1107 03c0 0646 mov r6, r0
1108 03c2 0F46 mov r7, r1
1109 03c4 10E0 b .L118
1110 .L115:
1111 03c6 45EC104B vmov d0, r4, r5
1112 03ca FFF7FEFF bl sin
1113 03ce 2246 mov r2, r4
1114 03d0 51EC100B vmov r0, r1, d0
1115 03d4 2B46 mov r3, r5
1116 03d6 FFF7FEFF bl __aeabi_ddiv
1117 .L117:
1118 03da E8E80201 strd r0, [r8], #8
1119 03de 019B ldr r3, [sp, #4]
1120 03e0 4345 cmp r3, r8
1121 03e2 09F10209 add r9, r9, #2
1122 03e6 1FD0 beq .L167
1123 .L118:
1124 03e8 4846 mov r0, r9
1125 03ea FFF7FEFF bl __aeabi_i2d
1126 03ee 3246 mov r2, r6
1127 03f0 3B46 mov r3, r7
1128 03f2 FFF7FEFF bl __aeabi_ddiv
1129 03f6 5246 mov r2, r10
1130 03f8 5B46 mov r3, fp
1131 03fa FFF7FEFF bl __aeabi_dmul
1132 03fe 1AA3 adr r3, .L171+16
1133 0400 D3E90023 ldrd r2, [r3]
1134 0404 0446 mov r4, r0
1135 0406 0D46 mov r5, r1
1136 0408 FFF7FEFF bl __aeabi_dcmpgt
1137 040c 0028 cmp r0, #0
1138 040e DAD0 beq .L115
1139 0410 17A3 adr r3, .L171+24
1140 0412 D3E90023 ldrd r2, [r3]
1141 0416 2046 mov r0, r4
1142 0418 2946 mov r1, r5
1143 041a FFF7FEFF bl __aeabi_dcmplt
1144 041e 0028 cmp r0, #0
1145 0420 D1D0 beq .L115
1146 0422 51EC180B vmov r0, r1, d8
1147 0426 D8E7 b .L117
ARM GAS /tmp/cczWz03L.s page 21
1148 .L167:
1149 0428 049E ldr r6, [sp, #16]
1150 042a 55EC194B vmov r4, r5, d9
1151 042e 9946 mov r9, r3
1152 .L119:
1153 0430 96ED000B vldr.64 d0, [r6]
1154 0434 45EC114B vmov d1, r4, r5
1155 0438 FFF7FEFF bl pow
1156 043c A6EC020B vstmia.64 r6!, {d0}
1157 0440 B145 cmp r9, r6
1158 0442 F5D1 bne .L119
1159 0444 039B ldr r3, [sp, #12]
1160 0446 03EBD374 add r4, r3, r3, lsr #31
1161 044a 012B cmp r3, #1
1162 044c 4FEA6404 asr r4, r4, #1
1163 0450 3FF749AE bgt .L124
1164 0454 6AE7 b .L168
1165 .L172:
1166 0456 00BF .align 3
1167 .L171:
1168 0458 00000000 .word 0
1169 045c 0000F03F .word 1072693248
1170 0460 182D4454 .word 1413754136
1171 0464 FB210940 .word 1074340347
1172 0468 F168E388 .word -1998362383
1173 046c B5F8E4BE .word -1092290379
1174 0470 F168E388 .word -1998362383
1175 0474 B5F8E43E .word 1055193269
1177 .global __aeabi_d2iz
1178 .global __aeabi_dcmple
1179 .section .text.FIRFreqError,"ax",%progbits
1180 .align 1
1181 .p2align 2,,3
1182 .global FIRFreqError
1183 .syntax unified
1184 .thumb
1185 .thumb_func
1186 .fpu fpv4-sp-d16
1188 FIRFreqError:
1189 @ args = 4, pretend = 0, frame = 24
1190 @ frame_needed = 0, uses_anonymous_args = 0
1191 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
1192 0004 2DED048B vpush.64 {d8, d9}
1193 0008 87B0 sub sp, sp, #28
1194 000a CDE90010 strd r1, r0, [sp]
1195 000e 0493 str r3, [sp, #16]
1196 0010 0292 str r2, [sp, #8]
1197 0012 002A cmp r2, #0
1198 0014 40F0CD80 bne .L174
1199 0018 0A23 movs r3, #10
1200 001a 0393 str r3, [sp, #12]
1201 001c 904B ldr r3, .L290+40
1202 001e 00EBC10B add fp, r0, r1, lsl #3
1203 0022 0022 movs r2, #0
1204 .L181:
1205 0024 1946 mov r1, r3
1206 0026 1046 mov r0, r2
ARM GAS /tmp/cczWz03L.s page 22
1207 0028 FFF7FEFF bl __aeabi_dadd
1208 002c 009B ldr r3, [sp]
1209 002e 002B cmp r3, #0
1210 0030 41EC180B vmov d8, r0, r1
1211 0034 40F3B680 ble .L237
1212 0038 0026 movs r6, #0
1213 003a 0027 movs r7, #0
1214 003c DDF804A0 ldr r10, [sp, #4]
1215 0040 3446 mov r4, r6
1216 0042 3D46 mov r5, r7
1217 0044 01E0 b .L176
1218 .L238:
1219 0046 4446 mov r4, r8
1220 0048 4D46 mov r5, r9
1221 .L176:
1222 004a FAE80289 ldrd r8, [r10], #8
1223 004e 53EC182B vmov r2, r3, d8
1224 0052 2046 mov r0, r4
1225 0054 2946 mov r1, r5
1226 0056 FFF7FEFF bl __aeabi_dmul
1227 005a 4246 mov r2, r8
1228 005c 4B46 mov r3, r9
1229 005e FFF7FEFF bl __aeabi_dadd
1230 0062 3246 mov r2, r6
1231 0064 3B46 mov r3, r7
1232 0066 FFF7FEFF bl __aeabi_dsub
1233 006a D345 cmp fp, r10
1234 006c 2646 mov r6, r4
1235 006e 2F46 mov r7, r5
1236 0070 8046 mov r8, r0
1237 0072 8946 mov r9, r1
1238 0074 E7D1 bne .L238
1239 0076 2246 mov r2, r4
1240 0078 2B46 mov r3, r5
1241 007a 2046 mov r0, r4
1242 007c 2946 mov r1, r5
1243 007e FFF7FEFF bl __aeabi_dmul
1244 0082 4246 mov r2, r8
1245 0084 0646 mov r6, r0
1246 0086 0F46 mov r7, r1
1247 0088 4B46 mov r3, r9
1248 008a 4046 mov r0, r8
1249 008c 4946 mov r1, r9
1250 008e FFF7FEFF bl __aeabi_dmul
1251 0092 0246 mov r2, r0
1252 0094 0B46 mov r3, r1
1253 0096 3046 mov r0, r6
1254 0098 3946 mov r1, r7
1255 009a FFF7FEFF bl __aeabi_dadd
1256 009e 0646 mov r6, r0
1257 00a0 0F46 mov r7, r1
1258 .L175:
1259 00a2 53EC182B vmov r2, r3, d8
1260 00a6 4046 mov r0, r8
1261 00a8 4946 mov r1, r9
1262 00aa FFF7FEFF bl __aeabi_dmul
1263 00ae 2246 mov r2, r4
ARM GAS /tmp/cczWz03L.s page 23
1264 00b0 2B46 mov r3, r5
1265 00b2 FFF7FEFF bl __aeabi_dmul
1266 00b6 0246 mov r2, r0
1267 00b8 0B46 mov r3, r1
1268 00ba 3046 mov r0, r6
1269 00bc 3946 mov r1, r7
1270 00be FFF7FEFF bl __aeabi_dsub
1271 00c2 0246 mov r2, r0
1272 00c4 0B46 mov r3, r1
1273 00c6 43EC182B vmov d8, r2, r3
1274 00ca 0022 movs r2, #0
1275 00cc 0023 movs r3, #0
1276 00ce FFF7FEFF bl __aeabi_dcmpgt
1277 00d2 80BB cbnz r0, .L282
1278 .L186:
1279 00d4 0398 ldr r0, [sp, #12]
1280 00d6 FFF7FEFF bl __aeabi_i2d
1281 00da 624B ldr r3, .L290+44
1282 00dc 0022 movs r2, #0
1283 00de FFF7FEFF bl __aeabi_ddiv
1284 00e2 049B ldr r3, [sp, #16]
1285 00e4 D3E90023 ldrd r2, [r3]
1286 00e8 0446 mov r4, r0
1287 00ea 0D46 mov r5, r1
1288 00ec 1046 mov r0, r2
1289 00ee 1946 mov r1, r3
1290 00f0 FFF7FEFF bl __aeabi_dadd
1291 00f4 2246 mov r2, r4
1292 00f6 2B46 mov r3, r5
1293 00f8 FFF7FEFF bl __aeabi_dsub
1294 00fc 4EA3 adr r3, .L290
1295 00fe D3E90023 ldrd r2, [r3]
1296 0102 0446 mov r4, r0
1297 0104 0D46 mov r5, r1
1298 0106 FFF7FEFF bl __aeabi_dcmplt
1299 010a 0028 cmp r0, #0
1300 010c 40F0C781 bne .L252
1301 0110 4BA3 adr r3, .L290+8
1302 0112 D3E90023 ldrd r2, [r3]
1303 0116 2046 mov r0, r4
1304 0118 2946 mov r1, r5
1305 011a FFF7FEFF bl __aeabi_dcmpgt
1306 011e 10B1 cbz r0, .L225
1307 0120 47A5 adr r5, .L290+8
1308 0122 D5E90045 ldrd r4, [r5]
1309 .L225:
1310 0126 049B ldr r3, [sp, #16]
1311 0128 C3E90045 strd r4, [r3]
1312 012c 07B0 add sp, sp, #28
1313 @ sp needed
1314 012e BDEC048B vldm sp!, {d8-d9}
1315 0132 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
1316 .L282:
1317 0136 B0EE480A vmov.f32 s0, s16
1318 013a F0EE680A vmov.f32 s1, s17
1319 013e FFF7FEFF bl sqrt
1320 0142 55EC104B vmov r4, r5, d0
ARM GAS /tmp/cczWz03L.s page 24
1321 0146 40A3 adr r3, .L290+16
1322 0148 D3E90023 ldrd r2, [r3]
1323 014c 2946 mov r1, r5
1324 014e 10EE100A vmov r0, s0 @ int
1325 0152 FFF7FEFF bl __aeabi_dcmpgt
1326 0156 DDE90263 ldrd r6, r3, [sp, #8]
1327 015a 0028 cmp r0, #0
1328 015c 18BF it ne
1329 015e 3346 movne r3, r6
1330 0160 0393 str r3, [sp, #12]
1331 0162 2046 mov r0, r4
1332 0164 3AA3 adr r3, .L290+24
1333 0166 D3E90023 ldrd r2, [r3]
1334 016a 2946 mov r1, r5
1335 016c FFF7FEFF bl __aeabi_dcmplt
1336 0170 0028 cmp r0, #0
1337 0172 AFD1 bne .L186
1338 0174 0136 adds r6, r6, #1
1339 0176 B6F57A7F cmp r6, #1000
1340 017a 0296 str r6, [sp, #8]
1341 017c AAD0 beq .L186
1342 017e 3046 mov r0, r6
1343 0180 FFF7FEFF bl __aeabi_i2d
1344 0184 374B ldr r3, .L290+44
1345 0186 0022 movs r2, #0
1346 0188 FFF7FEFF bl __aeabi_ddiv
1347 018c 32A3 adr r3, .L290+32
1348 018e D3E90023 ldrd r2, [r3]
1349 0192 FFF7FEFF bl __aeabi_dmul
1350 0196 41EC100B vmov d0, r0, r1
1351 019a FFF7FEFF bl cos
1352 019e 53EC102B vmov r2, r3, d0
1353 01a2 3FE7 b .L181
1354 .L237:
1355 01a4 0026 movs r6, #0
1356 01a6 0027 movs r7, #0
1357 01a8 3446 mov r4, r6
1358 01aa 3D46 mov r5, r7
1359 01ac B046 mov r8, r6
1360 01ae B946 mov r9, r7
1361 01b0 77E7 b .L175
1362 .L174:
1363 01b2 012A cmp r2, #1
1364 01b4 1346 mov r3, r2
1365 01b6 00F0D181 beq .L283
1366 01ba 0499 ldr r1, [sp, #16]
1367 01bc 022B cmp r3, #2
1368 01be D1E90001 ldrd r0, [r1]
1369 01c2 284B ldr r3, .L290+44
1370 01c4 4FF00002 mov r2, #0
1371 01c8 00F09082 beq .L284
1372 01cc FFF7FEFF bl __aeabi_dmul
1373 01d0 FFF7FEFF bl __aeabi_d2iz
1374 01d4 031E subs r3, r0, #0
1375 01d6 0393 str r3, [sp, #12]
1376 01d8 C0F2E183 blt .L208
1377 01dc 009A ldr r2, [sp]
ARM GAS /tmp/cczWz03L.s page 25
1378 01de 0493 str r3, [sp, #16]
1379 01e0 D100 lsls r1, r2, #3
1380 01e2 0591 str r1, [sp, #20]
1381 01e4 0199 ldr r1, [sp, #4]
1382 01e6 0293 str r3, [sp, #8]
1383 01e8 01EBC20B add fp, r1, r2, lsl #3
1384 .L216:
1385 01ec 0298 ldr r0, [sp, #8]
1386 01ee FFF7FEFF bl __aeabi_i2d
1387 01f2 1C4B ldr r3, .L290+44
1388 01f4 0022 movs r2, #0
1389 01f6 FFF7FEFF bl __aeabi_ddiv
1390 01fa 17A3 adr r3, .L290+32
1391 01fc D3E90023 ldrd r2, [r3]
1392 0200 FFF7FEFF bl __aeabi_dmul
1393 0204 41EC100B vmov d0, r0, r1
1394 0208 FFF7FEFF bl cos
1395 020c 53EC102B vmov r2, r3, d0
1396 0210 10EE100A vmov r0, s0 @ int
1397 0214 1946 mov r1, r3
1398 0216 FFF7FEFF bl __aeabi_dadd
1399 021a 009B ldr r3, [sp]
1400 021c 002B cmp r3, #0
1401 021e 41EC180B vmov d8, r0, r1
1402 0222 40F38D81 ble .L245
1403 0226 0026 movs r6, #0
1404 0228 0027 movs r7, #0
1405 022a DDF804A0 ldr r10, [sp, #4]
1406 022e 3446 mov r4, r6
1407 0230 3D46 mov r5, r7
1408 0232 1BE0 b .L210
1409 .L291:
1410 0234 AFF30080 .align 3
1411 .L290:
1412 0238 FCA9F1D2 .word -755914244
1413 023c 4D62503F .word 1062232653
1414 0240 AE47E17A .word 2061584302
1415 0244 14AEEF3F .word 1072672276
1416 0248 39B4C876 .word 1992864825
1417 024c BE9FE63F .word 1072078782
1418 0250 9A999999 .word -1717986918
1419 0254 9999B93F .word 1069128089
1420 0258 182D4454 .word 1413754136
1421 025c FB210940 .word 1074340347
1422 0260 0000F03F .word 1072693248
1423 0264 00408F40 .word 1083129856
1424 .L246:
1425 0268 4446 mov r4, r8
1426 026a 4D46 mov r5, r9
1427 .L210:
1428 026c FAE80289 ldrd r8, [r10], #8
1429 0270 53EC182B vmov r2, r3, d8
1430 0274 2046 mov r0, r4
1431 0276 2946 mov r1, r5
1432 0278 FFF7FEFF bl __aeabi_dmul
1433 027c 4246 mov r2, r8
1434 027e 4B46 mov r3, r9
ARM GAS /tmp/cczWz03L.s page 26
1435 0280 FFF7FEFF bl __aeabi_dadd
1436 0284 3246 mov r2, r6
1437 0286 3B46 mov r3, r7
1438 0288 FFF7FEFF bl __aeabi_dsub
1439 028c D345 cmp fp, r10
1440 028e 2646 mov r6, r4
1441 0290 2F46 mov r7, r5
1442 0292 8046 mov r8, r0
1443 0294 8946 mov r9, r1
1444 0296 E7D1 bne .L246
1445 0298 2246 mov r2, r4
1446 029a 2B46 mov r3, r5
1447 029c 2046 mov r0, r4
1448 029e 2946 mov r1, r5
1449 02a0 FFF7FEFF bl __aeabi_dmul
1450 02a4 4246 mov r2, r8
1451 02a6 0646 mov r6, r0
1452 02a8 0F46 mov r7, r1
1453 02aa 4B46 mov r3, r9
1454 02ac 4046 mov r0, r8
1455 02ae 4946 mov r1, r9
1456 02b0 FFF7FEFF bl __aeabi_dmul
1457 02b4 0246 mov r2, r0
1458 02b6 0B46 mov r3, r1
1459 02b8 3046 mov r0, r6
1460 02ba 3946 mov r1, r7
1461 02bc FFF7FEFF bl __aeabi_dadd
1462 02c0 0646 mov r6, r0
1463 02c2 0F46 mov r7, r1
1464 .L209:
1465 02c4 53EC182B vmov r2, r3, d8
1466 02c8 4046 mov r0, r8
1467 02ca 4946 mov r1, r9
1468 02cc FFF7FEFF bl __aeabi_dmul
1469 02d0 2246 mov r2, r4
1470 02d2 2B46 mov r3, r5
1471 02d4 FFF7FEFF bl __aeabi_dmul
1472 02d8 0246 mov r2, r0
1473 02da 0B46 mov r3, r1
1474 02dc 3046 mov r0, r6
1475 02de 3946 mov r1, r7
1476 02e0 FFF7FEFF bl __aeabi_dsub
1477 02e4 0246 mov r2, r0
1478 02e6 0B46 mov r3, r1
1479 02e8 43EC182B vmov d8, r2, r3
1480 02ec 0022 movs r2, #0
1481 02ee 0023 movs r3, #0
1482 02f0 FFF7FEFF bl __aeabi_dcmpgt
1483 02f4 0028 cmp r0, #0
1484 02f6 40F0E180 bne .L285
1485 02fa 029B ldr r3, [sp, #8]
1486 02fc 0493 str r3, [sp, #16]
1487 .L211:
1488 02fe 029B ldr r3, [sp, #8]
1489 0300 013B subs r3, r3, #1
1490 0302 0293 str r3, [sp, #8]
1491 0304 0133 adds r3, r3, #1
ARM GAS /tmp/cczWz03L.s page 27
1492 0306 7FF471AF bne .L216
1493 .L215:
1494 030a 0498 ldr r0, [sp, #16]
1495 030c FFF7FEFF bl __aeabi_i2d
1496 0310 AF4B ldr r3, .L292+56
1497 0312 0022 movs r2, #0
1498 0314 FFF7FEFF bl __aeabi_ddiv
1499 0318 039B ldr r3, [sp, #12]
1500 031a B3F57A7F cmp r3, #1000
1501 031e 41EC190B vmov d9, r0, r1
1502 0322 79DA bge .L217
1503 .L236:
1504 0324 059B ldr r3, [sp, #20]
1505 0326 019A ldr r2, [sp, #4]
1506 0328 1344 add r3, r3, r2
1507 032a 9B46 mov fp, r3
1508 032c 039B ldr r3, [sp, #12]
1509 032e 0293 str r3, [sp, #8]
1510 .L224:
1511 0330 0298 ldr r0, [sp, #8]
1512 0332 FFF7FEFF bl __aeabi_i2d
1513 0336 A64B ldr r3, .L292+56
1514 0338 0022 movs r2, #0
1515 033a FFF7FEFF bl __aeabi_ddiv
1516 033e 96A3 adr r3, .L292
1517 0340 D3E90023 ldrd r2, [r3]
1518 0344 FFF7FEFF bl __aeabi_dmul
1519 0348 41EC100B vmov d0, r0, r1
1520 034c FFF7FEFF bl cos
1521 0350 53EC102B vmov r2, r3, d0
1522 0354 10EE100A vmov r0, s0 @ int
1523 0358 1946 mov r1, r3
1524 035a FFF7FEFF bl __aeabi_dadd
1525 035e 009B ldr r3, [sp]
1526 0360 002B cmp r3, #0
1527 0362 41EC180B vmov d8, r0, r1
1528 0366 40F3F280 ble .L248
1529 036a 0026 movs r6, #0
1530 036c 0027 movs r7, #0
1531 036e DDF804A0 ldr r10, [sp, #4]
1532 0372 3446 mov r4, r6
1533 0374 3D46 mov r5, r7
1534 0376 01E0 b .L219
1535 .L249:
1536 0378 4446 mov r4, r8
1537 037a 4D46 mov r5, r9
1538 .L219:
1539 037c FAE80289 ldrd r8, [r10], #8
1540 0380 2246 mov r2, r4
1541 0382 2B46 mov r3, r5
1542 0384 51EC180B vmov r0, r1, d8
1543 0388 FFF7FEFF bl __aeabi_dmul
1544 038c 4246 mov r2, r8
1545 038e 4B46 mov r3, r9
1546 0390 FFF7FEFF bl __aeabi_dadd
1547 0394 3246 mov r2, r6
1548 0396 3B46 mov r3, r7
ARM GAS /tmp/cczWz03L.s page 28
1549 0398 FFF7FEFF bl __aeabi_dsub
1550 039c D345 cmp fp, r10
1551 039e 2646 mov r6, r4
1552 03a0 2F46 mov r7, r5
1553 03a2 8046 mov r8, r0
1554 03a4 8946 mov r9, r1
1555 03a6 E7D1 bne .L249
1556 03a8 2246 mov r2, r4
1557 03aa 2B46 mov r3, r5
1558 03ac 2046 mov r0, r4
1559 03ae 2946 mov r1, r5
1560 03b0 FFF7FEFF bl __aeabi_dmul
1561 03b4 4246 mov r2, r8
1562 03b6 0646 mov r6, r0
1563 03b8 0F46 mov r7, r1
1564 03ba 4B46 mov r3, r9
1565 03bc 4046 mov r0, r8
1566 03be 4946 mov r1, r9
1567 03c0 FFF7FEFF bl __aeabi_dmul
1568 03c4 0246 mov r2, r0
1569 03c6 0B46 mov r3, r1
1570 03c8 3046 mov r0, r6
1571 03ca 3946 mov r1, r7
1572 03cc FFF7FEFF bl __aeabi_dadd
1573 03d0 0646 mov r6, r0
1574 03d2 0F46 mov r7, r1
1575 .L218:
1576 03d4 53EC182B vmov r2, r3, d8
1577 03d8 4046 mov r0, r8
1578 03da 4946 mov r1, r9
1579 03dc FFF7FEFF bl __aeabi_dmul
1580 03e0 2246 mov r2, r4
1581 03e2 2B46 mov r3, r5
1582 03e4 FFF7FEFF bl __aeabi_dmul
1583 03e8 0246 mov r2, r0
1584 03ea 0B46 mov r3, r1
1585 03ec 3046 mov r0, r6
1586 03ee 3946 mov r1, r7
1587 03f0 FFF7FEFF bl __aeabi_dsub
1588 03f4 0246 mov r2, r0
1589 03f6 0B46 mov r3, r1
1590 03f8 43EC182B vmov d8, r2, r3
1591 03fc 0022 movs r2, #0
1592 03fe 0023 movs r3, #0
1593 0400 FFF7FEFF bl __aeabi_dcmpgt
1594 0404 0028 cmp r0, #0
1595 0406 7AD1 bne .L286
1596 0408 029B ldr r3, [sp, #8]
1597 040a 0393 str r3, [sp, #12]
1598 .L220:
1599 040c 029B ldr r3, [sp, #8]
1600 040e 0133 adds r3, r3, #1
1601 0410 B3F57A7F cmp r3, #1000
1602 0414 0293 str r3, [sp, #8]
1603 0416 8BD1 bne .L224
1604 .L217:
1605 0418 0398 ldr r0, [sp, #12]
ARM GAS /tmp/cczWz03L.s page 29
1606 041a FFF7FEFF bl __aeabi_i2d
1607 041e 6C4B ldr r3, .L292+56
1608 0420 0022 movs r2, #0
1609 0422 FFF7FEFF bl __aeabi_ddiv
1610 0426 149B ldr r3, [sp, #80]
1611 0428 D3E90023 ldrd r2, [r3]
1612 042c 0446 mov r4, r0
1613 042e 0D46 mov r5, r1
1614 0430 1046 mov r0, r2
1615 0432 1946 mov r1, r3
1616 0434 FFF7FEFF bl __aeabi_dadd
1617 0438 53EC192B vmov r2, r3, d9
1618 043c 0646 mov r6, r0
1619 043e 0F46 mov r7, r1
1620 0440 2046 mov r0, r4
1621 0442 2946 mov r1, r5
1622 0444 FFF7FEFF bl __aeabi_dsub
1623 0448 0246 mov r2, r0
1624 044a 0B46 mov r3, r1
1625 044c 3046 mov r0, r6
1626 044e 3946 mov r1, r7
1627 0450 FFF7FEFF bl __aeabi_dsub
1628 0454 52A3 adr r3, .L292+8
1629 0456 D3E90023 ldrd r2, [r3]
1630 045a 0446 mov r4, r0
1631 045c 0D46 mov r5, r1
1632 045e FFF7FEFF bl __aeabi_dcmplt
1633 0462 00B3 cbz r0, .L287
1634 0464 4EA3 adr r3, .L292+8
1635 0466 D3E90023 ldrd r2, [r3]
1636 046a 3046 mov r0, r6
1637 046c 3946 mov r1, r7
1638 046e FFF7FEFF bl __aeabi_dcmplt
1639 0472 0028 cmp r0, #0
1640 0474 00F02F81 beq .L288
1641 .L228:
1642 0478 4BA3 adr r3, .L292+16
1643 047a D3E90023 ldrd r2, [r3]
1644 047e 3046 mov r0, r6
1645 0480 3946 mov r1, r7
1646 0482 FFF7FEFF bl __aeabi_dcmpgt
1647 0486 10B1 cbz r0, .L230
1648 0488 47A7 adr r7, .L292+16
1649 048a D7E90067 ldrd r6, [r7]
1650 .L230:
1651 048e 149B ldr r3, [sp, #80]
1652 0490 C3E90067 strd r6, [r3]
1653 0494 07B0 add sp, sp, #28
1654 @ sp needed
1655 0496 BDEC048B vldm sp!, {d8-d9}
1656 049a BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
1657 .L252:
1658 049e 44A5 adr r5, .L292+24
1659 04a0 D5E90045 ldrd r4, [r5]
1660 04a4 3FE6 b .L225
1661 .L287:
1662 04a6 2246 mov r2, r4
ARM GAS /tmp/cczWz03L.s page 30
1663 04a8 2B46 mov r3, r5
1664 04aa 3046 mov r0, r6
1665 04ac 3946 mov r1, r7
1666 04ae FFF7FEFF bl __aeabi_dcmplt
1667 04b2 0028 cmp r0, #0
1668 04b4 E0D1 bne .L228
1669 04b6 2646 mov r6, r4
1670 04b8 2F46 mov r7, r5
1671 04ba DDE7 b .L228
1672 .L285:
1673 04bc B0EE480A vmov.f32 s0, s16
1674 04c0 F0EE680A vmov.f32 s1, s17
1675 04c4 FFF7FEFF bl sqrt
1676 04c8 55EC104B vmov r4, r5, d0
1677 04cc 3AA3 adr r3, .L292+32
1678 04ce D3E90023 ldrd r2, [r3]
1679 04d2 2946 mov r1, r5
1680 04d4 10EE100A vmov r0, s0 @ int
1681 04d8 FFF7FEFF bl __aeabi_dcmple
1682 04dc 049B ldr r3, [sp, #16]
1683 04de 029A ldr r2, [sp, #8]
1684 04e0 0028 cmp r0, #0
1685 04e2 18BF it ne
1686 04e4 1346 movne r3, r2
1687 04e6 0493 str r3, [sp, #16]
1688 04e8 2046 mov r0, r4
1689 04ea 35A3 adr r3, .L292+40
1690 04ec D3E90023 ldrd r2, [r3]
1691 04f0 2946 mov r1, r5
1692 04f2 FFF7FEFF bl __aeabi_dcmpgt
1693 04f6 0028 cmp r0, #0
1694 04f8 3FF401AF beq .L211
1695 04fc 05E7 b .L215
1696 .L286:
1697 04fe B0EE480A vmov.f32 s0, s16
1698 0502 F0EE680A vmov.f32 s1, s17
1699 0506 FFF7FEFF bl sqrt
1700 050a 55EC104B vmov r4, r5, d0
1701 050e 2AA3 adr r3, .L292+32
1702 0510 D3E90023 ldrd r2, [r3]
1703 0514 2946 mov r1, r5
1704 0516 10EE100A vmov r0, s0 @ int
1705 051a FFF7FEFF bl __aeabi_dcmple
1706 051e DDE90223 ldrd r2, r3, [sp, #8]
1707 0522 0028 cmp r0, #0
1708 0524 18BF it ne
1709 0526 1346 movne r3, r2
1710 0528 0393 str r3, [sp, #12]
1711 052a 2046 mov r0, r4
1712 052c 24A3 adr r3, .L292+40
1713 052e D3E90023 ldrd r2, [r3]
1714 0532 2946 mov r1, r5
1715 0534 FFF7FEFF bl __aeabi_dcmpgt
1716 0538 0028 cmp r0, #0
1717 053a 3FF467AF beq .L220
1718 053e 6BE7 b .L217
1719 .L245:
ARM GAS /tmp/cczWz03L.s page 31
1720 0540 0026 movs r6, #0
1721 0542 0027 movs r7, #0
1722 0544 3446 mov r4, r6
1723 0546 3D46 mov r5, r7
1724 0548 B046 mov r8, r6
1725 054a B946 mov r9, r7
1726 054c BAE6 b .L209
1727 .L248:
1728 054e 0026 movs r6, #0
1729 0550 0027 movs r7, #0
1730 0552 3446 mov r4, r6
1731 0554 3D46 mov r5, r7
1732 0556 B046 mov r8, r6
1733 0558 B946 mov r9, r7
1734 055a 3BE7 b .L218
1735 .L283:
1736 055c 00EBC10B add fp, r0, r1, lsl #3
1737 0560 40F2E731 movw r1, #999
1738 0564 40F2DE30 movw r0, #990
1739 0568 17A3 adr r3, .L292+48
1740 056a D3E90023 ldrd r2, [r3]
1741 056e CDE90210 strd r1, r0, [sp, #8]
1742 .L190:
1743 0572 1946 mov r1, r3
1744 0574 1046 mov r0, r2
1745 0576 FFF7FEFF bl __aeabi_dadd
1746 057a 009B ldr r3, [sp]
1747 057c 002B cmp r3, #0
1748 057e 41EC180B vmov d8, r0, r1
1749 0582 40F3AC80 ble .L239
1750 0586 0026 movs r6, #0
1751 0588 0027 movs r7, #0
1752 058a DDF804A0 ldr r10, [sp, #4]
1753 058e 3446 mov r4, r6
1754 0590 3D46 mov r5, r7
1755 0592 21E0 b .L185
1756 .L293:
1757 0594 AFF30080 .align 3
1758 .L292:
1759 0598 182D4454 .word 1413754136
1760 059c FB210940 .word 1074340347
1761 05a0 7B14AE47 .word 1202590843
1762 05a4 E17A843F .word 1065646817
1763 05a8 5C8FC2F5 .word -171798692
1764 05ac 285CEF3F .word 1072651304
1765 05b0 FCA9F1D2 .word -755914244
1766 05b4 4D62503F .word 1062232653
1767 05b8 39B4C876 .word 1992864825
1768 05bc BE9FE63F .word 1072078782
1769 05c0 AE47E17A .word 2061584302
1770 05c4 14AEEF3F .word 1072672276
1771 05c8 FF81A6A6 .word -1499037185
1772 05cc F5FFEFBF .word -1074790411
1773 05d0 00408F40 .word 1083129856
1774 .L240:
1775 05d4 4446 mov r4, r8
1776 05d6 4D46 mov r5, r9
ARM GAS /tmp/cczWz03L.s page 32
1777 .L185:
1778 05d8 FAE80289 ldrd r8, [r10], #8
1779 05dc 53EC182B vmov r2, r3, d8
1780 05e0 2046 mov r0, r4
1781 05e2 2946 mov r1, r5
1782 05e4 FFF7FEFF bl __aeabi_dmul
1783 05e8 4246 mov r2, r8
1784 05ea 4B46 mov r3, r9
1785 05ec FFF7FEFF bl __aeabi_dadd
1786 05f0 3246 mov r2, r6
1787 05f2 3B46 mov r3, r7
1788 05f4 FFF7FEFF bl __aeabi_dsub
1789 05f8 D345 cmp fp, r10
1790 05fa 2646 mov r6, r4
1791 05fc 2F46 mov r7, r5
1792 05fe 8046 mov r8, r0
1793 0600 8946 mov r9, r1
1794 0602 E7D1 bne .L240
1795 0604 2246 mov r2, r4
1796 0606 2B46 mov r3, r5
1797 0608 2046 mov r0, r4
1798 060a 2946 mov r1, r5
1799 060c FFF7FEFF bl __aeabi_dmul
1800 0610 4246 mov r2, r8
1801 0612 0646 mov r6, r0
1802 0614 0F46 mov r7, r1
1803 0616 4B46 mov r3, r9
1804 0618 4046 mov r0, r8
1805 061a 4946 mov r1, r9
1806 061c FFF7FEFF bl __aeabi_dmul
1807 0620 0246 mov r2, r0
1808 0622 0B46 mov r3, r1
1809 0624 3046 mov r0, r6
1810 0626 3946 mov r1, r7
1811 0628 FFF7FEFF bl __aeabi_dadd
1812 062c 0646 mov r6, r0
1813 062e 0F46 mov r7, r1
1814 .L184:
1815 0630 53EC182B vmov r2, r3, d8
1816 0634 4046 mov r0, r8
1817 0636 4946 mov r1, r9
1818 0638 FFF7FEFF bl __aeabi_dmul
1819 063c 2246 mov r2, r4
1820 063e 2B46 mov r3, r5
1821 0640 FFF7FEFF bl __aeabi_dmul
1822 0644 0246 mov r2, r0
1823 0646 0B46 mov r3, r1
1824 0648 3046 mov r0, r6
1825 064a 3946 mov r1, r7
1826 064c FFF7FEFF bl __aeabi_dsub
1827 0650 0246 mov r2, r0
1828 0652 0B46 mov r3, r1
1829 0654 43EC182B vmov d8, r2, r3
1830 0658 0022 movs r2, #0
1831 065a 0023 movs r3, #0
1832 065c FFF7FEFF bl __aeabi_dcmpgt
1833 0660 0028 cmp r0, #0
ARM GAS /tmp/cczWz03L.s page 33
1834 0662 3FF437AD beq .L186
1835 0666 B0EE480A vmov.f32 s0, s16
1836 066a F0EE680A vmov.f32 s1, s17
1837 066e FFF7FEFF bl sqrt
1838 0672 55EC104B vmov r4, r5, d0
1839 0676 DAA3 adr r3, .L294+16
1840 0678 D3E90023 ldrd r2, [r3]
1841 067c 2946 mov r1, r5
1842 067e 10EE100A vmov r0, s0 @ int
1843 0682 FFF7FEFF bl __aeabi_dcmpgt
1844 0686 DDE90263 ldrd r6, r3, [sp, #8]
1845 068a 0028 cmp r0, #0
1846 068c 18BF it ne
1847 068e 3346 movne r3, r6
1848 0690 0393 str r3, [sp, #12]
1849 0692 2046 mov r0, r4
1850 0694 D4A3 adr r3, .L294+24
1851 0696 D3E90023 ldrd r2, [r3]
1852 069a 2946 mov r1, r5
1853 069c FFF7FEFF bl __aeabi_dcmplt
1854 06a0 0028 cmp r0, #0
1855 06a2 7FF417AD bne .L186
1856 06a6 731E subs r3, r6, #1
1857 06a8 5A1C adds r2, r3, #1
1858 06aa 0293 str r3, [sp, #8]
1859 06ac 3FF412AD beq .L186
1860 06b0 1846 mov r0, r3
1861 06b2 FFF7FEFF bl __aeabi_i2d
1862 06b6 CE4B ldr r3, .L294+32
1863 06b8 0022 movs r2, #0
1864 06ba FFF7FEFF bl __aeabi_ddiv
1865 06be C4A3 adr r3, .L294
1866 06c0 D3E90023 ldrd r2, [r3]
1867 06c4 FFF7FEFF bl __aeabi_dmul
1868 06c8 41EC100B vmov d0, r0, r1
1869 06cc FFF7FEFF bl cos
1870 06d0 53EC102B vmov r2, r3, d0
1871 06d4 4DE7 b .L190
1872 .L288:
1873 06d6 C0A7 adr r7, .L294+8
1874 06d8 D7E90067 ldrd r6, [r7]
1875 06dc D7E6 b .L230
1876 .L239:
1877 06de 0026 movs r6, #0
1878 06e0 0027 movs r7, #0
1879 06e2 3446 mov r4, r6
1880 06e4 3D46 mov r5, r7
1881 06e6 B046 mov r8, r6
1882 06e8 B946 mov r9, r7
1883 06ea A1E7 b .L184
1884 .L284:
1885 06ec FFF7FEFF bl __aeabi_dmul
1886 06f0 FFF7FEFF bl __aeabi_d2iz
1887 06f4 031E subs r3, r0, #0
1888 06f6 0393 str r3, [sp, #12]
1889 06f8 C0F25D81 blt .L192
1890 06fc 009A ldr r2, [sp]
ARM GAS /tmp/cczWz03L.s page 34
1891 06fe 0493 str r3, [sp, #16]
1892 0700 D100 lsls r1, r2, #3
1893 0702 0591 str r1, [sp, #20]
1894 0704 0199 ldr r1, [sp, #4]
1895 0706 0293 str r3, [sp, #8]
1896 0708 01EBC20B add fp, r1, r2, lsl #3
1897 .L199:
1898 070c 0298 ldr r0, [sp, #8]
1899 070e FFF7FEFF bl __aeabi_i2d
1900 0712 B74B ldr r3, .L294+32
1901 0714 0022 movs r2, #0
1902 0716 FFF7FEFF bl __aeabi_ddiv
1903 071a ADA3 adr r3, .L294
1904 071c D3E90023 ldrd r2, [r3]
1905 0720 FFF7FEFF bl __aeabi_dmul
1906 0724 41EC100B vmov d0, r0, r1
1907 0728 FFF7FEFF bl cos
1908 072c 53EC102B vmov r2, r3, d0
1909 0730 10EE100A vmov r0, s0 @ int
1910 0734 1946 mov r1, r3
1911 0736 FFF7FEFF bl __aeabi_dadd
1912 073a 009B ldr r3, [sp]
1913 073c 002B cmp r3, #0
1914 073e 41EC180B vmov d8, r0, r1
1915 0742 40F32581 ble .L241
1916 0746 0026 movs r6, #0
1917 0748 0027 movs r7, #0
1918 074a DDF804A0 ldr r10, [sp, #4]
1919 074e 3446 mov r4, r6
1920 0750 3D46 mov r5, r7
1921 0752 01E0 b .L194
1922 .L242:
1923 0754 4446 mov r4, r8
1924 0756 4D46 mov r5, r9
1925 .L194:
1926 0758 FAE80289 ldrd r8, [r10], #8
1927 075c 53EC182B vmov r2, r3, d8
1928 0760 2046 mov r0, r4
1929 0762 2946 mov r1, r5
1930 0764 FFF7FEFF bl __aeabi_dmul
1931 0768 4246 mov r2, r8
1932 076a 4B46 mov r3, r9
1933 076c FFF7FEFF bl __aeabi_dadd
1934 0770 3246 mov r2, r6
1935 0772 3B46 mov r3, r7
1936 0774 FFF7FEFF bl __aeabi_dsub
1937 0778 D345 cmp fp, r10
1938 077a 2646 mov r6, r4
1939 077c 2F46 mov r7, r5
1940 077e 8046 mov r8, r0
1941 0780 8946 mov r9, r1
1942 0782 E7D1 bne .L242
1943 0784 2246 mov r2, r4
1944 0786 2B46 mov r3, r5
1945 0788 2046 mov r0, r4
1946 078a 2946 mov r1, r5
1947 078c FFF7FEFF bl __aeabi_dmul
ARM GAS /tmp/cczWz03L.s page 35
1948 0790 4246 mov r2, r8
1949 0792 0646 mov r6, r0
1950 0794 0F46 mov r7, r1
1951 0796 4B46 mov r3, r9
1952 0798 4046 mov r0, r8
1953 079a 4946 mov r1, r9
1954 079c FFF7FEFF bl __aeabi_dmul
1955 07a0 0246 mov r2, r0
1956 07a2 0B46 mov r3, r1
1957 07a4 3046 mov r0, r6
1958 07a6 3946 mov r1, r7
1959 07a8 FFF7FEFF bl __aeabi_dadd
1960 07ac 0646 mov r6, r0
1961 07ae 0F46 mov r7, r1
1962 .L193:
1963 07b0 53EC182B vmov r2, r3, d8
1964 07b4 4046 mov r0, r8
1965 07b6 4946 mov r1, r9
1966 07b8 FFF7FEFF bl __aeabi_dmul
1967 07bc 2246 mov r2, r4
1968 07be 2B46 mov r3, r5
1969 07c0 FFF7FEFF bl __aeabi_dmul
1970 07c4 0246 mov r2, r0
1971 07c6 0B46 mov r3, r1
1972 07c8 3046 mov r0, r6
1973 07ca 3946 mov r1, r7
1974 07cc FFF7FEFF bl __aeabi_dsub
1975 07d0 0246 mov r2, r0
1976 07d2 0B46 mov r3, r1
1977 07d4 43EC182B vmov d8, r2, r3
1978 07d8 0022 movs r2, #0
1979 07da 0023 movs r3, #0
1980 07dc FFF7FEFF bl __aeabi_dcmpgt
1981 07e0 0028 cmp r0, #0
1982 07e2 40F0A880 bne .L289
1983 .L195:
1984 07e6 0498 ldr r0, [sp, #16]
1985 07e8 FFF7FEFF bl __aeabi_i2d
1986 07ec 804B ldr r3, .L294+32
1987 07ee 0022 movs r2, #0
1988 07f0 FFF7FEFF bl __aeabi_ddiv
1989 07f4 039B ldr r3, [sp, #12]
1990 07f6 B3F57A7F cmp r3, #1000
1991 07fa 41EC190B vmov d9, r0, r1
1992 07fe BFF60BAE bge .L217
1993 .L235:
1994 0802 059B ldr r3, [sp, #20]
1995 0804 019A ldr r2, [sp, #4]
1996 0806 1344 add r3, r3, r2
1997 0808 9B46 mov fp, r3
1998 080a 039B ldr r3, [sp, #12]
1999 080c 0293 str r3, [sp, #8]
2000 .L206:
2001 080e 0298 ldr r0, [sp, #8]
2002 0810 FFF7FEFF bl __aeabi_i2d
2003 0814 764B ldr r3, .L294+32
2004 0816 0022 movs r2, #0
ARM GAS /tmp/cczWz03L.s page 36
2005 0818 FFF7FEFF bl __aeabi_ddiv
2006 081c 6CA3 adr r3, .L294
2007 081e D3E90023 ldrd r2, [r3]
2008 0822 FFF7FEFF bl __aeabi_dmul
2009 0826 41EC100B vmov d0, r0, r1
2010 082a FFF7FEFF bl cos
2011 082e 53EC102B vmov r2, r3, d0
2012 0832 10EE100A vmov r0, s0 @ int
2013 0836 1946 mov r1, r3
2014 0838 FFF7FEFF bl __aeabi_dadd
2015 083c 009B ldr r3, [sp]
2016 083e 002B cmp r3, #0
2017 0840 41EC180B vmov d8, r0, r1
2018 0844 40F39D80 ble .L243
2019 0848 0026 movs r6, #0
2020 084a 0027 movs r7, #0
2021 084c DDF804A0 ldr r10, [sp, #4]
2022 0850 3446 mov r4, r6
2023 0852 3D46 mov r5, r7
2024 0854 01E0 b .L202
2025 .L244:
2026 0856 4446 mov r4, r8
2027 0858 4D46 mov r5, r9
2028 .L202:
2029 085a FAE80289 ldrd r8, [r10], #8
2030 085e 2246 mov r2, r4
2031 0860 2B46 mov r3, r5
2032 0862 51EC180B vmov r0, r1, d8
2033 0866 FFF7FEFF bl __aeabi_dmul
2034 086a 4246 mov r2, r8
2035 086c 4B46 mov r3, r9
2036 086e FFF7FEFF bl __aeabi_dadd
2037 0872 3246 mov r2, r6
2038 0874 3B46 mov r3, r7
2039 0876 FFF7FEFF bl __aeabi_dsub
2040 087a D345 cmp fp, r10
2041 087c 2646 mov r6, r4
2042 087e 2F46 mov r7, r5
2043 0880 8046 mov r8, r0
2044 0882 8946 mov r9, r1
2045 0884 E7D1 bne .L244
2046 0886 2246 mov r2, r4
2047 0888 2B46 mov r3, r5
2048 088a 2046 mov r0, r4
2049 088c 2946 mov r1, r5
2050 088e FFF7FEFF bl __aeabi_dmul
2051 0892 4246 mov r2, r8
2052 0894 0646 mov r6, r0
2053 0896 0F46 mov r7, r1
2054 0898 4B46 mov r3, r9
2055 089a 4046 mov r0, r8
2056 089c 4946 mov r1, r9
2057 089e FFF7FEFF bl __aeabi_dmul
2058 08a2 0246 mov r2, r0
2059 08a4 0B46 mov r3, r1
2060 08a6 3046 mov r0, r6
2061 08a8 3946 mov r1, r7
ARM GAS /tmp/cczWz03L.s page 37
2062 08aa FFF7FEFF bl __aeabi_dadd
2063 08ae 0646 mov r6, r0
2064 08b0 0F46 mov r7, r1
2065 .L201:
2066 08b2 51EC180B vmov r0, r1, d8
2067 08b6 4246 mov r2, r8
2068 08b8 4B46 mov r3, r9
2069 08ba FFF7FEFF bl __aeabi_dmul
2070 08be 2246 mov r2, r4
2071 08c0 2B46 mov r3, r5
2072 08c2 FFF7FEFF bl __aeabi_dmul
2073 08c6 0246 mov r2, r0
2074 08c8 0B46 mov r3, r1
2075 08ca 3046 mov r0, r6
2076 08cc 3946 mov r1, r7
2077 08ce FFF7FEFF bl __aeabi_dsub
2078 08d2 0246 mov r2, r0
2079 08d4 0B46 mov r3, r1
2080 08d6 43EC182B vmov d8, r2, r3
2081 08da 0022 movs r2, #0
2082 08dc 0023 movs r3, #0
2083 08de FFF7FEFF bl __aeabi_dcmpgt
2084 08e2 0028 cmp r0, #0
2085 08e4 3FF498AD beq .L217
2086 08e8 B0EE480A vmov.f32 s0, s16
2087 08ec F0EE680A vmov.f32 s1, s17
2088 08f0 FFF7FEFF bl sqrt
2089 08f4 55EC104B vmov r4, r5, d0
2090 08f8 39A3 adr r3, .L294+16
2091 08fa D3E90023 ldrd r2, [r3]
2092 08fe 2946 mov r1, r5
2093 0900 10EE100A vmov r0, s0 @ int
2094 0904 FFF7FEFF bl __aeabi_dcmpgt
2095 0908 DDE90263 ldrd r6, r3, [sp, #8]
2096 090c 0028 cmp r0, #0
2097 090e 18BF it ne
2098 0910 3346 movne r3, r6
2099 0912 0393 str r3, [sp, #12]
2100 0914 2046 mov r0, r4
2101 0916 34A3 adr r3, .L294+24
2102 0918 D3E90023 ldrd r2, [r3]
2103 091c 2946 mov r1, r5
2104 091e FFF7FEFF bl __aeabi_dcmplt
2105 0922 0028 cmp r0, #0
2106 0924 7FF478AD bne .L217
2107 0928 0136 adds r6, r6, #1
2108 092a B6F57A7F cmp r6, #1000
2109 092e 0296 str r6, [sp, #8]
2110 0930 7FF46DAF bne .L206
2111 0934 70E5 b .L217
2112 .L289:
2113 0936 B0EE480A vmov.f32 s0, s16
2114 093a F0EE680A vmov.f32 s1, s17
2115 093e FFF7FEFF bl sqrt
2116 0942 55EC104B vmov r4, r5, d0
2117 0946 26A3 adr r3, .L294+16
2118 0948 D3E90023 ldrd r2, [r3]
ARM GAS /tmp/cczWz03L.s page 38
2119 094c 2946 mov r1, r5
2120 094e 10EE100A vmov r0, s0 @ int
2121 0952 FFF7FEFF bl __aeabi_dcmpgt
2122 0956 049B ldr r3, [sp, #16]
2123 0958 029E ldr r6, [sp, #8]
2124 095a 0028 cmp r0, #0
2125 095c 18BF it ne
2126 095e 3346 movne r3, r6
2127 0960 0493 str r3, [sp, #16]
2128 0962 2046 mov r0, r4
2129 0964 20A3 adr r3, .L294+24
2130 0966 D3E90023 ldrd r2, [r3]
2131 096a 2946 mov r1, r5
2132 096c FFF7FEFF bl __aeabi_dcmplt
2133 0970 0028 cmp r0, #0
2134 0972 7FF438AF bne .L195
2135 0976 731E subs r3, r6, #1
2136 0978 0293 str r3, [sp, #8]
2137 097a 0133 adds r3, r3, #1
2138 097c 7FF4C6AE bne .L199
2139 0980 31E7 b .L195
2140 .L243:
2141 0982 0026 movs r6, #0
2142 0984 0027 movs r7, #0
2143 0986 3446 mov r4, r6
2144 0988 3D46 mov r5, r7
2145 098a B046 mov r8, r6
2146 098c B946 mov r9, r7
2147 098e 90E7 b .L201
2148 .L241:
2149 0990 0026 movs r6, #0
2150 0992 0027 movs r7, #0
2151 0994 3446 mov r4, r6
2152 0996 3D46 mov r5, r7
2153 0998 B046 mov r8, r6
2154 099a B946 mov r9, r7
2155 099c 08E7 b .L193
2156 .L208:
2157 099e FFF7FEFF bl __aeabi_i2d
2158 09a2 009B ldr r3, [sp]
2159 09a4 DB00 lsls r3, r3, #3
2160 09a6 0593 str r3, [sp, #20]
2161 09a8 0022 movs r2, #0
2162 09aa 114B ldr r3, .L294+32
2163 09ac FFF7FEFF bl __aeabi_ddiv
2164 09b0 41EC190B vmov d9, r0, r1
2165 09b4 B6E4 b .L236
2166 .L192:
2167 09b6 FFF7FEFF bl __aeabi_i2d
2168 09ba 009B ldr r3, [sp]
2169 09bc DB00 lsls r3, r3, #3
2170 09be 0593 str r3, [sp, #20]
2171 09c0 0022 movs r2, #0
2172 09c2 0B4B ldr r3, .L294+32
2173 09c4 FFF7FEFF bl __aeabi_ddiv
2174 09c8 41EC190B vmov d9, r0, r1
2175 09cc 19E7 b .L235
ARM GAS /tmp/cczWz03L.s page 39
2176 .L295:
2177 09ce 00BF .align 3
2178 .L294:
2179 09d0 182D4454 .word 1413754136
2180 09d4 FB210940 .word 1074340347
2181 09d8 7B14AE47 .word 1202590843
2182 09dc E17A843F .word 1065646817
2183 09e0 39B4C876 .word 1992864825
2184 09e4 BE9FE63F .word 1072078782
2185 09e8 9A999999 .word -1717986918
2186 09ec 9999B93F .word 1069128089
2187 09f0 00408F40 .word 1083129856
2189 .section .text.Goertzel,"ax",%progbits
2190 .align 1
2191 .p2align 2,,3
2192 .global Goertzel
2193 .syntax unified
2194 .thumb
2195 .thumb_func
2196 .fpu fpv4-sp-d16
2198 Goertzel:
2199 @ args = 0, pretend = 0, frame = 0
2200 @ frame_needed = 0, uses_anonymous_args = 0
2201 0000 2DE9F84F push {r3, r4, r5, r6, r7, r8, r9, r10, fp, lr}
2202 0004 42A3 adr r3, .L307+8
2203 0006 D3E90023 ldrd r2, [r3]
2204 000a 2DED028B vpush.64 {d8}
2205 000e 0F46 mov r7, r1
2206 0010 0646 mov r6, r0
2207 0012 51EC100B vmov r0, r1, d0
2208 0016 FFF7FEFF bl __aeabi_dmul
2209 001a 41EC100B vmov d0, r0, r1
2210 001e FFF7FEFF bl cos
2211 0022 53EC102B vmov r2, r3, d0
2212 0026 10EE100A vmov r0, s0 @ int
2213 002a 1946 mov r1, r3
2214 002c FFF7FEFF bl __aeabi_dadd
2215 0030 002F cmp r7, #0
2216 0032 41EC180B vmov d8, r0, r1
2217 0036 5FDD ble .L301
2218 0038 4FF0000A mov r10, #0
2219 003c 4FF0000B mov fp, #0
2220 0040 06EBC707 add r7, r6, r7, lsl #3
2221 0044 D046 mov r8, r10
2222 0046 D946 mov r9, fp
2223 0048 01E0 b .L298
2224 .L302:
2225 004a A046 mov r8, r4
2226 004c A946 mov r9, r5
2227 .L298:
2228 004e F6E80245 ldrd r4, [r6], #8
2229 0052 4246 mov r2, r8
2230 0054 4B46 mov r3, r9
2231 0056 51EC180B vmov r0, r1, d8
2232 005a FFF7FEFF bl __aeabi_dmul
2233 005e 2246 mov r2, r4
2234 0060 2B46 mov r3, r5
ARM GAS /tmp/cczWz03L.s page 40
2235 0062 FFF7FEFF bl __aeabi_dadd
2236 0066 5246 mov r2, r10
2237 0068 5B46 mov r3, fp
2238 006a FFF7FEFF bl __aeabi_dsub
2239 006e B742 cmp r7, r6
2240 0070 C246 mov r10, r8
2241 0072 CB46 mov fp, r9
2242 0074 0446 mov r4, r0
2243 0076 0D46 mov r5, r1
2244 0078 E7D1 bne .L302
2245 007a 4246 mov r2, r8
2246 007c 4B46 mov r3, r9
2247 007e 4046 mov r0, r8
2248 0080 4946 mov r1, r9
2249 0082 FFF7FEFF bl __aeabi_dmul
2250 0086 2246 mov r2, r4
2251 0088 0646 mov r6, r0
2252 008a 0F46 mov r7, r1
2253 008c 2B46 mov r3, r5
2254 008e 2046 mov r0, r4
2255 0090 2946 mov r1, r5
2256 0092 FFF7FEFF bl __aeabi_dmul
2257 0096 0246 mov r2, r0
2258 0098 0B46 mov r3, r1
2259 009a 3046 mov r0, r6
2260 009c 3946 mov r1, r7
2261 009e FFF7FEFF bl __aeabi_dadd
2262 00a2 0646 mov r6, r0
2263 00a4 0F46 mov r7, r1
2264 .L297:
2265 00a6 51EC180B vmov r0, r1, d8
2266 00aa 2246 mov r2, r4
2267 00ac 2B46 mov r3, r5
2268 00ae FFF7FEFF bl __aeabi_dmul
2269 00b2 4246 mov r2, r8
2270 00b4 4B46 mov r3, r9
2271 00b6 FFF7FEFF bl __aeabi_dmul
2272 00ba 0246 mov r2, r0
2273 00bc 0B46 mov r3, r1
2274 00be 3046 mov r0, r6
2275 00c0 3946 mov r1, r7
2276 00c2 FFF7FEFF bl __aeabi_dsub
2277 00c6 0246 mov r2, r0
2278 00c8 0B46 mov r3, r1
2279 00ca 43EC182B vmov d8, r2, r3
2280 00ce 0022 movs r2, #0
2281 00d0 0023 movs r3, #0
2282 00d2 FFF7FEFF bl __aeabi_dcmpgt
2283 00d6 28B9 cbnz r0, .L306
2284 00d8 BDEC028B vldm sp!, {d8}
2285 00dc 9FED0A0B vldr.64 d0, .L307
2286 00e0 BDE8F88F pop {r3, r4, r5, r6, r7, r8, r9, r10, fp, pc}
2287 .L306:
2288 00e4 B0EE480A vmov.f32 s0, s16
2289 00e8 F0EE680A vmov.f32 s1, s17
2290 00ec BDEC028B vldm sp!, {d8}
2291 00f0 BDE8F84F pop {r3, r4, r5, r6, r7, r8, r9, r10, fp, lr}
ARM GAS /tmp/cczWz03L.s page 41
2292 00f4 FFF7FEBF b sqrt
2293 .L301:
2294 00f8 0026 movs r6, #0
2295 00fa 0027 movs r7, #0
2296 00fc B046 mov r8, r6
2297 00fe B946 mov r9, r7
2298 0100 3446 mov r4, r6
2299 0102 3D46 mov r5, r7
2300 0104 CFE7 b .L297
2301 .L308:
2302 0106 00BF .align 3
2303 .L307:
2304 0108 11EA2D81 .word -2127697391
2305 010c 9997713D .word 1030854553
2306 0110 182D4454 .word 1413754136
2307 0114 FB210940 .word 1074340347
2309 .ident "GCC: (15:10.3-2021.07-4) 10.3.1 20210621 (release)"
ARM GAS /tmp/cczWz03L.s page 42
DEFINED SYMBOLS
*ABS*:0000000000000000 FIRFilterCode.c
/tmp/cczWz03L.s:24 .text.RectWinFIR:0000000000000000 $t
/tmp/cczWz03L.s:33 .text.RectWinFIR:0000000000000000 RectWinFIR
/tmp/cczWz03L.s:47 .text.RectWinFIR:000000000000001e $d
/tmp/cczWz03L.s:52 .text.RectWinFIR:0000000000000028 $t
/tmp/cczWz03L.s:332 .text.RectWinFIR:0000000000000300 $d
/tmp/cczWz03L.s:343 .text.RectWinFIR:0000000000000328 $t
/tmp/cczWz03L.s:559 .text.RectWinFIR:0000000000000568 $d
/tmp/cczWz03L.s:571 .text.Sinc:0000000000000000 $t
/tmp/cczWz03L.s:579 .text.Sinc:0000000000000000 Sinc
/tmp/cczWz03L.s:611 .text.Sinc:0000000000000048 $d
/tmp/cczWz03L.s:619 .text.Bessel:0000000000000000 $t
/tmp/cczWz03L.s:627 .text.Bessel:0000000000000000 Bessel
/tmp/cczWz03L.s:717 .text.Bessel:00000000000000c0 $d
/tmp/cczWz03L.s:722 .text.FIRFilterWindow:0000000000000000 $t
/tmp/cczWz03L.s:730 .text.FIRFilterWindow:0000000000000000 FIRFilterWindow
/tmp/cczWz03L.s:1051 .text.FIRFilterWindow:0000000000000338 $d
/tmp/cczWz03L.s:1062 .text.FIRFilterWindow:0000000000000360 $t
/tmp/cczWz03L.s:1168 .text.FIRFilterWindow:0000000000000458 $d
/tmp/cczWz03L.s:1180 .text.FIRFreqError:0000000000000000 $t
/tmp/cczWz03L.s:1188 .text.FIRFreqError:0000000000000000 FIRFreqError
/tmp/cczWz03L.s:1412 .text.FIRFreqError:0000000000000238 $d
/tmp/cczWz03L.s:1425 .text.FIRFreqError:0000000000000268 $t
/tmp/cczWz03L.s:1759 .text.FIRFreqError:0000000000000598 $d
/tmp/cczWz03L.s:1775 .text.FIRFreqError:00000000000005d4 $t
/tmp/cczWz03L.s:2179 .text.FIRFreqError:00000000000009d0 $d
/tmp/cczWz03L.s:2190 .text.Goertzel:0000000000000000 $t
/tmp/cczWz03L.s:2198 .text.Goertzel:0000000000000000 Goertzel
/tmp/cczWz03L.s:2304 .text.Goertzel:0000000000000108 $d
UNDEFINED SYMBOLS
__aeabi_i2d
__aeabi_dmul
__aeabi_dsub
__aeabi_dcmpgt
__aeabi_dcmplt
__aeabi_ddiv
__aeabi_dcmpeq
__aeabi_dadd
memset
sin
cos
pow
malloc
free
sqrt
__aeabi_d2iz
__aeabi_dcmple