LPC4088(Cortex M4): port.c Assembly Failure under Crossworks for ARM

Hi Folks: This problem applies to the Embedded Artists LPC4088-32 Eval board and the Crossworks for ARM toolchain. It is specific to building FreeRTOS V8.0.1 as an Embedded Artists “An executable for Embedded Artists LPC4088 OEM” project. The port.c file in the ARMCM4F FreeRTOS porting directory doesn’t assemble properly when the project is configured for COREM4 in the Crossworks GUI project preprocessor definitions. The problem occurs regardless of how project Release – ARM FP ABI is configured with the Crossworks GUI. The following diagnostic is displayed when you attempt to assemble port.c. selected processor does not support Thumb mode `vstmdbeq r0!,{s16-s31}’ Do you have any insight about the problem or its solution ? NOTE: This problem does not occur if the ARM_CM3 porting directory is used. Best Regards, Paul R.

LPC4088(Cortex M4): port.c Assembly Failure under Crossworks for ARM

Some Cortex-M4s have an FPU, some don’t. Telling the compiler you are building for a Cortex-M4 is not enough to compile FPU instructions – you must also tell the compiler which FPU the chip is using as a separate command line option. Regards.