Цитата(SpiritDance @ Mar 26 2007, 18:15)

klen
А эта... не поделитесь бабочкой?ж)
Aлгоритм
data->AoutReal = data->AinReal + data->RotateReal * data->BinReal ;
data->AoutImage = data->AinImage + data->RotateImage * data->BinImage ;
data->BoutReal = data->AinReal - data->RotateReal * data->BinReal ;
data->BoutImage = data->AinImage - data->RotateImage * data->BinImage ;
Код
typedef struct {
int AinReal ;
int AinImage ;
int BinReal ;
int BinImage ;
int AoutReal ;
int AoutImage ;
int BoutReal ;
int BoutImage ;
int RotateReal ;
int RotateImage;
}TComplex;
volatile TComplex Data ;
void Baterfly(TComplex* data) __attribute__((naked));
void Baterfly(TComplex* data)
{
asm volatile ("ldr r2, [%0, #8] ;\
ldr r1, [%0, #36] ;\
ldr r3, [%0, #12] ;\
ldr ip, [%0, #32] ;\
stmdb sp!, {r4, lr} ;\
mul ip, r2, ip ;\
mul lr, r3, r1 ;\
ldr r2, [%0, #4] ;\
ldr r3, [%0] ;\
rsb r1, lr, r2 ;\
rsb r4, ip, r3 ;\
add r2, r2, lr ;\
add r3, r3, ip ;\
str r1, [%0, #28] ;\
str r2, [%0, #20] ;\
str r3, [%0, #16] ;\
str r4, [%0, #24] ;\
ldmia sp!, {r4, pc}"
:
:"r"(data)
:"r0", "r1" ,"r2");
}
Не уверен что это последняя версия, но вроде похоже, токак какой толк от нее - все было притянуто к целым числам