Cortex-M4F: Crash when using FPU and math with literal

I'm doing some tests with the Cortex-M4F and utilizing the FPU. I've added the -mfloat-abi=hard -mfpu=fpv4-sp-d16 tags to the compiler and linker flags, and this worked! If I'm using float variables, I can do math operations in C code, I see in assembly that it is calling "vfma.f32" and "vldr" instead of calling the eabi soft libraries, and I get the correct answers.

However, if I try to multiply a float variable by a float literal, it crashes. I've tried adding the "f" suffix onto the literal to force it to interpret as a float, tried various combinations of extra compiler flags like  "-fsingle-precision-constant", "-ffast-math", but I can never get past the issue.

Any ideas what is the issue?

Parents Reply Children
No data