cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
445 Views
Registered: ‎01-08-2019

Is it possible to build the echo demo with -mfloat-abi=hard?

I'm using the 2018.3 SDK on a Zync 104 eval board.  I was abable to successfully build and run the echo demo using FreeRTOS on the R5 using the demo project wizards, and leaving everything set to the defaults:

setup1.pngsetup2.png

setup3.png

 

Next I wanted to see if I could compile the R5 application using -mfloat-abi=hard:

setup4.png

However, after clicking OK and the application rebuilds, if I look at the extra_compiler_flags field again, the -mfloat-abi=hard has been removed.

If I add it twice, like this:

setup5.png

One of the -mfloat-abi=hard settings will "stick", but the build fails with this:

armr5-none-eabi-gcc -DARMR5 -Wall -O0 -g3 -c -fmessage-length=0 -MT"test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.o" -mcpu=cortex-r5 -I/home/advtech1/chcase/tmp/test/test_rtos_amp_bsp/psu_cortexr5_0/include -MMD -MP -MF"test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.d" -MT"test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.o" -o "test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.o" "../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S"
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S: Assembler messages:
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:202: Error: selected processor does not support `vmrs r3,FPEXC' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:204: Error: selected processor does not support `vmsr FPEXC,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:208: Error: selected processor does not support `vmov d0,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:209: Error: selected processor does not support `vmov d1,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:210: Error: selected processor does not support `vmov d2,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:211: Error: selected processor does not support `vmov d3,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:212: Error: selected processor does not support `vmov d4,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:213: Error: selected processor does not support `vmov d5,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:214: Error: selected processor does not support `vmov d6,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:215: Error: selected processor does not support `vmov d7,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:216: Error: selected processor does not support `vmov d8,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:217: Error: selected processor does not support `vmov d9,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:218: Error: selected processor does not support `vmov d10,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:219: Error: selected processor does not support `vmov d11,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:220: Error: selected processor does not support `vmov d12,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:221: Error: selected processor does not support `vmov d13,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:222: Error: selected processor does not support `vmov d14,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:223: Error: selected processor does not support `vmov d15,r1,r1' in ARM mode
../test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.S:227: Error: selected processor does not support `vmsr FPEXC,r3' in ARM mode
make: *** [test_rtos_amp_bsp/psu_cortexr5_0/libsrc/standalone_v6_8/src/boot.o] Error 1

 

Is there a reason that -mfloat-abi=hard can't be used with FreeRTOS?  In the baremetal version of this demo, I can use -mfloat-abi=hard with no problems. Looking the FreeRTOS make file in the SDK install directory, it appears that the make file uses -mfloat-abi=soft, and that this setting can't be changed.  Am I missing something?

 

 

0 Kudos