RTEMS GCC BIG ENDIAN SUPPORT

Jonathan Brandmeyer jbrandmeyer at planetiq.com
Fri Aug 2 15:32:25 UTC 2019


Another tip: Be sure to pass the complete set of machine-control
arguments to the linker as well as the compiler invocations.  Ie,
`-mbig-endian` and kin need to be used as both LDFLAGS and CFLAGS.

> [OP is passing arguments] -D__ARMEB__ -D__VFP_NOFP__ -mfpu=vfpv3-d16 -mfloat-abi=hard

> [in order to achieve] This configuration is for ARM Cortex-R5F processor, floating-point disabled, and big-endian target.

I don't think this does what you intend.  Don't pass the -D__
arguments at all; just use the appropriate -m arguments.  If you
really do want to disable the FPU, you'll want `-mfloat-abi=soft`.
The arguments `-mfpu=vfpv3-d16 -mfloat-abi=hard` ask the compiler to
emit floating-point instructions.

See also https://gcc.gnu.org/onlinedocs/gcc-7.4.0/gcc/ARM-Options.html#ARM-Options

HTH,
-- 
Jonathan Brandmeyer



More information about the users mailing list