2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 1
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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 "tx.c"
|
|
|
|
|
|
14 .text
|
|
|
|
|
|
15 .section .text.tx_mixer,"ax",%progbits
|
|
|
|
|
|
16 .align 1
|
|
|
|
|
|
17 .p2align 2,,3
|
|
|
|
|
|
18 .global tx_mixer
|
|
|
|
|
|
19 .arch armv7e-m
|
|
|
|
|
|
20 .syntax unified
|
|
|
|
|
|
21 .thumb
|
|
|
|
|
|
22 .thumb_func
|
|
|
|
|
|
23 .fpu fpv4-sp-d16
|
|
|
|
|
|
25 tx_mixer:
|
|
|
|
|
|
26 @ args = 4, pretend = 0, frame = 0
|
|
|
|
|
|
27 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
|
|
|
28 0000 70B5 push {r4, r5, r6, lr}
|
|
|
|
|
|
29 0002 0E4D ldr r5, .L10
|
|
|
|
|
|
30 0004 0E4C ldr r4, .L10+4
|
|
|
|
|
|
31 0006 2B68 ldr r3, [r5]
|
|
|
|
|
|
32 0008 049A ldr r2, [sp, #16]
|
|
|
|
|
|
33 000a 6360 str r3, [r4, #4]
|
|
|
|
|
|
34 000c 91B1 cbz r1, .L2
|
|
|
|
|
|
35 000e 4FEAA20E asr lr, r2, #2
|
|
|
|
|
|
36 0012 4E00 lsls r6, r1, #1
|
|
|
|
|
|
37 0014 7344 add r3, r3, lr
|
|
|
|
|
|
38 0016 0022 movs r2, #0
|
|
|
|
|
|
39 .L3:
|
|
|
|
|
|
40 0018 A168 ldr r1, [r4, #8]
|
|
|
|
|
|
41 001a 6360 str r3, [r4, #4]
|
|
|
|
|
|
42 001c 0915 asrs r1, r1, #20
|
|
|
|
|
|
43 001e 02F1010C add ip, r2, #1
|
|
|
|
|
|
44 0022 20F81210 strh r1, [r0, r2, lsl #1] @ movhi
|
|
|
|
|
|
45 0026 1FFA8CF2 uxth r2, ip
|
|
|
|
|
|
46 002a B242 cmp r2, r6
|
|
|
|
|
|
47 002c 1946 mov r1, r3
|
|
|
|
|
|
48 002e 7344 add r3, r3, lr
|
|
|
|
|
|
49 0030 F2DB blt .L3
|
|
|
|
|
|
50 0032 2960 str r1, [r5]
|
|
|
|
|
|
51 .L2:
|
|
|
|
|
|
52 0034 024B ldr r3, .L10+4
|
|
|
|
|
|
53 0036 9B68 ldr r3, [r3, #8]
|
|
|
|
|
|
54 0038 70BD pop {r4, r5, r6, pc}
|
|
|
|
|
|
55 .L11:
|
|
|
|
|
|
56 003a 00BF .align 2
|
|
|
|
|
|
57 .L10:
|
|
|
|
|
|
58 003c 00000000 .word .LANCHOR0
|
2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 2
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
59 0040 000C0240 .word 1073875968
|
|
|
|
|
|
61 .section .text.ssb_modulator,"ax",%progbits
|
|
|
|
|
|
62 .align 1
|
|
|
|
|
|
63 .p2align 2,,3
|
|
|
|
|
|
64 .global ssb_modulator
|
|
|
|
|
|
65 .syntax unified
|
|
|
|
|
|
66 .thumb
|
|
|
|
|
|
67 .thumb_func
|
|
|
|
|
|
68 .fpu fpv4-sp-d16
|
|
|
|
|
|
70 ssb_modulator:
|
|
|
|
|
|
71 @ args = 4, pretend = 0, frame = 0
|
|
|
|
|
|
72 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
|
|
|
73 0000 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr}
|
|
|
|
|
|
74 0004 124E ldr r6, .L20
|
|
|
|
|
|
75 0006 134D ldr r5, .L20+4
|
|
|
|
|
|
76 0008 3168 ldr r1, [r6]
|
|
|
|
|
|
77 000a 089F ldr r7, [sp, #32]
|
|
|
|
|
|
78 000c 6960 str r1, [r5, #4]
|
|
|
|
|
|
79 000e D2B1 cbz r2, .L13
|
|
|
|
|
|
80 0010 02F1FF38 add r8, r2, #-1
|
|
|
|
|
|
81 0014 1FFA88F8 uxth r8, r8
|
|
|
|
|
|
82 0018 03EB8808 add r8, r3, r8, lsl #2
|
|
|
|
|
|
83 001c 1C1F subs r4, r3, #4
|
|
|
|
|
|
84 001e 00E0 b .L14
|
|
|
|
|
|
85 .L19:
|
|
|
|
|
|
86 0020 3168 ldr r1, [r6]
|
|
|
|
|
|
87 .L14:
|
|
|
|
|
|
88 0022 D5F80890 ldr r9, [r5, #8]
|
|
|
|
|
|
89 0026 3944 add r1, r1, r7
|
|
|
|
|
|
90 0028 3160 str r1, [r6]
|
|
|
|
|
|
91 002a 6960 str r1, [r5, #4]
|
|
|
|
|
|
92 002c 54F8041F ldr r1, [r4, #4]!
|
|
|
|
|
|
93 0030 0FFA89F0 sxth r0, r9
|
|
|
|
|
|
94 0034 FFF7FEFF bl sat_mult_q31
|
|
|
|
|
|
95 0038 2168 ldr r1, [r4]
|
|
|
|
|
|
96 003a 4FEA2940 asr r0, r9, #16
|
|
|
|
|
|
97 003e FFF7FEFF bl sat_mult_q31
|
|
|
|
|
|
98 0042 A045 cmp r8, r4
|
|
|
|
|
|
99 0044 ECD1 bne .L19
|
|
|
|
|
|
100 .L13:
|
|
|
|
|
|
101 0046 034B ldr r3, .L20+4
|
|
|
|
|
|
102 0048 9B68 ldr r3, [r3, #8]
|
|
|
|
|
|
103 004a BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
|
|
|
|
|
|
104 .L21:
|
|
|
|
|
|
105 004e 00BF .align 2
|
|
|
|
|
|
106 .L20:
|
|
|
|
|
|
107 0050 00000000 .word .LANCHOR1
|
|
|
|
|
|
108 0054 000C0240 .word 1073875968
|
|
|
|
|
|
110 .section .text.dc_modulator,"ax",%progbits
|
|
|
|
|
|
111 .align 1
|
|
|
|
|
|
112 .p2align 2,,3
|
|
|
|
|
|
113 .global dc_modulator
|
|
|
|
|
|
114 .syntax unified
|
|
|
|
|
|
115 .thumb
|
|
|
|
|
|
116 .thumb_func
|
|
|
|
|
|
117 .fpu fpv4-sp-d16
|
|
|
|
|
|
119 dc_modulator:
|
2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 3
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
120 @ args = 0, pretend = 0, frame = 0
|
|
|
|
|
|
121 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
|
|
|
122 @ link register save eliminated.
|
|
|
|
|
|
123 0000 10B4 push {r4}
|
|
|
|
|
|
124 0002 0B4C ldr r4, .L27
|
|
|
|
|
|
125 0004 011F subs r1, r0, #4
|
|
|
|
|
|
126 0006 043A subs r2, r2, #4
|
|
|
|
|
|
127 0008 00F1FC0C add ip, r0, #252
|
|
|
|
|
|
128 .L24:
|
|
|
|
|
|
129 000c 51F8043F ldr r3, [r1, #4]!
|
|
|
|
|
|
130 0010 2068 ldr r0, [r4]
|
|
|
|
|
|
131 0012 00FB03F3 mul r3, r0, r3
|
|
|
|
|
|
132 0016 002B cmp r3, #0
|
|
|
|
|
|
133 0018 B8BF it lt
|
|
|
|
|
|
134 001a 03F6FF73 addwlt r3, r3, #4095
|
|
|
|
|
|
135 001e 0432 adds r2, r2, #4
|
|
|
|
|
|
136 0020 1B13 asrs r3, r3, #12
|
|
|
|
|
|
137 0022 8C45 cmp ip, r1
|
|
|
|
|
|
138 0024 1360 str r3, [r2]
|
|
|
|
|
|
139 0026 F1D1 bne .L24
|
|
|
|
|
|
140 0028 5DF8044B ldr r4, [sp], #4
|
|
|
|
|
|
141 002c 7047 bx lr
|
|
|
|
|
|
142 .L28:
|
|
|
|
|
|
143 002e 00BF .align 2
|
|
|
|
|
|
144 .L27:
|
|
|
|
|
|
145 0030 00000000 .word mic_gain
|
|
|
|
|
|
147 .section .text.am_modulator,"ax",%progbits
|
|
|
|
|
|
148 .align 1
|
|
|
|
|
|
149 .p2align 2,,3
|
|
|
|
|
|
150 .global am_modulator
|
|
|
|
|
|
151 .syntax unified
|
|
|
|
|
|
152 .thumb
|
|
|
|
|
|
153 .thumb_func
|
|
|
|
|
|
154 .fpu fpv4-sp-d16
|
|
|
|
|
|
156 am_modulator:
|
|
|
|
|
|
157 @ args = 0, pretend = 0, frame = 0
|
|
|
|
|
|
158 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
|
|
|
159 0000 002A cmp r2, #0
|
|
|
|
|
|
160 0002 4ED0 beq .L48
|
|
|
|
|
|
161 0004 30B5 push {r4, r5, lr}
|
|
|
|
|
|
162 0006 1C1D adds r4, r3, #4
|
|
|
|
|
|
163 0008 A042 cmp r0, r4
|
|
|
|
|
|
164 000a 18BF it ne
|
|
|
|
|
|
165 000c A142 cmpne r1, r4
|
|
|
|
|
|
166 000e 14BF ite ne
|
|
|
|
|
|
167 0010 0124 movne r4, #1
|
|
|
|
|
|
168 0012 0024 moveq r4, #0
|
|
|
|
|
|
169 0014 551E subs r5, r2, #1
|
|
|
|
|
|
170 0016 00F1040C add ip, r0, #4
|
|
|
|
|
|
171 001a ADB2 uxth r5, r5
|
|
|
|
|
|
172 001c 6145 cmp r1, ip
|
|
|
|
|
|
173 001e 0CBF ite eq
|
|
|
|
|
|
174 0020 0024 moveq r4, #0
|
|
|
|
|
|
175 0022 04F00104 andne r4, r4, #1
|
|
|
|
|
|
176 0026 0A2D cmp r5, #10
|
|
|
|
|
|
177 0028 94BF ite ls
|
|
|
|
|
|
178 002a 0024 movls r4, #0
|
2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 4
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
179 002c 04F00104 andhi r4, r4, #1
|
|
|
|
|
|
180 0030 44B3 cbz r4, .L31
|
|
|
|
|
|
181 0032 40EA0104 orr r4, r0, r1
|
|
|
|
|
|
182 0036 1C43 orrs r4, r4, r3
|
|
|
|
|
|
183 0038 6407 lsls r4, r4, #29
|
|
|
|
|
|
184 003a 23D1 bne .L31
|
|
|
|
|
|
185 003c 9FED1A6B vldr.64 d6, .L51 @ int
|
|
|
|
|
|
186 0040 5508 lsrs r5, r2, #1
|
|
|
|
|
|
187 0042 A3F10804 sub r4, r3, #8
|
|
|
|
|
|
188 0046 01EBC505 add r5, r1, r5, lsl #3
|
|
|
|
|
|
189 004a A0F1080E sub lr, r0, #8
|
|
|
|
|
|
190 004e 8C46 mov ip, r1
|
|
|
|
|
|
191 .L32:
|
|
|
|
|
|
192 0050 94ED027B vldr.64 d7, [r4, #8] @ int
|
|
|
|
|
|
193 0054 8EED027B vstr.64 d7, [lr, #8] @ int
|
|
|
|
|
|
194 0058 ACEC026B vstmia.64 ip!, {d6} @ int
|
|
|
|
|
|
195 005c AC45 cmp ip, r5
|
|
|
|
|
|
196 005e 04F10804 add r4, r4, #8
|
|
|
|
|
|
197 0062 0EF1080E add lr, lr, #8
|
|
|
|
|
|
198 0066 F3D1 bne .L32
|
|
|
|
|
|
199 0068 22F00104 bic r4, r2, #1
|
|
|
|
|
|
200 006c A242 cmp r2, r4
|
|
|
|
|
|
201 006e 1FFA84FC uxth ip, r4
|
|
|
|
|
|
202 0072 06D0 beq .L29
|
|
|
|
|
|
203 0074 53F82C20 ldr r2, [r3, ip, lsl #2]
|
|
|
|
|
|
204 0078 40F82C20 str r2, [r0, ip, lsl #2]
|
|
|
|
|
|
205 007c 0023 movs r3, #0
|
|
|
|
|
|
206 007e 41F82C30 str r3, [r1, ip, lsl #2]
|
|
|
|
|
|
207 .L29:
|
|
|
|
|
|
208 0082 30BD pop {r4, r5, pc}
|
|
|
|
|
|
209 .L31:
|
|
|
|
|
|
210 0084 1A1F subs r2, r3, #4
|
|
|
|
|
|
211 0086 0438 subs r0, r0, #4
|
|
|
|
|
|
212 0088 03EB8503 add r3, r3, r5, lsl #2
|
|
|
|
|
|
213 008c 0439 subs r1, r1, #4
|
|
|
|
|
|
214 008e 0025 movs r5, #0
|
|
|
|
|
|
215 .L34:
|
|
|
|
|
|
216 0090 52F8044F ldr r4, [r2, #4]!
|
|
|
|
|
|
217 0094 40F8044F str r4, [r0, #4]!
|
|
|
|
|
|
218 0098 9A42 cmp r2, r3
|
|
|
|
|
|
219 009a 41F8045F str r5, [r1, #4]!
|
|
|
|
|
|
220 009e F7D1 bne .L34
|
|
|
|
|
|
221 00a0 30BD pop {r4, r5, pc}
|
|
|
|
|
|
222 .L48:
|
|
|
|
|
|
223 00a2 7047 bx lr
|
|
|
|
|
|
224 .L52:
|
|
|
|
|
|
225 00a4 AFF30080 .align 3
|
|
|
|
|
|
226 .L51:
|
|
|
|
|
|
227 00a8 00000000 .word 0
|
|
|
|
|
|
228 00ac 00000000 .word 0
|
|
|
|
|
|
230 .section .text.tx_audio_filter_init,"ax",%progbits
|
|
|
|
|
|
231 .align 1
|
|
|
|
|
|
232 .p2align 2,,3
|
|
|
|
|
|
233 .global tx_audio_filter_init
|
|
|
|
|
|
234 .syntax unified
|
|
|
|
|
|
235 .thumb
|
|
|
|
|
|
236 .thumb_func
|
2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 5
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
237 .fpu fpv4-sp-d16
|
|
|
|
|
|
239 tx_audio_filter_init:
|
|
|
|
|
|
240 @ args = 0, pretend = 0, frame = 0
|
|
|
|
|
|
241 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
|
|
|
242 0000 10B5 push {r4, lr}
|
|
|
|
|
|
243 0002 0B49 ldr r1, .L55
|
|
|
|
|
|
244 0004 0B4B ldr r3, .L55+4
|
|
|
|
|
|
245 0006 0C48 ldr r0, .L55+8
|
|
|
|
|
|
246 0008 82B0 sub sp, sp, #8
|
|
|
|
|
|
247 000a 4FF48064 mov r4, #1024
|
|
|
|
|
|
248 000e CDE90014 strd r1, r4, [sp]
|
|
|
|
|
|
249 0012 8022 movs r2, #128
|
|
|
|
|
|
250 0014 1021 movs r1, #16
|
|
|
|
|
|
251 0016 FFF7FEFF bl arm_fir_interpolate_init_q15
|
|
|
|
|
|
252 001a 084A ldr r2, .L55+12
|
|
|
|
|
|
253 001c 054B ldr r3, .L55+4
|
|
|
|
|
|
254 001e 0848 ldr r0, .L55+16
|
|
|
|
|
|
255 0020 CDE90024 strd r2, r4, [sp]
|
|
|
|
|
|
256 0024 1021 movs r1, #16
|
|
|
|
|
|
257 0026 8022 movs r2, #128
|
|
|
|
|
|
258 0028 FFF7FEFF bl arm_fir_interpolate_init_q15
|
|
|
|
|
|
259 002c 02B0 add sp, sp, #8
|
|
|
|
|
|
260 @ sp needed
|
|
|
|
|
|
261 002e 10BD pop {r4, pc}
|
|
|
|
|
|
262 .L56:
|
|
|
|
|
|
263 .align 2
|
|
|
|
|
|
264 .L55:
|
|
|
|
|
|
265 0030 00000000 .word tx_audio_filter_I_state
|
|
|
|
|
|
266 0034 00000000 .word .LANCHOR2
|
|
|
|
|
|
267 0038 00000000 .word .LANCHOR3
|
|
|
|
|
|
268 003c 00000000 .word tx_audio_filter_Q_state
|
|
|
|
|
|
269 0040 00000000 .word .LANCHOR4
|
|
|
|
|
|
271 .global __aeabi_dadd
|
|
|
|
|
|
272 .global __aeabi_dcmpge
|
|
|
|
|
|
273 .global __aeabi_d2uiz
|
|
|
|
|
|
274 .section .text.u12_sine,"ax",%progbits
|
|
|
|
|
|
275 .align 1
|
|
|
|
|
|
276 .p2align 2,,3
|
|
|
|
|
|
277 .global u12_sine
|
|
|
|
|
|
278 .syntax unified
|
|
|
|
|
|
279 .thumb
|
|
|
|
|
|
280 .thumb_func
|
|
|
|
|
|
281 .fpu fpv4-sp-d16
|
|
|
|
|
|
283 u12_sine:
|
|
|
|
|
|
284 @ args = 0, pretend = 0, frame = 0
|
|
|
|
|
|
285 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
|
|
|
286 0000 10B5 push {r4, lr}
|
|
|
|
|
|
287 0002 214C ldr r4, .L61+24
|
|
|
|
|
|
288 0004 2DED028B vpush.64 {d8}
|
|
|
|
|
|
289 0008 19A3 adr r3, .L61
|
|
|
|
|
|
290 000a D3E90023 ldrd r2, [r3]
|
|
|
|
|
|
291 000e D4E90001 ldrd r0, [r4]
|
|
|
|
|
|
292 0012 FFF7FEFF bl __aeabi_dadd
|
|
|
|
|
|
293 0016 0246 mov r2, r0
|
|
|
|
|
|
294 0018 0B46 mov r3, r1
|
|
|
|
|
|
295 001a 43EC182B vmov d8, r2, r3
|
|
|
|
|
|
296 001e 16A3 adr r3, .L61+8
|
2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 6
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
297 0020 D3E90023 ldrd r2, [r3]
|
|
|
|
|
|
298 0024 FFF7FEFF bl __aeabi_dcmpge
|
|
|
|
|
|
299 0028 C8B9 cbnz r0, .L58
|
|
|
|
|
|
300 002a B0EE480A vmov.f32 s0, s16
|
|
|
|
|
|
301 002e F0EE680A vmov.f32 s1, s17
|
|
|
|
|
|
302 0032 84ED008B vstr.64 d8, [r4]
|
|
|
|
|
|
303 0036 FFF7FEFF bl sin
|
|
|
|
|
|
304 003a 53EC102B vmov r2, r3, d0
|
|
|
|
|
|
305 003e 10EE100A vmov r0, s0 @ int
|
|
|
|
|
|
306 0042 1946 mov r1, r3
|
|
|
|
|
|
307 0044 FFF7FEFF bl __aeabi_dadd
|
|
|
|
|
|
308 0048 0DA3 adr r3, .L61+16
|
|
|
|
|
|
309 004a D3E90023 ldrd r2, [r3]
|
|
|
|
|
|
310 004e FFF7FEFF bl __aeabi_dadd
|
|
|
|
|
|
311 0052 FFF7FEFF bl __aeabi_d2uiz
|
|
|
|
|
|
312 0056 BDEC028B vldm sp!, {d8}
|
|
|
|
|
|
313 005a 80B2 uxth r0, r0
|
|
|
|
|
|
314 005c 10BD pop {r4, pc}
|
|
|
|
|
|
315 .L58:
|
|
|
|
|
|
316 005e BDEC028B vldm sp!, {d8}
|
|
|
|
|
|
317 0062 0022 movs r2, #0
|
|
|
|
|
|
318 0064 0023 movs r3, #0
|
|
|
|
|
|
319 0066 40F2FF70 movw r0, #2047
|
|
|
|
|
|
320 006a C4E90023 strd r2, [r4]
|
|
|
|
|
|
321 006e 10BD pop {r4, pc}
|
|
|
|
|
|
322 .L62:
|
|
|
|
|
|
323 .align 3
|
|
|
|
|
|
324 .L61:
|
|
|
|
|
|
325 0070 33333333 .word 858993459
|
|
|
|
|
|
326 0074 3333C33F .word 1069757235
|
|
|
|
|
|
327 0078 1F85EB51 .word 1374389535
|
|
|
|
|
|
328 007c B81E1940 .word 1075388088
|
|
|
|
|
|
329 0080 00000000 .word 0
|
|
|
|
|
|
330 0084 00FC9F40 .word 1084226560
|
|
|
|
|
|
331 0088 00000000 .word .LANCHOR5
|
|
|
|
|
|
333 .section .text.generate_tone,"ax",%progbits
|
|
|
|
|
|
334 .align 1
|
|
|
|
|
|
335 .p2align 2,,3
|
|
|
|
|
|
336 .global generate_tone
|
|
|
|
|
|
337 .syntax unified
|
|
|
|
|
|
338 .thumb
|
|
|
|
|
|
339 .thumb_func
|
|
|
|
|
|
340 .fpu fpv4-sp-d16
|
|
|
|
|
|
342 generate_tone:
|
|
|
|
|
|
343 @ args = 0, pretend = 0, frame = 0
|
|
|
|
|
|
344 @ frame_needed = 0, uses_anonymous_args = 0
|
|
|
|
|
|
345 0000 0029 cmp r1, #0
|
|
|
|
|
|
346 0002 4AD0 beq .L71
|
|
|
|
|
|
347 0004 2DE9F84F push {r3, r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
|
|
|
|
|
348 0008 2B4B ldr r3, .L74+24
|
|
|
|
|
|
349 000a 0139 subs r1, r1, #1
|
|
|
|
|
|
350 000c D3E90045 ldrd r4, [r3]
|
|
|
|
|
|
351 0010 0FF28C09 adr r9, .L74
|
|
|
|
|
|
352 0014 D9E90089 ldrd r8, [r9]
|
|
|
|
|
|
353 0018 0FF28C0B adr fp, .L74+8
|
|
|
|
|
|
354 001c DBE900AB ldrd r10, [fp]
|
|
|
|
|
|
355 0020 89B2 uxth r1, r1
|
2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 7
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
356 0022 071D adds r7, r0, #4
|
|
|
|
|
|
357 0024 0646 mov r6, r0
|
|
|
|
|
|
358 0026 07EB8107 add r7, r7, r1, lsl #2
|
|
|
|
|
|
359 .L68:
|
|
|
|
|
|
360 002a 4246 mov r2, r8
|
|
|
|
|
|
361 002c 4B46 mov r3, r9
|
|
|
|
|
|
362 002e 2046 mov r0, r4
|
|
|
|
|
|
363 0030 2946 mov r1, r5
|
|
|
|
|
|
364 0032 FFF7FEFF bl __aeabi_dadd
|
|
|
|
|
|
365 0036 5246 mov r2, r10
|
|
|
|
|
|
366 0038 5B46 mov r3, fp
|
|
|
|
|
|
367 003a 0446 mov r4, r0
|
|
|
|
|
|
368 003c 0D46 mov r5, r1
|
|
|
|
|
|
369 003e FFF7FEFF bl __aeabi_dcmpge
|
|
|
|
|
|
370 0042 45EC104B vmov d0, r4, r5
|
|
|
|
|
|
371 0046 C8B9 cbnz r0, .L65
|
|
|
|
|
|
372 0048 FFF7FEFF bl sin
|
|
|
|
|
|
373 004c 53EC102B vmov r2, r3, d0
|
|
|
|
|
|
374 0050 10EE100A vmov r0, s0 @ int
|
|
|
|
|
|
375 0054 1946 mov r1, r3
|
|
|
|
|
|
376 0056 FFF7FEFF bl __aeabi_dadd
|
|
|
|
|
|
377 005a 15A3 adr r3, .L74+16
|
|
|
|
|
|
378 005c D3E90023 ldrd r2, [r3]
|
|
|
|
|
|
379 0060 FFF7FEFF bl __aeabi_dadd
|
|
|
|
|
|
380 0064 FFF7FEFF bl __aeabi_d2uiz
|
|
|
|
|
|
381 0068 80B2 uxth r0, r0
|
|
|
|
|
|
382 006a 46F8040B str r0, [r6], #4
|
|
|
|
|
|
383 006e BE42 cmp r6, r7
|
|
|
|
|
|
384 0070 DBD1 bne .L68
|
|
|
|
|
|
385 0072 114B ldr r3, .L74+24
|
|
|
|
|
|
386 0074 C3E90045 strd r4, [r3]
|
|
|
|
|
|
387 0078 BDE8F88F pop {r3, r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
|
|
|
|
|
388 .L65:
|
|
|
|
|
|
389 007c 40F2FF73 movw r3, #2047
|
|
|
|
|
|
390 0080 46F8043B str r3, [r6], #4
|
|
|
|
|
|
391 0084 BE42 cmp r6, r7
|
|
|
|
|
|
392 0086 4FF00004 mov r4, #0
|
|
|
|
|
|
393 008a 4FF00005 mov r5, #0
|
|
|
|
|
|
394 008e CCD1 bne .L68
|
|
|
|
|
|
395 0090 094B ldr r3, .L74+24
|
|
|
|
|
|
396 0092 C3E90045 strd r4, [r3]
|
|
|
|
|
|
397 0096 BDE8F88F pop {r3, r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
|
|
|
|
|
398 .L71:
|
|
|
|
|
|
399 009a 7047 bx lr
|
|
|
|
|
|
400 .L75:
|
|
|
|
|
|
401 009c AFF30080 .align 3
|
|
|
|
|
|
402 .L74:
|
|
|
|
|
|
403 00a0 33333333 .word 858993459
|
|
|
|
|
|
404 00a4 3333C33F .word 1069757235
|
|
|
|
|
|
405 00a8 1F85EB51 .word 1374389535
|
|
|
|
|
|
406 00ac B81E1940 .word 1075388088
|
|
|
|
|
|
407 00b0 00000000 .word 0
|
|
|
|
|
|
408 00b4 00FC9F40 .word 1084226560
|
|
|
|
|
|
409 00b8 00000000 .word .LANCHOR5
|
|
|
|
|
|
411 .global tx_audio_filter_coeffs
|
|
|
|
|
|
412 .global tx_audio_filter_Q_state
|
|
|
|
|
|
413 .global tx_audio_filter_I_state
|
2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 8
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
414 .global tx_audio_filter_Q_struct
|
|
|
|
|
|
415 .global tx_audio_filter_I_struct
|
|
|
|
|
|
416 .global tx_adc_buffer_ready
|
|
|
|
|
|
417 .global tx_dac_buffer_toggle
|
|
|
|
|
|
418 .global half_tx_dac_buffer_empty
|
|
|
|
|
|
419 .global tx_signal_last
|
|
|
|
|
|
420 .global tx_signal
|
|
|
|
|
|
421 .global tx_nco1_increment
|
|
|
|
|
|
422 .section .bss.angle.0,"aw",%nobits
|
|
|
|
|
|
423 .align 3
|
|
|
|
|
|
424 .set .LANCHOR5,. + 0
|
|
|
|
|
|
427 angle.0:
|
|
|
|
|
|
428 0000 00000000 .space 8
|
|
|
|
|
|
428 00000000
|
|
|
|
|
|
429 .section .bss.half_tx_dac_buffer_empty,"aw",%nobits
|
|
|
|
|
|
432 half_tx_dac_buffer_empty:
|
|
|
|
|
|
433 0000 00 .space 1
|
|
|
|
|
|
434 .section .bss.phase_accu.1,"aw",%nobits
|
|
|
|
|
|
435 .align 2
|
|
|
|
|
|
436 .set .LANCHOR1,. + 0
|
|
|
|
|
|
439 phase_accu.1:
|
|
|
|
|
|
440 0000 00000000 .space 4
|
|
|
|
|
|
441 .section .bss.phase_accu.2,"aw",%nobits
|
|
|
|
|
|
442 .align 2
|
|
|
|
|
|
443 .set .LANCHOR0,. + 0
|
|
|
|
|
|
446 phase_accu.2:
|
|
|
|
|
|
447 0000 00000000 .space 4
|
|
|
|
|
|
448 .section .bss.tx_adc_buffer_ready,"aw",%nobits
|
|
|
|
|
|
451 tx_adc_buffer_ready:
|
|
|
|
|
|
452 0000 00 .space 1
|
|
|
|
|
|
453 .section .bss.tx_audio_filter_I_state,"aw",%nobits
|
|
|
|
|
|
454 .align 2
|
|
|
|
|
|
457 tx_audio_filter_I_state:
|
|
|
|
|
|
458 0000 00000000 .space 4604
|
|
|
|
|
|
458 00000000
|
|
|
|
|
|
458 00000000
|
|
|
|
|
|
458 00000000
|
|
|
|
|
|
458 00000000
|
|
|
|
|
|
459 .section .bss.tx_audio_filter_I_struct,"aw",%nobits
|
|
|
|
|
|
460 .align 2
|
|
|
|
|
|
461 .set .LANCHOR3,. + 0
|
|
|
|
|
|
464 tx_audio_filter_I_struct:
|
|
|
|
|
|
465 0000 00000000 .space 12
|
|
|
|
|
|
465 00000000
|
|
|
|
|
|
465 00000000
|
|
|
|
|
|
466 .section .bss.tx_audio_filter_Q_state,"aw",%nobits
|
|
|
|
|
|
467 .align 2
|
|
|
|
|
|
470 tx_audio_filter_Q_state:
|
|
|
|
|
|
471 0000 00000000 .space 4604
|
|
|
|
|
|
471 00000000
|
|
|
|
|
|
471 00000000
|
|
|
|
|
|
471 00000000
|
|
|
|
|
|
471 00000000
|
|
|
|
|
|
472 .section .bss.tx_audio_filter_Q_struct,"aw",%nobits
|
|
|
|
|
|
473 .align 2
|
|
|
|
|
|
474 .set .LANCHOR4,. + 0
|
|
|
|
|
|
477 tx_audio_filter_Q_struct:
|
2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 9
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
478 0000 00000000 .space 12
|
|
|
|
|
|
478 00000000
|
|
|
|
|
|
478 00000000
|
|
|
|
|
|
479 .section .bss.tx_audio_filter_coeffs,"aw",%nobits
|
|
|
|
|
|
480 .align 2
|
|
|
|
|
|
481 .set .LANCHOR2,. + 0
|
|
|
|
|
|
484 tx_audio_filter_coeffs:
|
|
|
|
|
|
485 0000 00000000 .space 512
|
|
|
|
|
|
485 00000000
|
|
|
|
|
|
485 00000000
|
|
|
|
|
|
485 00000000
|
|
|
|
|
|
485 00000000
|
|
|
|
|
|
486 .section .bss.tx_dac_buffer_toggle,"aw",%nobits
|
|
|
|
|
|
489 tx_dac_buffer_toggle:
|
|
|
|
|
|
490 0000 00 .space 1
|
|
|
|
|
|
491 .section .bss.tx_nco1_increment,"aw",%nobits
|
|
|
|
|
|
492 .align 2
|
|
|
|
|
|
495 tx_nco1_increment:
|
|
|
|
|
|
496 0000 00000000 .space 4
|
|
|
|
|
|
497 .section .bss.tx_signal,"aw",%nobits
|
|
|
|
|
|
500 tx_signal:
|
|
|
|
|
|
501 0000 00 .space 1
|
|
|
|
|
|
502 .section .bss.tx_signal_last,"aw",%nobits
|
|
|
|
|
|
505 tx_signal_last:
|
|
|
|
|
|
506 0000 00 .space 1
|
|
|
|
|
|
507 .ident "GCC: (15:10.3-2021.07-4) 10.3.1 20210621 (release)"
|
2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 10
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DEFINED SYMBOLS
|
|
|
|
|
|
*ABS*:0000000000000000 tx.c
|
2022-01-17 20:05:23 +01:00
|
|
|
|
/tmp/ccBLcNpy.s:16 .text.tx_mixer:0000000000000000 $t
|
|
|
|
|
|
/tmp/ccBLcNpy.s:25 .text.tx_mixer:0000000000000000 tx_mixer
|
|
|
|
|
|
/tmp/ccBLcNpy.s:58 .text.tx_mixer:000000000000003c $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:62 .text.ssb_modulator:0000000000000000 $t
|
|
|
|
|
|
/tmp/ccBLcNpy.s:70 .text.ssb_modulator:0000000000000000 ssb_modulator
|
|
|
|
|
|
/tmp/ccBLcNpy.s:107 .text.ssb_modulator:0000000000000050 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:111 .text.dc_modulator:0000000000000000 $t
|
|
|
|
|
|
/tmp/ccBLcNpy.s:119 .text.dc_modulator:0000000000000000 dc_modulator
|
|
|
|
|
|
/tmp/ccBLcNpy.s:145 .text.dc_modulator:0000000000000030 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:148 .text.am_modulator:0000000000000000 $t
|
|
|
|
|
|
/tmp/ccBLcNpy.s:156 .text.am_modulator:0000000000000000 am_modulator
|
|
|
|
|
|
/tmp/ccBLcNpy.s:227 .text.am_modulator:00000000000000a8 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:231 .text.tx_audio_filter_init:0000000000000000 $t
|
|
|
|
|
|
/tmp/ccBLcNpy.s:239 .text.tx_audio_filter_init:0000000000000000 tx_audio_filter_init
|
|
|
|
|
|
/tmp/ccBLcNpy.s:265 .text.tx_audio_filter_init:0000000000000030 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:457 .bss.tx_audio_filter_I_state:0000000000000000 tx_audio_filter_I_state
|
|
|
|
|
|
/tmp/ccBLcNpy.s:470 .bss.tx_audio_filter_Q_state:0000000000000000 tx_audio_filter_Q_state
|
|
|
|
|
|
/tmp/ccBLcNpy.s:275 .text.u12_sine:0000000000000000 $t
|
|
|
|
|
|
/tmp/ccBLcNpy.s:283 .text.u12_sine:0000000000000000 u12_sine
|
|
|
|
|
|
/tmp/ccBLcNpy.s:325 .text.u12_sine:0000000000000070 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:334 .text.generate_tone:0000000000000000 $t
|
|
|
|
|
|
/tmp/ccBLcNpy.s:342 .text.generate_tone:0000000000000000 generate_tone
|
|
|
|
|
|
/tmp/ccBLcNpy.s:403 .text.generate_tone:00000000000000a0 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:484 .bss.tx_audio_filter_coeffs:0000000000000000 tx_audio_filter_coeffs
|
|
|
|
|
|
/tmp/ccBLcNpy.s:477 .bss.tx_audio_filter_Q_struct:0000000000000000 tx_audio_filter_Q_struct
|
|
|
|
|
|
/tmp/ccBLcNpy.s:464 .bss.tx_audio_filter_I_struct:0000000000000000 tx_audio_filter_I_struct
|
|
|
|
|
|
/tmp/ccBLcNpy.s:451 .bss.tx_adc_buffer_ready:0000000000000000 tx_adc_buffer_ready
|
|
|
|
|
|
/tmp/ccBLcNpy.s:489 .bss.tx_dac_buffer_toggle:0000000000000000 tx_dac_buffer_toggle
|
|
|
|
|
|
/tmp/ccBLcNpy.s:432 .bss.half_tx_dac_buffer_empty:0000000000000000 half_tx_dac_buffer_empty
|
|
|
|
|
|
/tmp/ccBLcNpy.s:505 .bss.tx_signal_last:0000000000000000 tx_signal_last
|
|
|
|
|
|
/tmp/ccBLcNpy.s:500 .bss.tx_signal:0000000000000000 tx_signal
|
|
|
|
|
|
/tmp/ccBLcNpy.s:495 .bss.tx_nco1_increment:0000000000000000 tx_nco1_increment
|
|
|
|
|
|
/tmp/ccBLcNpy.s:423 .bss.angle.0:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:427 .bss.angle.0:0000000000000000 angle.0
|
|
|
|
|
|
/tmp/ccBLcNpy.s:433 .bss.half_tx_dac_buffer_empty:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:435 .bss.phase_accu.1:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:439 .bss.phase_accu.1:0000000000000000 phase_accu.1
|
|
|
|
|
|
/tmp/ccBLcNpy.s:442 .bss.phase_accu.2:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:446 .bss.phase_accu.2:0000000000000000 phase_accu.2
|
|
|
|
|
|
/tmp/ccBLcNpy.s:452 .bss.tx_adc_buffer_ready:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:454 .bss.tx_audio_filter_I_state:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:460 .bss.tx_audio_filter_I_struct:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:467 .bss.tx_audio_filter_Q_state:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:473 .bss.tx_audio_filter_Q_struct:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:480 .bss.tx_audio_filter_coeffs:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:490 .bss.tx_dac_buffer_toggle:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:492 .bss.tx_nco1_increment:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:501 .bss.tx_signal:0000000000000000 $d
|
|
|
|
|
|
/tmp/ccBLcNpy.s:506 .bss.tx_signal_last:0000000000000000 $d
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
UNDEFINED SYMBOLS
|
|
|
|
|
|
sat_mult_q31
|
|
|
|
|
|
mic_gain
|
|
|
|
|
|
arm_fir_interpolate_init_q15
|
|
|
|
|
|
__aeabi_dadd
|
2022-01-17 20:05:23 +01:00
|
|
|
|
ARM GAS /tmp/ccBLcNpy.s page 11
|
2022-01-12 01:09:32 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
__aeabi_dcmpge
|
|
|
|
|
|
__aeabi_d2uiz
|
|
|
|
|
|
sin
|