Hi,
I am working with CCSv6.1 on a Cortex-M4 device.
I have a code which is working fine with TI compiler 5.1.6, but if i compile the same code with TI compiler 5.2.2, it is going into fault. I checked the assembly code with both the compiler versions(have attached the snapshot for the same). The usage of R7 register doesn't look correct to me (i may be wrong about this) as the value which we are loading into R7 is being pushed onto the stack.
assembly code with 5.1.6
assembly code with 5.2.2
The declaration for fmonty() function is:
static void fmonty(limb *x2, limb *z2, /* output 2Q */
limb *x3, limb *z3, /* output Q + Q' */
limb *x, limb *z, /* input Q */
limb *xprime, limb *zprime, /* input Q' */
const limb *qmqp /* input Q - Q' */)
Is there anything wrong with this function call or the assembly code??
I'll gladly provide any information that you might need.
Thanks and Regards,
Rahul