I have a STM32F3 Discovery and I have ported FreeRTOS to it. My tool chain is GCC based. I used information from two separate supported ports. They were the CORTEX_M4F_Infineon_XMC4500_GCC_Atollic and the second was the CORTEX_M4F_STM32F407ZG-SK. The first port had the correct tool chain, but wrong micro controller manufacturer. The second almost the correct micro controller, but the wrong tool chain. The port works and currently has two (2) components designed specifically to test the hardware FPU operation. The first component uses the eight (8) math tasks from the flop (flop.c) tests. These tasks have been modified for single precision operation, because the hardware FPU is single precision. The second component is a single instance of the register test task (in assembly). The resulting demo runs with no errors.
Both of the supported parent ports run with two (2) instances of the register test tasks (in assembly). Unfortunately, I am only able to get one instance to run with the flops tests. It appear that one register test task causes the other to fail, but does not effect the flop tests.
I believe that the FPU is fully operational and that FreeRTOS running properly. However, I am troubled that I can not get the second instance of the register test task running successfully. Any advice on how to proceed would be most appreciated.