I use two consecutive MPYF32,like this:
MPYF32 R0H, R1H, R0H
MPYF32 R1H, R2H, R1H
why is R1H changed after executing the first instruction “MPYF32 R0H, R1H, R0H”?
I encounter this in C:
float a,b,c;
c = a*a + b*b;
the assemble language of(c = a*a + b*b;)is :
MOV32 R0H, @20, UNCF
MOV32 R1H, @20, UNCF
MOV32 R2H, @6, UNCF
MPYF32 R0H, R1H, R0H
MPYF32 R1H, R2H, R1H
NOP
ADDF32 R0H, R1H, R0H
NOP
MOV32 @8, R0H
Thanks a lot!