ARM GAS /tmp/ccj8cv0U.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 "rx.c" 14 .text 15 .section .text.rx_mixer,"ax",%progbits 16 .align 1 17 .p2align 2,,3 18 .global rx_mixer 19 .arch armv7e-m 20 .syntax unified 21 .thumb 22 .thumb_func 23 .fpu fpv4-sp-d16 25 rx_mixer: 26 @ args = 4, pretend = 0, frame = 2096 27 @ frame_needed = 0, uses_anonymous_args = 0 28 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr} 29 0004 2DED028B vpush.64 {d8} 30 0008 08EE903A vmov s17, r3 @ int 31 000c BC4B ldr r3, .L19 32 000e 08EE102A vmov s16, r2 @ int 33 0012 ADF6340D subw sp, sp, #2100 34 0016 1A68 ldr r2, [r3] 35 0018 BA4B ldr r3, .L19+4 36 001a 5A60 str r2, [r3, #4] 37 001c 0491 str r1, [sp, #16] 38 001e 0029 cmp r1, #0 39 0020 00F06881 beq .L17 40 0024 831E subs r3, r0, #2 41 0026 0193 str r3, [sp, #4] 42 0028 0CAB add r3, sp, #48 43 002a 0024 movs r4, #0 44 002c 0B93 str r3, [sp, #44] 45 002e 0DF58663 add r3, sp, #1072 46 0032 DFF8F0A2 ldr r10, .L19+36 47 0036 0694 str r4, [sp, #24] 48 0038 0394 str r4, [sp, #12] 49 003a 0A93 str r3, [sp, #40] 50 003c 0094 str r4, [sp] 51 003e 1146 mov r1, r2 52 0040 01E0 b .L5 53 .L18: 54 0042 AF4B ldr r3, .L19 55 0044 1968 ldr r1, [r3] 56 .L5: 57 0046 DDF86038 ldr r3, [sp, #2144] 58 004a 019C ldr r4, [sp, #4] ARM GAS /tmp/ccj8cv0U.s page 2 59 004c AD48 ldr r0, .L19+4 60 004e AC4A ldr r2, .L19 61 0050 AD4E ldr r6, .L19+8 62 0052 1944 add r1, r1, r3 63 0054 8368 ldr r3, [r0, #8] 64 0056 1160 str r1, [r2] 65 0058 34F8022F ldrh r2, [r4, #2]! 66 005c 0194 str r4, [sp, #4] 67 005e 4160 str r1, [r0, #4] 68 0060 AA49 ldr r1, .L19+12 69 0062 A2F58052 sub r2, r2, #4096 70 0066 0D78 ldrb r5, [r1] @ zero_extendqisi2 71 0068 19B2 sxth r1, r3 72 006a 1B14 asrs r3, r3, #16 73 006c 02FB03F3 mul r3, r2, r3 74 0070 46F82530 str r3, [r6, r5, lsl #2] 75 0074 009B ldr r3, [sp] 76 0076 02FB01F1 mul r1, r2, r1 77 007a DA07 lsls r2, r3, #31 78 007c 4AF82510 str r1, [r10, r5, lsl #2] 79 0080 40F11481 bpl .L3 80 0084 A24A ldr r2, .L19+16 81 0086 05F03F01 and r1, r5, #63 82 008a 1468 ldr r4, [r2] 83 008c 56F82180 ldr r8, [r6, r1, lsl #2] 84 0090 5AF821E0 ldr lr, [r10, r1, lsl #2] 85 0094 0294 str r4, [sp, #8] 86 0096 A5F10E03 sub r3, r5, #14 87 009a A81E subs r0, r5, #2 88 009c 3446 mov r4, r6 89 009e 9C49 ldr r1, .L19+16 90 00a0 03F03F03 and r3, r3, #63 91 00a4 00F03F00 and r0, r0, #63 92 00a8 D1F80890 ldr r9, [r1, #8] 93 00ac 5AF82320 ldr r2, [r10, r3, lsl #2] 94 00b0 5AF82010 ldr r1, [r10, r0, lsl #2] 95 00b4 54F82000 ldr r0, [r4, r0, lsl #2] 96 00b8 029C ldr r4, [sp, #8] 97 00ba 56F82330 ldr r3, [r6, r3, lsl #2] 98 00be 84FB022C smull r2, ip, r4, r2 99 00c2 CEFB042C smlal r2, ip, lr, r4 100 00c6 A5F10C07 sub r7, r5, #12 101 00ca 07F03F07 and r7, r7, #63 102 00ce C1FB092C smlal r2, ip, r1, r9 103 00d2 84FB0331 smull r3, r1, r4, r3 104 00d6 C8FB0431 smlal r3, r1, r8, r4 105 00da C0FB0931 smlal r3, r1, r0, r9 106 00de 8A4C ldr r4, .L19+8 107 00e0 5AF82700 ldr r0, [r10, r7, lsl #2] 108 00e4 C9FB002C smlal r2, ip, r9, r0 109 00e8 54F82700 ldr r0, [r4, r7, lsl #2] 110 00ec 2E1F subs r6, r5, #4 111 00ee 06F03F06 and r6, r6, #63 112 00f2 C0FB0931 smlal r3, r1, r0, r9 113 00f6 8648 ldr r0, .L19+16 114 00f8 D0F81080 ldr r8, [r0, #16] 115 00fc 5AF82600 ldr r0, [r10, r6, lsl #2] ARM GAS /tmp/ccj8cv0U.s page 3 116 0100 A5F10A0E sub lr, r5, #10 117 0104 0EF03F0E and lr, lr, #63 118 0108 C0FB082C smlal r2, ip, r0, r8 119 010c 54F82600 ldr r0, [r4, r6, lsl #2] 120 0110 C0FB0831 smlal r3, r1, r0, r8 121 0114 5AF82E00 ldr r0, [r10, lr, lsl #2] 122 0118 C8FB002C smlal r2, ip, r8, r0 123 011c 54F82E00 ldr r0, [r4, lr, lsl #2] 124 0120 AF1F subs r7, r5, #6 125 0122 07F03F07 and r7, r7, #63 126 0126 C0FB0831 smlal r3, r1, r0, r8 127 012a 7948 ldr r0, .L19+16 128 012c D0F818B0 ldr fp, [r0, #24] 129 0130 5AF82700 ldr r0, [r10, r7, lsl #2] 130 0134 A5F10806 sub r6, r5, #8 131 0138 06F03F06 and r6, r6, #63 132 013c C0FB0B2C smlal r2, ip, r0, fp 133 0140 54F82700 ldr r0, [r4, r7, lsl #2] 134 0144 C0FB0B31 smlal r3, r1, r0, fp 135 0148 5AF82600 ldr r0, [r10, r6, lsl #2] 136 014c CBFB002C smlal r2, ip, fp, r0 137 0150 54F82600 ldr r0, [r4, r6, lsl #2] 138 0154 073D subs r5, r5, #7 139 0156 05F03F05 and r5, r5, #63 140 015a C0FB0B31 smlal r3, r1, r0, fp 141 015e 6C48 ldr r0, .L19+16 142 0160 C669 ldr r6, [r0, #28] 143 0162 5AF82500 ldr r0, [r10, r5, lsl #2] 144 0166 0596 str r6, [sp, #20] 145 0168 C0FB062C smlal r2, ip, r0, r6 146 016c 54F82500 ldr r0, [r4, r5, lsl #2] 147 0170 C0FB0631 smlal r3, r1, r0, r6 148 0174 DB0F lsrs r3, r3, #31 149 0176 43EA4103 orr r3, r3, r1, lsl #1 150 017a 6649 ldr r1, .L19+20 151 017c 664E ldr r6, .L19+24 152 017e 0978 ldrb r1, [r1] @ zero_extendqisi2 153 0180 D20F lsrs r2, r2, #31 154 0182 46F82130 str r3, [r6, r1, lsl #2] 155 0186 039B ldr r3, [sp, #12] 156 0188 42EA4C02 orr r2, r2, ip, lsl #1 157 018c DFF898C1 ldr ip, .L19+40 158 0190 DB07 lsls r3, r3, #31 159 0192 4CF82120 str r2, [ip, r1, lsl #2] 160 0196 40F18180 bpl .L4 161 019a 8D1E subs r5, r1, #2 162 019c 01F01F00 and r0, r1, #31 163 01a0 05F01F05 and r5, r5, #31 164 01a4 A1F10E03 sub r3, r1, #14 165 01a8 03F01F03 and r3, r3, #31 166 01ac 56F82540 ldr r4, [r6, r5, lsl #2] 167 01b0 5CF82070 ldr r7, [ip, r0, lsl #2] 168 01b4 56F82000 ldr r0, [r6, r0, lsl #2] 169 01b8 5CF82320 ldr r2, [ip, r3, lsl #2] 170 01bc 0890 str r0, [sp, #32] 171 01be 0994 str r4, [sp, #36] 172 01c0 081F subs r0, r1, #4 ARM GAS /tmp/ccj8cv0U.s page 4 173 01c2 029C ldr r4, [sp, #8] 174 01c4 56F82330 ldr r3, [r6, r3, lsl #2] 175 01c8 00F01F00 and r0, r0, #31 176 01cc 0790 str r0, [sp, #28] 177 01ce 5CF82500 ldr r0, [ip, r5, lsl #2] 178 01d2 84FB0225 smull r2, r5, r4, r2 179 01d6 C4FB0725 smlal r2, r5, r4, r7 180 01da C9FB0025 smlal r2, r5, r9, r0 181 01de A1F10C0E sub lr, r1, #12 182 01e2 A1F10A00 sub r0, r1, #10 183 01e6 089F ldr r7, [sp, #32] 184 01e8 0EF01F0E and lr, lr, #31 185 01ec 00F01F00 and r0, r0, #31 186 01f0 0290 str r0, [sp, #8] 187 01f2 84FB0330 smull r3, r0, r4, r3 188 01f6 C4FB0730 smlal r3, r0, r4, r7 189 01fa 5CF82E70 ldr r7, [ip, lr, lsl #2] 190 01fe 099C ldr r4, [sp, #36] 191 0200 C9FB0725 smlal r2, r5, r9, r7 192 0204 C9FB0430 smlal r3, r0, r9, r4 193 0208 56F82E70 ldr r7, [r6, lr, lsl #2] 194 020c 079C ldr r4, [sp, #28] 195 020e C9FB0730 smlal r3, r0, r9, r7 196 0212 5CF82470 ldr r7, [ip, r4, lsl #2] 197 0216 C8FB0725 smlal r2, r5, r8, r7 198 021a 56F82470 ldr r7, [r6, r4, lsl #2] 199 021e 029C ldr r4, [sp, #8] 200 0220 C8FB0730 smlal r3, r0, r8, r7 201 0224 5CF82470 ldr r7, [ip, r4, lsl #2] 202 0228 A1F1060E sub lr, r1, #6 203 022c 0EF01F0E and lr, lr, #31 204 0230 C8FB0725 smlal r2, r5, r8, r7 205 0234 56F82470 ldr r7, [r6, r4, lsl #2] 206 0238 0B9C ldr r4, [sp, #44] 207 023a C8FB0730 smlal r3, r0, r8, r7 208 023e 5CF82E70 ldr r7, [ip, lr, lsl #2] 209 0242 A1F10809 sub r9, r1, #8 210 0246 09F01F09 and r9, r9, #31 211 024a CBFB0725 smlal r2, r5, fp, r7 212 024e 56F82E70 ldr r7, [r6, lr, lsl #2] 213 0252 CBFB0730 smlal r3, r0, fp, r7 214 0256 5CF82970 ldr r7, [ip, r9, lsl #2] 215 025a 0739 subs r1, r1, #7 216 025c 01F01F01 and r1, r1, #31 217 0260 CBFB0725 smlal r2, r5, fp, r7 218 0264 56F82970 ldr r7, [r6, r9, lsl #2] 219 0268 CBFB0730 smlal r3, r0, fp, r7 220 026c 5CF82170 ldr r7, [ip, r1, lsl #2] 221 0270 56F82110 ldr r1, [r6, r1, lsl #2] 222 0274 059E ldr r6, [sp, #20] 223 0276 C6FB0725 smlal r2, r5, r6, r7 224 027a C6FB0130 smlal r3, r0, r6, r1 225 027e D20F lsrs r2, r2, #31 226 0280 0699 ldr r1, [sp, #24] 227 0282 42EA4502 orr r2, r2, r5, lsl #1 228 0286 44F82120 str r2, [r4, r1, lsl #2] 229 028a DB0F lsrs r3, r3, #31 ARM GAS /tmp/ccj8cv0U.s page 5 230 028c 0A9A ldr r2, [sp, #40] 231 028e 43EA4003 orr r3, r3, r0, lsl #1 232 0292 42F82130 str r3, [r2, r1, lsl #2] 233 0296 4B1C adds r3, r1, #1 234 0298 9BB2 uxth r3, r3 235 029a 0693 str r3, [sp, #24] 236 .L4: 237 029c 1D48 ldr r0, .L19+20 238 029e 1F21 movs r1, #31 239 02a0 FFF7FEFF bl ringbuf_increment 240 02a4 039B ldr r3, [sp, #12] 241 02a6 0133 adds r3, r3, #1 242 02a8 9BB2 uxth r3, r3 243 02aa 0393 str r3, [sp, #12] 244 .L3: 245 02ac 1748 ldr r0, .L19+12 246 02ae 3F21 movs r1, #63 247 02b0 FFF7FEFF bl ringbuf_increment 248 02b4 009C ldr r4, [sp] 249 02b6 049B ldr r3, [sp, #16] 250 02b8 0134 adds r4, r4, #1 251 02ba A2B2 uxth r2, r4 252 02bc 9342 cmp r3, r2 253 02be 0092 str r2, [sp] 254 02c0 7FF4BFAE bne .L18 255 .L2: 256 02c4 18EE102A vmov r2, s16 @ int 257 02c8 0B99 ldr r1, [sp, #44] 258 02ca 1448 ldr r0, .L19+28 259 02cc 4FF48073 mov r3, #256 260 02d0 FFF7FEFF bl arm_fir_decimate_q31 261 02d4 1248 ldr r0, .L19+32 262 02d6 0A99 ldr r1, [sp, #40] 263 02d8 18EE902A vmov r2, s17 @ int 264 02dc 4FF48073 mov r3, #256 265 02e0 FFF7FEFF bl arm_fir_decimate_q31 266 02e4 074B ldr r3, .L19+4 267 02e6 9B68 ldr r3, [r3, #8] 268 02e8 0DF6340D addw sp, sp, #2100 269 @ sp needed 270 02ec BDEC028B vldm sp!, {d8} 271 02f0 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc} 272 .L17: 273 02f4 0CAB add r3, sp, #48 274 02f6 0B93 str r3, [sp, #44] 275 02f8 0DF58663 add r3, sp, #1072 276 02fc 0A93 str r3, [sp, #40] 277 02fe E1E7 b .L2 278 .L20: 279 .align 2 280 .L19: 281 0300 00000000 .word .LANCHOR0 282 0304 000C0240 .word 1073875968 283 0308 00000000 .word .LANCHOR3 284 030c 00000000 .word .LANCHOR1 285 0310 00000000 .word .LANCHOR5 286 0314 00000000 .word .LANCHOR4 ARM GAS /tmp/ccj8cv0U.s page 6 287 0318 00000000 .word .LANCHOR7 288 031c 00000000 .word .LANCHOR8 289 0320 00000000 .word .LANCHOR9 290 0324 00000000 .word .LANCHOR2 291 0328 00000000 .word .LANCHOR6 293 .section .text.ricevi,"ax",%progbits 294 .align 1 295 .p2align 2,,3 296 .global ricevi 297 .syntax unified 298 .thumb 299 .thumb_func 300 .fpu fpv4-sp-d16 302 ricevi: 303 @ args = 0, pretend = 0, frame = 8 304 @ frame_needed = 0, uses_anonymous_args = 0 305 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr} 306 0004 4B4C ldr r4, .L47 307 0006 2378 ldrb r3, [r4] @ zero_extendqisi2 308 0008 85B0 sub sp, sp, #20 309 000a 002B cmp r3, #0 310 000c 43D1 bne .L44 311 .L22: 312 000e 4A4D ldr r5, .L47+4 313 0010 2B78 ldrb r3, [r5] @ zero_extendqisi2 314 0012 1BB3 cbz r3, .L21 315 0014 DFF86081 ldr r8, .L47+68 316 0018 98F81530 ldrb r3, [r8, #21] @ zero_extendqisi2 317 001c 0BBB cbnz r3, .L24 318 001e 474B ldr r3, .L47+8 319 0020 474A ldr r2, .L47+12 320 0022 1C78 ldrb r4, [r3] @ zero_extendqisi2 321 0024 4749 ldr r1, .L47+16 322 0026 02F58070 add r0, r2, #256 323 .L26: 324 002a 52F8043F ldr r3, [r2, #4]! 325 002e 04FB03F3 mul r3, r4, r3 326 0032 002B cmp r3, #0 327 0034 B8BF it lt 328 0036 03F6FF73 addwlt r3, r3, #4095 329 003a 0431 adds r1, r1, #4 330 003c 1B13 asrs r3, r3, #12 331 003e 9042 cmp r0, r2 332 0040 0B60 str r3, [r1] 333 0042 F2D1 bne .L26 334 .L27: 335 0044 404B ldr r3, .L47+20 336 0046 414A ldr r2, .L47+24 337 0048 1C78 ldrb r4, [r3] @ zero_extendqisi2 338 004a 4149 ldr r1, .L47+28 339 004c 4148 ldr r0, .L47+32 340 004e 4023 movs r3, #64 341 0050 02EB0422 add r2, r2, r4, lsl #8 342 0054 FFF7FEFF bl arm_fir_q31 343 0058 0023 movs r3, #0 344 005a 2B70 strb r3, [r5] 345 .L21: ARM GAS /tmp/ccj8cv0U.s page 7 346 005c 05B0 add sp, sp, #20 347 @ sp needed 348 005e BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc} 349 .L24: 350 0062 5A1E subs r2, r3, #1 351 0064 032A cmp r2, #3 352 0066 23D9 bls .L45 353 0068 052B cmp r3, #5 354 006a EBD1 bne .L27 355 006c 3449 ldr r1, .L47+12 356 006e 3A4C ldr r4, .L47+36 357 0070 3448 ldr r0, .L47+16 358 0072 01F58077 add r7, r1, #256 359 .L34: 360 0076 54F8043F ldr r3, [r4, #4]! 361 007a 83FB0323 smull r2, r3, r3, r3 362 007e 51F8042F ldr r2, [r1, #4]! 363 0082 5B10 asrs r3, r3, #1 364 0084 82FB0226 smull r2, r6, r2, r2 365 0088 03EB6603 add r3, r3, r6, asr #1 366 008c 8F42 cmp r7, r1 367 008e 40F8043F str r3, [r0, #4]! 368 0092 F0D1 bne .L34 369 0094 D6E7 b .L27 370 .L44: 371 0096 314A ldr r2, .L47+40 372 0098 314B ldr r3, .L47+44 373 009a 1168 ldr r1, [r2] 374 009c 0091 str r1, [sp] 375 009e 314A ldr r2, .L47+48 376 00a0 3148 ldr r0, .L47+52 377 00a2 4FF48061 mov r1, #1024 378 00a6 FFF7FEFF bl rx_mixer 379 00aa 0023 movs r3, #0 380 00ac 2370 strb r3, [r4] 381 00ae AEE7 b .L22 382 .L45: 383 00b0 2E4A ldr r2, .L47+56 384 00b2 DFF8C0B0 ldr fp, .L47+64 385 00b6 1168 ldr r1, [r2] 386 00b8 214E ldr r6, .L47+12 387 00ba DFF89CA0 ldr r10, .L47+36 388 00be 244F ldr r7, .L47+28 389 00c0 DFF87890 ldr r9, .L47+8 390 00c4 CBF80410 str r1, [fp, #4] 391 00c8 0B46 mov r3, r1 392 00ca 00E0 b .L32 393 .L46: 394 00cc 1368 ldr r3, [r2] 395 .L32: 396 00ce DBF80840 ldr r4, [fp, #8] 397 00d2 03F1A353 add r3, r3, #341835776 398 00d6 03F5D713 add r3, r3, #1761280 399 00da 03F24713 addw r3, r3, #327 400 00de 1360 str r3, [r2] 401 00e0 CBF80430 str r3, [fp, #4] 402 00e4 99F80000 ldrb r0, [r9] @ zero_extendqisi2 ARM GAS /tmp/ccj8cv0U.s page 8 403 00e8 56F8041F ldr r1, [r6, #4]! 404 00ec 10FB04F0 smulbb r0, r0, r4 405 00f0 4001 lsls r0, r0, #5 406 00f2 FFF7FEFF bl sat_mult_q31 407 00f6 0390 str r0, [sp, #12] 408 00f8 99F80000 ldrb r0, [r9] @ zero_extendqisi2 409 00fc 5AF8041F ldr r1, [r10, #4]! 410 0100 2414 asrs r4, r4, #16 411 0102 04FB00F0 mul r0, r4, r0 412 0106 4001 lsls r0, r0, #5 413 0108 FFF7FEFF bl sat_mult_q31 414 010c 98F81510 ldrb r1, [r8, #21] @ zero_extendqisi2 415 0110 039B ldr r3, [sp, #12] 416 0112 164A ldr r2, .L47+56 417 0114 0229 cmp r1, #2 418 0116 A3EB0004 sub r4, r3, r0 419 011a 04BF itt eq 420 011c 1B18 addeq r3, r3, r0 421 011e 3B60 streq r3, [r7] 422 0120 134B ldr r3, .L47+60 423 0122 18BF it ne 424 0124 3C60 strne r4, [r7] 425 0126 B342 cmp r3, r6 426 0128 07F10407 add r7, r7, #4 427 012c CED1 bne .L46 428 012e 114B ldr r3, .L47+64 429 0130 9B68 ldr r3, [r3, #8] 430 0132 87E7 b .L27 431 .L48: 432 .align 2 433 .L47: 434 0134 00000000 .word .LANCHOR10 435 0138 00000000 .word .LANCHOR13 436 013c 00000000 .word stato 437 0140 FCFFFFFF .word if_I-4 438 0144 FCFFFFFF .word .LANCHOR14-4 439 0148 00000000 .word .LANCHOR16 440 014c 00000000 .word .LANCHOR17 441 0150 00000000 .word .LANCHOR14 442 0154 00000000 .word .LANCHOR18 443 0158 FCFFFFFF .word if_Q-4 444 015c 00000000 .word .LANCHOR12 445 0160 00000000 .word if_Q 446 0164 00000000 .word if_I 447 0168 00000000 .word .LANCHOR11 448 016c 00000000 .word .LANCHOR15 449 0170 FC000000 .word if_I+252 450 0174 000C0240 .word 1073875968 451 0178 00000000 .word canale 453 .section .text.am_demodulator,"ax",%progbits 454 .align 1 455 .p2align 2,,3 456 .global am_demodulator 457 .syntax unified 458 .thumb 459 .thumb_func 460 .fpu fpv4-sp-d16 ARM GAS /tmp/ccj8cv0U.s page 9 462 am_demodulator: 463 @ args = 0, pretend = 0, frame = 0 464 @ frame_needed = 0, uses_anonymous_args = 0 465 0000 CAB1 cbz r2, .L57 466 0002 013A subs r2, r2, #1 467 0004 92B2 uxth r2, r2 468 0006 10B5 push {r4, lr} 469 0008 A0F1040C sub ip, r0, #4 470 000c 0C1F subs r4, r1, #4 471 000e A3F1040E sub lr, r3, #4 472 0012 00EB8200 add r0, r0, r2, lsl #2 473 .L51: 474 0016 54F8043F ldr r3, [r4, #4]! 475 001a 5CF8042F ldr r2, [ip, #4]! 476 001e 83FB0313 smull r1, r3, r3, r3 477 0022 5B10 asrs r3, r3, #1 478 0024 82FB0221 smull r2, r1, r2, r2 479 0028 03EB6103 add r3, r3, r1, asr #1 480 002c 6045 cmp r0, ip 481 002e 4EF8043F str r3, [lr, #4]! 482 0032 F0D1 bne .L51 483 0034 10BD pop {r4, pc} 484 .L57: 485 0036 7047 bx lr 487 .section .text.ssb_demodulator,"ax",%progbits 488 .align 1 489 .p2align 2,,3 490 .global ssb_demodulator 491 .syntax unified 492 .thumb 493 .thumb_func 494 .fpu fpv4-sp-d16 496 ssb_demodulator: 497 @ args = 4, pretend = 0, frame = 0 498 @ frame_needed = 0, uses_anonymous_args = 0 499 0000 2DE9F84F push {r3, r4, r5, r6, r7, r8, r9, r10, fp, lr} 500 0004 DFF88CB0 ldr fp, .L70+8 501 0008 DFF884A0 ldr r10, .L70+4 502 000c DBF80040 ldr r4, [fp] 503 0010 CAF80440 str r4, [r10, #4] 504 0014 AAB3 cbz r2, .L61 505 0016 02F1FF38 add r8, r2, #-1 506 001a 1FFA88F8 uxth r8, r8 507 001e DFF87890 ldr r9, .L70+12 508 0022 1E46 mov r6, r3 509 0024 0F1F subs r7, r1, #4 510 0026 00EB8808 add r8, r0, r8, lsl #2 511 002a 051F subs r5, r0, #4 512 002c 01E0 b .L64 513 .L69: 514 002e DBF80040 ldr r4, [fp] 515 .L64: 516 0032 0A9B ldr r3, [sp, #40] 517 0034 1A19 adds r2, r3, r4 518 0036 DAF80840 ldr r4, [r10, #8] 519 003a CBF80020 str r2, [fp] 520 003e CAF80420 str r2, [r10, #4] ARM GAS /tmp/ccj8cv0U.s page 10 521 0042 99F80000 ldrb r0, [r9] @ zero_extendqisi2 522 0046 55F8041F ldr r1, [r5, #4]! 523 004a 10FB04F0 smulbb r0, r0, r4 524 004e 4001 lsls r0, r0, #5 525 0050 FFF7FEFF bl sat_mult_q31 526 0054 99F80010 ldrb r1, [r9] @ zero_extendqisi2 527 0058 0246 mov r2, r0 528 005a 2014 asrs r0, r4, #16 529 005c 01FB00F0 mul r0, r1, r0 530 0060 4001 lsls r0, r0, #5 531 0062 57F8041F ldr r1, [r7, #4]! 532 0066 1446 mov r4, r2 533 0068 FFF7FEFF bl sat_mult_q31 534 006c 074B ldr r3, .L70 535 006e 5A7D ldrb r2, [r3, #21] @ zero_extendqisi2 536 0070 022A cmp r2, #2 537 0072 0CBF ite eq 538 0074 0019 addeq r0, r0, r4 539 0076 201A subne r0, r4, r0 540 0078 4545 cmp r5, r8 541 007a 3060 str r0, [r6] 542 007c 06F10406 add r6, r6, #4 543 0080 D5D1 bne .L69 544 .L61: 545 0082 034B ldr r3, .L70+4 546 0084 9B68 ldr r3, [r3, #8] 547 0086 BDE8F88F pop {r3, r4, r5, r6, r7, r8, r9, r10, fp, pc} 548 .L71: 549 008a 00BF .align 2 550 .L70: 551 008c 00000000 .word canale 552 0090 000C0240 .word 1073875968 553 0094 00000000 .word .LANCHOR15 554 0098 00000000 .word stato 556 .section .text.dc_demodulator,"ax",%progbits 557 .align 1 558 .p2align 2,,3 559 .global dc_demodulator 560 .syntax unified 561 .thumb 562 .thumb_func 563 .fpu fpv4-sp-d16 565 dc_demodulator: 566 @ args = 0, pretend = 0, frame = 0 567 @ frame_needed = 0, uses_anonymous_args = 0 568 @ link register save eliminated. 569 0000 094B ldr r3, .L76 570 0002 93F800C0 ldrb ip, [r3] @ zero_extendqisi2 571 0006 011F subs r1, r0, #4 572 0008 043A subs r2, r2, #4 573 000a FC30 adds r0, r0, #252 574 .L74: 575 000c 51F8043F ldr r3, [r1, #4]! 576 0010 03FB0CF3 mul r3, r3, ip 577 0014 002B cmp r3, #0 578 0016 B8BF it lt 579 0018 03F6FF73 addwlt r3, r3, #4095 ARM GAS /tmp/ccj8cv0U.s page 11 580 001c 0432 adds r2, r2, #4 581 001e 1B13 asrs r3, r3, #12 582 0020 8142 cmp r1, r0 583 0022 1360 str r3, [r2] 584 0024 F2D1 bne .L74 585 0026 7047 bx lr 586 .L77: 587 .align 2 588 .L76: 589 0028 00000000 .word stato 591 .section .text.hb_fir15,"ax",%progbits 592 .align 1 593 .p2align 2,,3 594 .global hb_fir15 595 .syntax unified 596 .thumb 597 .thumb_func 598 .fpu fpv4-sp-d16 600 hb_fir15: 601 @ args = 0, pretend = 0, frame = 0 602 @ frame_needed = 0, uses_anonymous_args = 0 603 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr} 604 0004 1446 mov r4, r2 605 0006 A1F10E02 sub r2, r1, #14 606 000a 2240 ands r2, r2, r4 607 000c 0E1F subs r6, r1, #4 608 000e 50F822C0 ldr ip, [r0, r2, lsl #2] 609 0012 D3F80080 ldr r8, [r3] 610 0016 01EA0402 and r2, r1, r4 611 001a 0546 mov r5, r0 612 001c 50F82290 ldr r9, [r0, r2, lsl #2] 613 0020 8A1E subs r2, r1, #2 614 0022 2240 ands r2, r2, r4 615 0024 2640 ands r6, r6, r4 616 0026 50F82220 ldr r2, [r0, r2, lsl #2] 617 002a 55F82670 ldr r7, [r5, r6, lsl #2] 618 002e 9E68 ldr r6, [r3, #8] 619 0030 A1F10C00 sub r0, r1, #12 620 0034 2040 ands r0, r0, r4 621 0036 88FB0CCE smull ip, lr, r8, ip 622 003a C9FB08CE smlal ip, lr, r9, r8 623 003e C2FB06CE smlal ip, lr, r2, r6 624 0042 55F82000 ldr r0, [r5, r0, lsl #2] 625 0046 D3F81080 ldr r8, [r3, #16] 626 004a 7246 mov r2, lr 627 004c C6FB00C2 smlal ip, r2, r6, r0 628 0050 A1F10A00 sub r0, r1, #10 629 0054 2040 ands r0, r0, r4 630 0056 55F820E0 ldr lr, [r5, r0, lsl #2] 631 005a 881F subs r0, r1, #6 632 005c 2040 ands r0, r0, r4 633 005e 55F82060 ldr r6, [r5, r0, lsl #2] 634 0062 6046 mov r0, ip 635 0064 C7FB0802 smlal r0, r2, r7, r8 636 0068 C8FB0E02 smlal r0, r2, r8, lr 637 006c A1F10807 sub r7, r1, #8 638 0070 0739 subs r1, r1, #7 ARM GAS /tmp/ccj8cv0U.s page 12 639 0072 9446 mov ip, r2 640 0074 2740 ands r7, r7, r4 641 0076 01EA0402 and r2, r1, r4 642 007a 9969 ldr r1, [r3, #24] 643 007c 55F82240 ldr r4, [r5, r2, lsl #2] 644 0080 55F82770 ldr r7, [r5, r7, lsl #2] 645 0084 6246 mov r2, ip 646 0086 C6FB0102 smlal r0, r2, r6, r1 647 008a C1FB0702 smlal r0, r2, r1, r7 648 008e D969 ldr r1, [r3, #28] 649 0090 C4FB0102 smlal r0, r2, r4, r1 650 0094 C00F lsrs r0, r0, #31 651 0096 40EA4200 orr r0, r0, r2, lsl #1 652 009a BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc} 654 009e 00BF .section .text.st2_filter_init,"ax",%progbits 655 .align 1 656 .p2align 2,,3 657 .global st2_filter_init 658 .syntax unified 659 .thumb 660 .thumb_func 661 .fpu fpv4-sp-d16 663 st2_filter_init: 664 @ args = 0, pretend = 0, frame = 0 665 @ frame_needed = 0, uses_anonymous_args = 0 666 0000 10B5 push {r4, lr} 667 0002 1C4B ldr r3, .L89 668 0004 5B7D ldrb r3, [r3, #21] @ zero_extendqisi2 669 0006 5A1E subs r2, r3, #1 670 0008 032A cmp r2, #3 671 000a 82B0 sub sp, sp, #8 672 000c 1BD9 bls .L88 673 000e 23B1 cbz r3, .L83 674 0010 053B subs r3, r3, #5 675 0012 012B cmp r3, #1 676 0014 01D9 bls .L83 677 0016 02B0 add sp, sp, #8 678 @ sp needed 679 0018 10BD pop {r4, pc} 680 .L83: 681 001a 1748 ldr r0, .L89+4 682 001c 174B ldr r3, .L89+8 683 001e 4FF48074 mov r4, #256 684 0022 CDE90004 strd r0, r4, [sp] 685 0026 0422 movs r2, #4 686 0028 8021 movs r1, #128 687 002a 1548 ldr r0, .L89+12 688 002c FFF7FEFF bl arm_fir_decimate_init_q31 689 0030 144A ldr r2, .L89+16 690 0032 124B ldr r3, .L89+8 691 0034 1448 ldr r0, .L89+20 692 0036 CDE90024 strd r2, r4, [sp] 693 003a 8021 movs r1, #128 694 003c 0422 movs r2, #4 695 003e FFF7FEFF bl arm_fir_decimate_init_q31 696 0042 02B0 add sp, sp, #8 697 @ sp needed ARM GAS /tmp/ccj8cv0U.s page 13 698 0044 10BD pop {r4, pc} 699 .L88: 700 0046 0C4A ldr r2, .L89+4 701 0048 104B ldr r3, .L89+24 702 004a 0D48 ldr r0, .L89+12 703 004c 4FF48074 mov r4, #256 704 0050 CDE90024 strd r2, r4, [sp] 705 0054 8021 movs r1, #128 706 0056 0422 movs r2, #4 707 0058 FFF7FEFF bl arm_fir_decimate_init_q31 708 005c 094A ldr r2, .L89+16 709 005e 0B4B ldr r3, .L89+24 710 0060 0948 ldr r0, .L89+20 711 0062 CDE90024 strd r2, r4, [sp] 712 0066 8021 movs r1, #128 713 0068 0422 movs r2, #4 714 006a FFF7FEFF bl arm_fir_decimate_init_q31 715 006e 02B0 add sp, sp, #8 716 @ sp needed 717 0070 10BD pop {r4, pc} 718 .L90: 719 0072 00BF .align 2 720 .L89: 721 0074 00000000 .word canale 722 0078 00000000 .word .LANCHOR20 723 007c 00000000 .word .LANCHOR22 724 0080 00000000 .word .LANCHOR8 725 0084 00000000 .word .LANCHOR21 726 0088 00000000 .word .LANCHOR9 727 008c 00000000 .word .LANCHOR19 729 .section .text.rx_inizializza_filtro_audio,"ax",%progbits 730 .align 1 731 .p2align 2,,3 732 .global rx_inizializza_filtro_audio 733 .syntax unified 734 .thumb 735 .thumb_func 736 .fpu fpv4-sp-d16 738 rx_inizializza_filtro_audio: 739 @ args = 0, pretend = 0, frame = 0 740 @ frame_needed = 0, uses_anonymous_args = 0 741 0000 00B5 push {lr} 742 0002 83B0 sub sp, sp, #12 743 0004 4021 movs r1, #64 744 0006 0091 str r1, [sp] 745 0008 044B ldr r3, .L93 746 000a 054A ldr r2, .L93+4 747 000c 0548 ldr r0, .L93+8 748 000e 8021 movs r1, #128 749 0010 FFF7FEFF bl arm_fir_init_q31 750 0014 03B0 add sp, sp, #12 751 @ sp needed 752 0016 5DF804FB ldr pc, [sp], #4 753 .L94: 754 001a 00BF .align 2 755 .L93: 756 001c 00000000 .word .LANCHOR23 ARM GAS /tmp/ccj8cv0U.s page 14 757 0020 00000000 .word .LANCHOR24 758 0024 00000000 .word .LANCHOR18 760 .global __aeabi_ui2d 761 .global __aeabi_ddiv 762 .global __aeabi_i2d 763 .global __aeabi_dmul 764 .global __aeabi_d2iz 765 .section .text.audio_filter_generate_coeffs,"ax",%progbits 766 .align 1 767 .p2align 2,,3 768 .global audio_filter_generate_coeffs 769 .syntax unified 770 .thumb 771 .thumb_func 772 .fpu fpv4-sp-d16 774 audio_filter_generate_coeffs: 775 @ args = 0, pretend = 0, frame = 1032 776 @ frame_needed = 0, uses_anonymous_args = 0 777 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} 778 0004 2DED028B vpush.64 {d8} 779 0008 0546 mov r5, r0 780 000a ADF5816D sub sp, sp, #1032 781 000e 5000 lsls r0, r2, #1 782 0010 1E46 mov r6, r3 783 0012 0F46 mov r7, r1 784 0014 FFF7FEFF bl __aeabi_ui2d 785 0018 1FA3 adr r3, .L99 786 001a D3E90023 ldrd r2, [r3] 787 001e FFF7FEFF bl __aeabi_ddiv 788 0022 41EC180B vmov d8, r0, r1 789 0026 7800 lsls r0, r7, #1 790 0028 FFF7FEFF bl __aeabi_ui2d 791 002c 1AA3 adr r3, .L99 792 002e D3E90023 ldrd r2, [r3] 793 0032 FFF7FEFF bl __aeabi_ddiv 794 0036 B0EE481A vmov.f32 s2, s16 795 003a F0EE681A vmov.f32 s3, s17 796 003e 41EC100B vmov d0, r0, r1 797 0042 0222 movs r2, #2 798 0044 8021 movs r1, #128 799 0046 6846 mov r0, sp 800 0048 FFF7FEFF bl RectWinFIR 801 004c B008 lsrs r0, r6, #2 802 004e FFF7FEFF bl __aeabi_i2d 803 0052 0222 movs r2, #2 804 0054 41EC100B vmov d0, r0, r1 805 0058 6846 mov r0, sp 806 005a 8021 movs r1, #128 807 005c FFF7FEFF bl FIRFilterWindow 808 0060 0FA7 adr r7, .L99+8 809 0062 D7E90067 ldrd r6, [r7] 810 0066 043D subs r5, r5, #4 811 0068 6C46 mov r4, sp 812 006a 0DF58068 add r8, sp, #1024 813 .L96: 814 006e F4E80201 ldrd r0, [r4], #8 815 0072 3246 mov r2, r6 ARM GAS /tmp/ccj8cv0U.s page 15 816 0074 3B46 mov r3, r7 817 0076 FFF7FEFF bl __aeabi_dmul 818 007a FFF7FEFF bl __aeabi_d2iz 819 007e 4445 cmp r4, r8 820 0080 45F8040F str r0, [r5, #4]! 821 0084 F3D1 bne .L96 822 0086 0DF5816D add sp, sp, #1032 823 @ sp needed 824 008a BDEC028B vldm sp!, {d8} 825 008e BDE8F081 pop {r4, r5, r6, r7, r8, pc} 826 .L100: 827 0092 00BFAFF3 .align 3 827 0080 828 .L99: 829 0098 00000000 .word 0 830 009c C05CD540 .word 1087724736 831 00a0 0000C0FF .word -4194304 832 00a4 FFFFDF41 .word 1105199103 834 .section .text.set_rx_audio_filter,"ax",%progbits 835 .align 1 836 .p2align 2,,3 837 .global set_rx_audio_filter 838 .syntax unified 839 .thumb 840 .thumb_func 841 .fpu fpv4-sp-d16 843 set_rx_audio_filter: 844 @ args = 0, pretend = 0, frame = 0 845 @ frame_needed = 0, uses_anonymous_args = 0 846 @ link register save eliminated. 847 0000 044B ldr r3, .L102 848 0002 054A ldr r2, .L102+4 849 0004 0549 ldr r1, .L102+8 850 0006 1B78 ldrb r3, [r3] @ zero_extendqisi2 851 0008 1268 ldr r2, [r2] 852 000a 0968 ldr r1, [r1] 853 000c 0448 ldr r0, .L102+12 854 000e FFF7FEBF b audio_filter_generate_coeffs 855 .L103: 856 0012 00BF .align 2 857 .L102: 858 0014 00000000 .word audio_filter_beta 859 0018 00000000 .word audio_filter_bw 860 001c 00000000 .word audio_filter_freq 861 0020 00000000 .word .LANCHOR24 863 .global __aeabi_ldivmod 864 .section .text.set_rx_nco1_freq,"ax",%progbits 865 .align 1 866 .p2align 2,,3 867 .global set_rx_nco1_freq 868 .syntax unified 869 .thumb 870 .thumb_func 871 .fpu fpv4-sp-d16 873 set_rx_nco1_freq: 874 @ args = 0, pretend = 0, frame = 0 875 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS /tmp/ccj8cv0U.s page 16 876 0000 10B5 push {r4, lr} 877 0002 0C4B ldr r3, .L112 878 0004 5B7D ldrb r3, [r3, #21] @ zero_extendqisi2 879 0006 022B cmp r3, #2 880 0008 0146 mov r1, r0 881 000a 08D0 beq .L105 882 000c 042B cmp r3, #4 883 000e 06D0 beq .L105 884 0010 03F0FD03 and r3, r3, #253 885 0014 012B cmp r3, #1 886 0016 08BF it eq 887 0018 A0F21E71 subweq r1, r0, #1822 888 001c 01E0 b .L107 889 .L105: 890 001e 01F21E71 addw r1, r1, #1822 891 .L107: 892 0022 054A ldr r2, .L112+4 893 0024 054C ldr r4, .L112+8 894 0026 0023 movs r3, #0 895 0028 0020 movs r0, #0 896 002a FFF7FEFF bl __aeabi_ldivmod 897 002e 2060 str r0, [r4] 898 0030 10BD pop {r4, pc} 899 .L113: 900 0032 00BF .align 2 901 .L112: 902 0034 00000000 .word canale 903 0038 30570500 .word 350000 904 003c 00000000 .word .LANCHOR12 906 .global st2_wide_taps 907 .global st2_filter_taps 908 .global ms_hbf_filter_taps 909 .global audio_filter_coeffs 910 .global audio_filter_state 911 .global audio_filter_struct 912 .global st2_filter_Q_state 913 .global st2_filter_I_state 914 .global st2_filter_Q_struct 915 .global st2_filter_I_struct 916 .global rx_signal_last 917 .global rx_signal 918 .global rx_dac_buffer 919 .global prefilter_rx_dac_buffer 920 .global rx_dac_buffer_mezzo_vuoto 921 .global rx_dac_buffer_toggle 922 .global rx_adc_buffer 923 .global rx_adc_buffer_ready 924 .global rx_nco1_increment 925 .section .bss.I_mixed_2m_rb.2,"aw",%nobits 926 .align 2 927 .set .LANCHOR6,. + 0 930 I_mixed_2m_rb.2: 931 0000 00000000 .space 128 931 00000000 931 00000000 931 00000000 931 00000000 ARM GAS /tmp/ccj8cv0U.s page 17 932 .section .bss.I_mixed_rb.5,"aw",%nobits 933 .align 2 934 .set .LANCHOR2,. + 0 937 I_mixed_rb.5: 938 0000 00000000 .space 256 938 00000000 938 00000000 938 00000000 938 00000000 939 .section .bss.Q_mixed_2m_rb.1,"aw",%nobits 940 .align 2 941 .set .LANCHOR7,. + 0 944 Q_mixed_2m_rb.1: 945 0000 00000000 .space 128 945 00000000 945 00000000 945 00000000 945 00000000 946 .section .bss.Q_mixed_rb.4,"aw",%nobits 947 .align 2 948 .set .LANCHOR3,. + 0 951 Q_mixed_rb.4: 952 0000 00000000 .space 256 952 00000000 952 00000000 952 00000000 952 00000000 953 .section .bss.audio_filter_coeffs,"aw",%nobits 954 .align 2 955 .set .LANCHOR24,. + 0 958 audio_filter_coeffs: 959 0000 00000000 .space 512 959 00000000 959 00000000 959 00000000 959 00000000 960 .section .bss.audio_filter_state,"aw",%nobits 961 .align 2 962 .set .LANCHOR23,. + 0 965 audio_filter_state: 966 0000 00000000 .space 764 966 00000000 966 00000000 966 00000000 966 00000000 967 .section .bss.audio_filter_struct,"aw",%nobits 968 .align 2 969 .set .LANCHOR18,. + 0 972 audio_filter_struct: 973 0000 00000000 .space 12 973 00000000 973 00000000 974 .section .bss.mixed_samples_2m_ringbuffer_index.3,"aw",%nobits 975 .set .LANCHOR4,. + 0 978 mixed_samples_2m_ringbuffer_index.3: 979 0000 00 .space 1 980 .section .bss.mixed_samples_ringbuffer_index.6,"aw",%nobits ARM GAS /tmp/ccj8cv0U.s page 18 981 .set .LANCHOR1,. + 0 984 mixed_samples_ringbuffer_index.6: 985 0000 00 .space 1 986 .section .bss.phase_accu.0,"aw",%nobits 987 .align 2 988 .set .LANCHOR15,. + 0 991 phase_accu.0: 992 0000 00000000 .space 4 993 .section .bss.phase_accu.7,"aw",%nobits 994 .align 2 995 .set .LANCHOR0,. + 0 998 phase_accu.7: 999 0000 00000000 .space 4 1000 .section .bss.prefilter_rx_dac_buffer,"aw",%nobits 1001 .align 2 1002 .set .LANCHOR14,. + 0 1005 prefilter_rx_dac_buffer: 1006 0000 00000000 .space 256 1006 00000000 1006 00000000 1006 00000000 1006 00000000 1007 .section .bss.rx_adc_buffer,"aw",%nobits 1008 .align 2 1009 .set .LANCHOR11,. + 0 1012 rx_adc_buffer: 1013 0000 00000000 .space 2048 1013 00000000 1013 00000000 1013 00000000 1013 00000000 1014 .section .bss.rx_adc_buffer_ready,"aw",%nobits 1015 .set .LANCHOR10,. + 0 1018 rx_adc_buffer_ready: 1019 0000 00 .space 1 1020 .section .bss.rx_dac_buffer,"aw",%nobits 1021 .align 2 1022 .set .LANCHOR17,. + 0 1025 rx_dac_buffer: 1026 0000 00000000 .space 512 1026 00000000 1026 00000000 1026 00000000 1026 00000000 1027 .section .bss.rx_dac_buffer_mezzo_vuoto,"aw",%nobits 1028 .set .LANCHOR13,. + 0 1031 rx_dac_buffer_mezzo_vuoto: 1032 0000 00 .space 1 1033 .section .bss.rx_dac_buffer_toggle,"aw",%nobits 1034 .set .LANCHOR16,. + 0 1037 rx_dac_buffer_toggle: 1038 0000 00 .space 1 1039 .section .bss.rx_nco1_increment,"aw",%nobits 1040 .align 2 1041 .set .LANCHOR12,. + 0 1044 rx_nco1_increment: 1045 0000 00000000 .space 4 ARM GAS /tmp/ccj8cv0U.s page 19 1046 .section .bss.rx_signal,"aw",%nobits 1049 rx_signal: 1050 0000 00 .space 1 1051 .section .bss.rx_signal_last,"aw",%nobits 1054 rx_signal_last: 1055 0000 00 .space 1 1056 .section .bss.st2_filter_I_state,"aw",%nobits 1057 .align 2 1058 .set .LANCHOR20,. + 0 1061 st2_filter_I_state: 1062 0000 00000000 .space 1532 1062 00000000 1062 00000000 1062 00000000 1062 00000000 1063 .section .bss.st2_filter_I_struct,"aw",%nobits 1064 .align 2 1065 .set .LANCHOR8,. + 0 1068 st2_filter_I_struct: 1069 0000 00000000 .space 12 1069 00000000 1069 00000000 1070 .section .bss.st2_filter_Q_state,"aw",%nobits 1071 .align 2 1072 .set .LANCHOR21,. + 0 1075 st2_filter_Q_state: 1076 0000 00000000 .space 1532 1076 00000000 1076 00000000 1076 00000000 1076 00000000 1077 .section .bss.st2_filter_Q_struct,"aw",%nobits 1078 .align 2 1079 .set .LANCHOR9,. + 0 1082 st2_filter_Q_struct: 1083 0000 00000000 .space 12 1083 00000000 1083 00000000 1084 .section .data.ms_hbf_filter_taps,"aw" 1085 .align 2 1086 .set .LANCHOR5,. + 0 1089 ms_hbf_filter_taps: 1090 0000 D03AFDFF .word -181552 1091 0004 00000000 .word 0 1092 0008 54183400 .word 3414100 1093 000c 00000000 .word 0 1094 0010 2A04FFFE .word -16841686 1095 0014 00000000 .word 0 1096 0018 A9A5D004 .word 80782761 1097 001c 00000008 .word 134217728 1098 0020 A9A5D004 .word 80782761 1099 0024 00000000 .word 0 1100 0028 2A04FFFE .word -16841686 1101 002c 00000000 .word 0 1102 0030 54183400 .word 3414100 1103 0034 00000000 .word 0 1104 0038 D03AFDFF .word -181552 ARM GAS /tmp/ccj8cv0U.s page 20 1105 .section .data.st2_filter_taps,"aw" 1106 .align 2 1107 .set .LANCHOR19,. + 0 1110 st2_filter_taps: 1111 0000 D9D0EEFF .word -1126183 1112 0004 A2D1EFFF .word -1060446 1113 0008 BAB9F0FF .word -1001030 1114 000c C297F1FF .word -944190 1115 0010 5B7CF2FF .word -885669 1116 0014 037AF3FF .word -820733 1117 0018 F4A4F4FF .word -744204 1118 001c F512F6FF .word -650507 1119 0020 2EDBF7FF .word -533714 1120 0024 EE15FAFF .word -387602 1121 0028 75DCFCFF .word -205707 1122 002c B1480000 .word 18609 1123 0030 FE740400 .word 292094 1124 0034 E37B0900 .word 621539 1125 0038 C3770F00 .word 1013699 1126 003c 99821600 .word 1475225 1127 0040 AEB51E00 .word 2012590 1128 0044 49292800 .word 2632009 1129 0048 67F43200 .word 3339367 1130 004c 732C3F00 .word 4140147 1131 0050 FBE44C00 .word 5039355 1132 0054 6E2F5C00 .word 6041454 1133 0058 DA1A6D00 .word 7150298 1134 005c ACB37F00 .word 8369068 1135 0060 7B039400 .word 9700219 1136 0064 D310AA00 .word 11145427 1137 0068 06DFC100 .word 12705542 1138 006c 096EDB00 .word 14380553 1139 0070 52BAF600 .word 16169554 1140 0074 C0BC1301 .word 18070720 1141 0078 8A6A3201 .word 20081290 1142 007c 38B55201 .word 22197560 1143 0080 A28A7401 .word 24414882 1144 0084 F7D49701 .word 26727671 1145 0088 D27ABC01 .word 29129426 1146 008c 4D5FE201 .word 31612749 1147 0090 28620902 .word 34169384 1148 0094 F15F3102 .word 36790257 1149 0098 31325A02 .word 39465521 1150 009c AEAF8302 .word 42184622 1151 00a0 A2ACAD02 .word 44936354 1152 00a4 08FBD702 .word 47708936 1153 00a8 E66A0203 .word 50490086 1154 00ac 9ECA2C03 .word 53267102 1155 00b0 48E75603 .word 56026952 1156 00b4 0C8D8003 .word 58756364 1157 00b8 7E87A903 .word 61441918 1158 00bc 01A2D103 .word 64070145 1159 00c0 2AA8F803 .word 66627626 1160 00c4 20661E04 .word 69101088 1161 00c8 00A94204 .word 71477504 1162 00cc 413F6504 .word 73744193 1163 00d0 12F98504 .word 75888914 ARM GAS /tmp/ccj8cv0U.s page 21 1164 00d4 BAA8A404 .word 77899962 1165 00d8 EC22C104 .word 79766252 1166 00dc 253FDB04 .word 81477413 1167 00e0 F6D7F204 .word 83023862 1168 00e4 51CB0705 .word 84396881 1169 00e8 CEFA1905 .word 85588686 1170 00ec E64B2905 .word 86592486 1171 00f0 2CA83505 .word 87402540 1172 00f4 76FD3E05 .word 88014198 1173 00f8 033E4505 .word 88423939 1174 00fc 9B604805 .word 88629403 1175 0100 9B604805 .word 88629403 1176 0104 033E4505 .word 88423939 1177 0108 76FD3E05 .word 88014198 1178 010c 2CA83505 .word 87402540 1179 0110 E64B2905 .word 86592486 1180 0114 CEFA1905 .word 85588686 1181 0118 51CB0705 .word 84396881 1182 011c F6D7F204 .word 83023862 1183 0120 253FDB04 .word 81477413 1184 0124 EC22C104 .word 79766252 1185 0128 BAA8A404 .word 77899962 1186 012c 12F98504 .word 75888914 1187 0130 413F6504 .word 73744193 1188 0134 00A94204 .word 71477504 1189 0138 20661E04 .word 69101088 1190 013c 2AA8F803 .word 66627626 1191 0140 01A2D103 .word 64070145 1192 0144 7E87A903 .word 61441918 1193 0148 0C8D8003 .word 58756364 1194 014c 48E75603 .word 56026952 1195 0150 9ECA2C03 .word 53267102 1196 0154 E66A0203 .word 50490086 1197 0158 08FBD702 .word 47708936 1198 015c A2ACAD02 .word 44936354 1199 0160 AEAF8302 .word 42184622 1200 0164 31325A02 .word 39465521 1201 0168 F15F3102 .word 36790257 1202 016c 28620902 .word 34169384 1203 0170 4D5FE201 .word 31612749 1204 0174 D27ABC01 .word 29129426 1205 0178 F7D49701 .word 26727671 1206 017c A28A7401 .word 24414882 1207 0180 38B55201 .word 22197560 1208 0184 8A6A3201 .word 20081290 1209 0188 C0BC1301 .word 18070720 1210 018c 52BAF600 .word 16169554 1211 0190 096EDB00 .word 14380553 1212 0194 06DFC100 .word 12705542 1213 0198 D310AA00 .word 11145427 1214 019c 7B039400 .word 9700219 1215 01a0 ACB37F00 .word 8369068 1216 01a4 DA1A6D00 .word 7150298 1217 01a8 6E2F5C00 .word 6041454 1218 01ac FBE44C00 .word 5039355 1219 01b0 732C3F00 .word 4140147 1220 01b4 67F43200 .word 3339367 ARM GAS /tmp/ccj8cv0U.s page 22 1221 01b8 49292800 .word 2632009 1222 01bc AEB51E00 .word 2012590 1223 01c0 99821600 .word 1475225 1224 01c4 C3770F00 .word 1013699 1225 01c8 E37B0900 .word 621539 1226 01cc FE740400 .word 292094 1227 01d0 B1480000 .word 18609 1228 01d4 75DCFCFF .word -205707 1229 01d8 EE15FAFF .word -387602 1230 01dc 2EDBF7FF .word -533714 1231 01e0 F512F6FF .word -650507 1232 01e4 F4A4F4FF .word -744204 1233 01e8 037AF3FF .word -820733 1234 01ec 5B7CF2FF .word -885669 1235 01f0 C297F1FF .word -944190 1236 01f4 BAB9F0FF .word -1001030 1237 01f8 A2D1EFFF .word -1060446 1238 01fc D9D0EEFF .word -1126183 1239 .section .data.st2_wide_taps,"aw" 1240 .align 2 1241 .set .LANCHOR22,. + 0 1244 st2_wide_taps: 1245 0000 4681FEFF .word -97978 1246 0004 D01E0500 .word 335568 1247 0008 8FE20B00 .word 778895 1248 000c A4A21200 .word 1221284 1249 0010 44231900 .word 1647428 1250 0014 D7101F00 .word 2035927 1251 0018 ACFD2300 .word 2358700 1252 001c 39642700 .word 2581561 1253 0020 89AE2800 .word 2666121 1254 0024 D3422700 .word 2573011 1255 0028 7F942200 .word 2266239 1256 002c 4F381A00 .word 1718351 1257 0030 C0F90D00 .word 915904 1258 0034 53EFFDFF .word -135341 1259 0038 408BEAFF .word -1406144 1260 003c 0BA6D4FF .word -2841077 1261 0040 C780BDFF .word -4357945 1262 0044 62BDA6FF .word -5849758 1263 0048 164C92FF .word -7189482 1264 004c 014E82FF .word -8237567 1265 0050 11EE78FF .word -8851951 1266 0054 4E3278FF .word -8900018 1267 0058 C5C881FF .word -8271675 1268 005c DBD396FF .word -6892581 1269 0060 9DBAB7FF .word -4736355 1270 0064 9901E4FF .word -1834599 1271 0068 D2301A00 .word 1716434 1272 006c 98CA5700 .word 5753496 1273 0070 4A569900 .word 10049098 1274 0074 9880DA00 .word 14319768 1275 0078 5C511601 .word 18239836 1276 007c 73754701 .word 21460339 1277 0080 37996801 .word 23632183 1278 0084 A9CE7401 .word 24432297 1279 0088 FFF86701 .word 23591167 ARM GAS /tmp/ccj8cv0U.s page 23 1280 008c 3B363F01 .word 20919867 1281 0090 F53EF900 .word 16334581 1282 0094 86B49600 .word 9876614 1283 0098 55561A00 .word 1726037 1284 009c 3C1889FF .word -7792580 1285 00a0 A115EAFE .word -18213471 1286 00a4 085F46FE .word -28942584 1287 00a8 52A2A8FD .word -39280046 1288 00ac 57B01CFD .word -48451497 1289 00b0 3CE5AEFC .word -55646916 1290 00b4 047B6BFC .word -60065020 1291 00b8 E7CF5DFC .word -60960793 1292 00bc 60AB8FFC .word -57693344 1293 00c0 708D08FD .word -49771152 1294 00c4 CD13CDFD .word -36891699 1295 00c8 987FDEFE .word -18972776 1296 00cc F1643A00 .word 3826929 1297 00d0 538BDA01 .word 31099731 1298 00d4 FA02B503 .word 62194426 1299 00d8 5E70BC05 .word 96235614 1300 00dc 918BE007 .word 132156305 1301 00e0 FCCD0E0A .word 168742396 1302 00e4 F345330C .word 204686835 1303 00e8 1585390E .word 238650645 1304 00ec 7E9C0D10 .word 269327486 1305 00f0 B9189D11 .word 295508153 1306 00f4 1AEFD712 .word 316141338 1307 00f8 CE4EB113 .word 330387150 1308 00fc 7B492014 .word 337660283 1309 0100 7B492014 .word 337660283 1310 0104 CE4EB113 .word 330387150 1311 0108 1AEFD712 .word 316141338 1312 010c B9189D11 .word 295508153 1313 0110 7E9C0D10 .word 269327486 1314 0114 1585390E .word 238650645 1315 0118 F345330C .word 204686835 1316 011c FCCD0E0A .word 168742396 1317 0120 918BE007 .word 132156305 1318 0124 5E70BC05 .word 96235614 1319 0128 FA02B503 .word 62194426 1320 012c 538BDA01 .word 31099731 1321 0130 F1643A00 .word 3826929 1322 0134 987FDEFE .word -18972776 1323 0138 CD13CDFD .word -36891699 1324 013c 708D08FD .word -49771152 1325 0140 60AB8FFC .word -57693344 1326 0144 E7CF5DFC .word -60960793 1327 0148 047B6BFC .word -60065020 1328 014c 3CE5AEFC .word -55646916 1329 0150 57B01CFD .word -48451497 1330 0154 52A2A8FD .word -39280046 1331 0158 085F46FE .word -28942584 1332 015c A115EAFE .word -18213471 1333 0160 3C1889FF .word -7792580 1334 0164 55561A00 .word 1726037 1335 0168 86B49600 .word 9876614 1336 016c F53EF900 .word 16334581 ARM GAS /tmp/ccj8cv0U.s page 24 1337 0170 3B363F01 .word 20919867 1338 0174 FFF86701 .word 23591167 1339 0178 A9CE7401 .word 24432297 1340 017c 37996801 .word 23632183 1341 0180 73754701 .word 21460339 1342 0184 5C511601 .word 18239836 1343 0188 9880DA00 .word 14319768 1344 018c 4A569900 .word 10049098 1345 0190 98CA5700 .word 5753496 1346 0194 D2301A00 .word 1716434 1347 0198 9901E4FF .word -1834599 1348 019c 9DBAB7FF .word -4736355 1349 01a0 DBD396FF .word -6892581 1350 01a4 C5C881FF .word -8271675 1351 01a8 4E3278FF .word -8900018 1352 01ac 11EE78FF .word -8851951 1353 01b0 014E82FF .word -8237567 1354 01b4 164C92FF .word -7189482 1355 01b8 62BDA6FF .word -5849758 1356 01bc C780BDFF .word -4357945 1357 01c0 0BA6D4FF .word -2841077 1358 01c4 408BEAFF .word -1406144 1359 01c8 53EFFDFF .word -135341 1360 01cc C0F90D00 .word 915904 1361 01d0 4F381A00 .word 1718351 1362 01d4 7F942200 .word 2266239 1363 01d8 D3422700 .word 2573011 1364 01dc 89AE2800 .word 2666121 1365 01e0 39642700 .word 2581561 1366 01e4 ACFD2300 .word 2358700 1367 01e8 D7101F00 .word 2035927 1368 01ec 44231900 .word 1647428 1369 01f0 A4A21200 .word 1221284 1370 01f4 8FE20B00 .word 778895 1371 01f8 D01E0500 .word 335568 1372 01fc 4681FEFF .word -97978 1373 .ident "GCC: (15:10.3-2021.07-4) 10.3.1 20210621 (release)" ARM GAS /tmp/ccj8cv0U.s page 25 DEFINED SYMBOLS *ABS*:0000000000000000 rx.c /tmp/ccj8cv0U.s:16 .text.rx_mixer:0000000000000000 $t /tmp/ccj8cv0U.s:25 .text.rx_mixer:0000000000000000 rx_mixer /tmp/ccj8cv0U.s:281 .text.rx_mixer:0000000000000300 $d /tmp/ccj8cv0U.s:294 .text.ricevi:0000000000000000 $t /tmp/ccj8cv0U.s:302 .text.ricevi:0000000000000000 ricevi /tmp/ccj8cv0U.s:434 .text.ricevi:0000000000000134 $d /tmp/ccj8cv0U.s:454 .text.am_demodulator:0000000000000000 $t /tmp/ccj8cv0U.s:462 .text.am_demodulator:0000000000000000 am_demodulator /tmp/ccj8cv0U.s:488 .text.ssb_demodulator:0000000000000000 $t /tmp/ccj8cv0U.s:496 .text.ssb_demodulator:0000000000000000 ssb_demodulator /tmp/ccj8cv0U.s:551 .text.ssb_demodulator:000000000000008c $d /tmp/ccj8cv0U.s:557 .text.dc_demodulator:0000000000000000 $t /tmp/ccj8cv0U.s:565 .text.dc_demodulator:0000000000000000 dc_demodulator /tmp/ccj8cv0U.s:589 .text.dc_demodulator:0000000000000028 $d /tmp/ccj8cv0U.s:592 .text.hb_fir15:0000000000000000 $t /tmp/ccj8cv0U.s:600 .text.hb_fir15:0000000000000000 hb_fir15 /tmp/ccj8cv0U.s:655 .text.st2_filter_init:0000000000000000 $t /tmp/ccj8cv0U.s:663 .text.st2_filter_init:0000000000000000 st2_filter_init /tmp/ccj8cv0U.s:721 .text.st2_filter_init:0000000000000074 $d /tmp/ccj8cv0U.s:730 .text.rx_inizializza_filtro_audio:0000000000000000 $t /tmp/ccj8cv0U.s:738 .text.rx_inizializza_filtro_audio:0000000000000000 rx_inizializza_filtro_audio /tmp/ccj8cv0U.s:756 .text.rx_inizializza_filtro_audio:000000000000001c $d /tmp/ccj8cv0U.s:766 .text.audio_filter_generate_coeffs:0000000000000000 $t /tmp/ccj8cv0U.s:774 .text.audio_filter_generate_coeffs:0000000000000000 audio_filter_generate_coeffs /tmp/ccj8cv0U.s:829 .text.audio_filter_generate_coeffs:0000000000000098 $d /tmp/ccj8cv0U.s:835 .text.set_rx_audio_filter:0000000000000000 $t /tmp/ccj8cv0U.s:843 .text.set_rx_audio_filter:0000000000000000 set_rx_audio_filter /tmp/ccj8cv0U.s:858 .text.set_rx_audio_filter:0000000000000014 $d /tmp/ccj8cv0U.s:865 .text.set_rx_nco1_freq:0000000000000000 $t /tmp/ccj8cv0U.s:873 .text.set_rx_nco1_freq:0000000000000000 set_rx_nco1_freq /tmp/ccj8cv0U.s:902 .text.set_rx_nco1_freq:0000000000000034 $d /tmp/ccj8cv0U.s:1244 .data.st2_wide_taps:0000000000000000 st2_wide_taps /tmp/ccj8cv0U.s:1110 .data.st2_filter_taps:0000000000000000 st2_filter_taps /tmp/ccj8cv0U.s:1089 .data.ms_hbf_filter_taps:0000000000000000 ms_hbf_filter_taps /tmp/ccj8cv0U.s:958 .bss.audio_filter_coeffs:0000000000000000 audio_filter_coeffs /tmp/ccj8cv0U.s:965 .bss.audio_filter_state:0000000000000000 audio_filter_state /tmp/ccj8cv0U.s:972 .bss.audio_filter_struct:0000000000000000 audio_filter_struct /tmp/ccj8cv0U.s:1075 .bss.st2_filter_Q_state:0000000000000000 st2_filter_Q_state /tmp/ccj8cv0U.s:1061 .bss.st2_filter_I_state:0000000000000000 st2_filter_I_state /tmp/ccj8cv0U.s:1082 .bss.st2_filter_Q_struct:0000000000000000 st2_filter_Q_struct /tmp/ccj8cv0U.s:1068 .bss.st2_filter_I_struct:0000000000000000 st2_filter_I_struct /tmp/ccj8cv0U.s:1054 .bss.rx_signal_last:0000000000000000 rx_signal_last /tmp/ccj8cv0U.s:1049 .bss.rx_signal:0000000000000000 rx_signal /tmp/ccj8cv0U.s:1025 .bss.rx_dac_buffer:0000000000000000 rx_dac_buffer /tmp/ccj8cv0U.s:1005 .bss.prefilter_rx_dac_buffer:0000000000000000 prefilter_rx_dac_buffer /tmp/ccj8cv0U.s:1031 .bss.rx_dac_buffer_mezzo_vuoto:0000000000000000 rx_dac_buffer_mezzo_vuoto /tmp/ccj8cv0U.s:1037 .bss.rx_dac_buffer_toggle:0000000000000000 rx_dac_buffer_toggle /tmp/ccj8cv0U.s:1012 .bss.rx_adc_buffer:0000000000000000 rx_adc_buffer /tmp/ccj8cv0U.s:1018 .bss.rx_adc_buffer_ready:0000000000000000 rx_adc_buffer_ready /tmp/ccj8cv0U.s:1044 .bss.rx_nco1_increment:0000000000000000 rx_nco1_increment /tmp/ccj8cv0U.s:926 .bss.I_mixed_2m_rb.2:0000000000000000 $d /tmp/ccj8cv0U.s:930 .bss.I_mixed_2m_rb.2:0000000000000000 I_mixed_2m_rb.2 /tmp/ccj8cv0U.s:933 .bss.I_mixed_rb.5:0000000000000000 $d /tmp/ccj8cv0U.s:937 .bss.I_mixed_rb.5:0000000000000000 I_mixed_rb.5 /tmp/ccj8cv0U.s:940 .bss.Q_mixed_2m_rb.1:0000000000000000 $d ARM GAS /tmp/ccj8cv0U.s page 26 /tmp/ccj8cv0U.s:944 .bss.Q_mixed_2m_rb.1:0000000000000000 Q_mixed_2m_rb.1 /tmp/ccj8cv0U.s:947 .bss.Q_mixed_rb.4:0000000000000000 $d /tmp/ccj8cv0U.s:951 .bss.Q_mixed_rb.4:0000000000000000 Q_mixed_rb.4 /tmp/ccj8cv0U.s:954 .bss.audio_filter_coeffs:0000000000000000 $d /tmp/ccj8cv0U.s:961 .bss.audio_filter_state:0000000000000000 $d /tmp/ccj8cv0U.s:968 .bss.audio_filter_struct:0000000000000000 $d /tmp/ccj8cv0U.s:978 .bss.mixed_samples_2m_ringbuffer_index.3:0000000000000000 mixed_samples_2m_ringbuffer_index.3 /tmp/ccj8cv0U.s:979 .bss.mixed_samples_2m_ringbuffer_index.3:0000000000000000 $d /tmp/ccj8cv0U.s:984 .bss.mixed_samples_ringbuffer_index.6:0000000000000000 mixed_samples_ringbuffer_index.6 /tmp/ccj8cv0U.s:985 .bss.mixed_samples_ringbuffer_index.6:0000000000000000 $d /tmp/ccj8cv0U.s:987 .bss.phase_accu.0:0000000000000000 $d /tmp/ccj8cv0U.s:991 .bss.phase_accu.0:0000000000000000 phase_accu.0 /tmp/ccj8cv0U.s:994 .bss.phase_accu.7:0000000000000000 $d /tmp/ccj8cv0U.s:998 .bss.phase_accu.7:0000000000000000 phase_accu.7 /tmp/ccj8cv0U.s:1001 .bss.prefilter_rx_dac_buffer:0000000000000000 $d /tmp/ccj8cv0U.s:1008 .bss.rx_adc_buffer:0000000000000000 $d /tmp/ccj8cv0U.s:1019 .bss.rx_adc_buffer_ready:0000000000000000 $d /tmp/ccj8cv0U.s:1021 .bss.rx_dac_buffer:0000000000000000 $d /tmp/ccj8cv0U.s:1032 .bss.rx_dac_buffer_mezzo_vuoto:0000000000000000 $d /tmp/ccj8cv0U.s:1038 .bss.rx_dac_buffer_toggle:0000000000000000 $d /tmp/ccj8cv0U.s:1040 .bss.rx_nco1_increment:0000000000000000 $d /tmp/ccj8cv0U.s:1050 .bss.rx_signal:0000000000000000 $d /tmp/ccj8cv0U.s:1055 .bss.rx_signal_last:0000000000000000 $d /tmp/ccj8cv0U.s:1057 .bss.st2_filter_I_state:0000000000000000 $d /tmp/ccj8cv0U.s:1064 .bss.st2_filter_I_struct:0000000000000000 $d /tmp/ccj8cv0U.s:1071 .bss.st2_filter_Q_state:0000000000000000 $d /tmp/ccj8cv0U.s:1078 .bss.st2_filter_Q_struct:0000000000000000 $d /tmp/ccj8cv0U.s:1085 .data.ms_hbf_filter_taps:0000000000000000 $d /tmp/ccj8cv0U.s:1106 .data.st2_filter_taps:0000000000000000 $d /tmp/ccj8cv0U.s:1240 .data.st2_wide_taps:0000000000000000 $d UNDEFINED SYMBOLS ringbuf_increment arm_fir_decimate_q31 arm_fir_q31 sat_mult_q31 stato if_I if_Q canale arm_fir_decimate_init_q31 arm_fir_init_q31 __aeabi_ui2d __aeabi_ddiv __aeabi_i2d __aeabi_dmul __aeabi_d2iz RectWinFIR FIRFilterWindow audio_filter_beta audio_filter_bw audio_filter_freq __aeabi_ldivmod