смотри что ИАР творит
long wi=((long long)s*ReFT[i+LP2]+(long long)c*ImFT[i+LP2])>>10; \ 0000012E 0xE9DD 0x4506 LDRD R4,R5,[SP, #+24] \ 00000132 0xFBA4 0x890E UMULL R8,R9,R4,LR \ 00000136 0xFB04 0x9907 MLA R9,R4,R7,R9 \ 0000013A 0xFB05 0x990E MLA R9,R5,LR,R9 \ 0000013E 0xE9DD 0x4508 LDRD R4,R5,[SP, #+32] \ 00000142 0x46C2 MOV R10,R8 \ 00000144 0x46CB MOV R11,R9 \ 00000146 0x17F7 ASRS R7,R6,#+31 \ 00000148 0xFBA4 0x8906 UMULL R8,R9,R4,R6 \ 0000014C 0xFB04 0x9907 MLA R9,R4,R7,R9 \ 00000150 0xFB05 0x9906 MLA R9,R5,R6,R9 \ 00000154 0xEB1A 0x0408 ADDS R4,R10,R8 \ 00000158 0xEB4B 0x0509 ADC R5,R11,R9 \ 0000015C 0x0AA4 LSRS R4,R4,#+10 \ 0000015E 0xEA44 0x5485 ORR R4,R4,R5, LSL #+22где команда SMLAL R4, R5, R3, R8 ; Multiplies R3 and R8, adds R5:R4 and writes to R5:R4