04-23-2019 05:25 AM
Hi,
I am porting a project from sdk 2015.4 to sdk 2017.2.
In this project, i amusing NEON coprocessor to compute complex fft(cfft). After porting i am getting an error saying
"selected processor does not support `vpush {d8-d15}' in Thumb mode" in the NE10_cfft.neon.s assembly file.
But this error is not there in sdk 2015.4. Any idea why its occuring.
Thanks,
Vimal
05-02-2019 05:37 AM
Hi @vimalk ,
Thanks for the files, a small testcase code was enought but sharing the whole workspace also works :)
So the issue is that you are not setting the NEON coprocessor as FP unit and relaying on the default configuration. As per my previous message the toolchain used in 2015.4 and 2017.2 are different, and althought the first one has NEON as default it is not the case for the second one.
see mfpu option on GCC options.
At the end of the day you just need to add the "-mfpu=neon" flag in your assembler configuration (as is the only one with NEON instructions).
Regards
05-02-2019 03:11 AM
Hi @vimalk
If not wrong the toolchain used in 2015.4 was CodeSourcery built GCC (arm-xilinx-....) while in 2017.2 is Linaro built GCC (arm-none-..) so definitively the toolchain difference might have impact. Saying that would be useful if you could share a small testcase to reprocue the issue, ideally a small code testcase that gets the same error message.
Regards
05-02-2019 04:15 AM
05-02-2019 05:37 AM
Hi @vimalk ,
Thanks for the files, a small testcase code was enought but sharing the whole workspace also works :)
So the issue is that you are not setting the NEON coprocessor as FP unit and relaying on the default configuration. As per my previous message the toolchain used in 2015.4 and 2017.2 are different, and althought the first one has NEON as default it is not the case for the second one.
see mfpu option on GCC options.
At the end of the day you just need to add the "-mfpu=neon" flag in your assembler configuration (as is the only one with NEON instructions).
Regards
05-02-2019 06:02 AM