[imxrt1050] Build Error selected processor does not support `vstmdbeq r0!,{s16-s31}' in Thumb mode

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

[imxrt1050] Build Error selected processor does not support `vstmdbeq r0!,{s16-s31}' in Thumb mode

3,758 Views
ansee7221
Contributor I

After Build, I encounter below build error...

Invoking: MCU C Compiler
arm-none-eabi-gcc -std=gnu99 -D_REDLIB_ -DCPU_MIMXRT1052DVL6B -DCPU_MIMXRT1052DVL6B_cm7 -DXIP_BOOT_HEADER_DCD_ENABLE=1 -DSKIP_SYSCLK_INIT -DDATA_SECTION_IS_CACHEABLE=1 -DSDK_DEBUGCONSOLE=1 -DXIP_EXTERNAL_FLASH=1 -DXIP_BOOT_HEADER_ENABLE=1 -DSERIAL_PORT_TYPE_UART=1 -DCR_INTEGER_PRINTF -DPRINTF_FLOAT_ENABLE=0 -D_MCUXPRESSO -DUSE_CMSIS -DDEBUG -I"D:\04 Project\AdvancedDevelopment\RTOS\program\evkbimxrt1050_emwin_serial_terminal\board" -I"D:\04

"McuLib/FreeRTOS/Source/event_groups.o" "../McuLib/FreeRTOS/Source/event_groups.c"
C:\Users\10120055\AppData\Local\Temp\ccyDZKwm.s: Assembler messages:
C:\Users\10120055\AppData\Local\Temp\ccyDZKwm.s:1017: Error: selected processor does not support `vstmdbeq r0!,{s16-s31}' in Thumb mode
C:\Users\10120055\AppData\Local\Temp\ccyDZKwm.s:1018: Error: instruction not allowed in IT block – `stmdb r0!,{r4-r11,r14}'
C:\Users\10120055\AppData\Local\Temp\ccyDZKwm.s:1032: Error: selected processor does not support `vldmiaeq r0!,{s16-s31}' in Thumb mode
C:\Users\10120055\AppData\Local\Temp\ccyDZKwm.s:1033: Error: instruction not allowed in IT block – `msr psp,r0'
Finished building: ../McuLib/FreeRTOS/Source/event_groups.c
make: *** [McuLib/FreeRTOS/Source/portable/GCC/ARM_CM4F/subdir.mk:24: McuLib/FreeRTOS/Source/portable/GCC/ARM_CM4F/port.o] Error 1
make: *** Waiting for unfinished jobs....

 

 

0 Kudos
Reply
5 Replies

3,750 Views
converse
Senior Contributor V

It looks like the build is missing a lot of options - including CPU selection. It is difficult to tell from what you have posted, but it looks possible that your workspace path has a 'special' character in it that is causing the compiler to not read the command line beyond the first include directory.

So, either check the location of your workspace and ensure there are no special characters in the path, or post the whole Build Log (as an attachment - not inline in your post) so we can interpret the problem.

3,721 Views
ansee7221
Contributor I

@converse , Thank you for your reply. I attached build log.

0 Kudos
Reply

3,710 Views
converse
Senior Contributor V

The problem is with the MCU Assembler settings in your project properties. You have not set the floating point type - It is currently set to None (implying no floating point), but you will need to set it match the rest of your project. Alternatively, you could have chosen the wrong FreeRTOS port - you have chosen the floating point version - you are using the floating point version of portasm.s.

0 Kudos
Reply

3,708 Views
ansee7221
Contributor I

@converse

I want to use both freeRTOS and emwin. The example provided in SDK is to use the floating point of architechture as "none" when using AppWizard. (https://community.nxp.com/t5/MCUXpresso-General-Knowledge/AppWizard-Creating-a-new-project-and-addin...)

How can i get an example source using both freeRTOS and emwin?

 

 

0 Kudos
Reply

3,697 Views
converse
Senior Contributor V

As far as I know, the free version of emWin does not support floating point. You will have to purchase an emWin license from Segger to get a version that supports FP. Suggest you contact Segger and ask!