I am attempting to get my RX621 configured to perform 64-bit math.

I have included <math.h> and <mathf.h>, changed C89 to C99 in both "C/C++" and "Standard Library" tabs, and on the "CPU"tab inside the "Details" section, I have selected "Double precision" for the Precision of double field.

My processor is performing the following :

5803636 x (5803636 / (55669978 / 10000)) = 404249823

The answer is actually : 6050333057

My code snippet follows :

dTemp = ((double)Numerator * ((double)Numerator / ((double)Denominator / 10000)));

dTemp is a double

Numerator and Denominator are both unsigned long

Am I missing something on the compiler settings?

Lane