[sdiy] ARM M4 (stm32F3xx) FPU questions
Eric Brombaugh
ebrombaugh1 at cox.net
Fri Oct 7 04:21:55 CEST 2016
Looks like you set up the SW4STM project to reference stdperiph as a
library and then built the library for softfp ABI. Try rebuilding the
library as hard.
I don't use it as an external library, so my projects import the
stdperiph stuff into the project and build it with whatever ABI settings
I've defined in the project. You might find that provides better
results, but the trade-off is that it has to build all the stdperiph
components when you clean the project and rebuild.
Eric
On 10/06/2016 06:33 PM, Chris McDowell wrote:
> Howdy,
>
> This is a long shot :)
>
> I'm using Eclipse with "System Workbench for STM32" for an STM32F334.
> I'm flying by the seat of my pants, but so far it's worked out quite
> well. Super impressed by these ST parts, as expected.
>
> But, I'm running into an issue when trying to use the FPU. If I
> configure Eclipse to use the "soft" or "softfp" ABI, I have no problems.
> "soft" of course isn't what I want. "softfp" is much faster, but after
> reading about the difference between the "softfp" and "hard" ABI, I
> understand that I'm still taking a big performance hit (or maybe I'm
> not? correct me if I'm wrong!) . I want to get the most out of this MCUs
> FPU!
>
>
> this is what the related flags look like when I try to use the "hard"
> ABI (if I'm misunderstanding or missing other relevant flags, please
> feel free to say so!)
>
> arm-none-eabi-gcc -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16
>
> then I get this error:
> (my file name).elf uses VFP register arguments, (my path to std periph
> library)/stm32f334k8t6_stdperiph_lib/Debug/libstm32f334k8t6_stdperiph_lib.a(stm32f30x_dac.o)
> does not
>
> and again for quite a few other object files. I suppose that these
> object files, that are part of the std peripheral library, are trying to
> use "softfp" instructions, while my code is trying to use "hard". I
> understand that they are not compatible. Is there something obvious I
> can try here? Anyone have any idea? I know there are a ton of variables
> in a set up like this, but any pointers would be really appreciated.
>
> and please forgive / correct my ignorance regarding the terminology
> here. Hopefully someone understands what I'm trying to say :)
>
> Cheers,
> Chris
>
>
>
>
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>
More information about the Synth-diy
mailing list