This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
I'm having difficulty figuring out how to disable the flag in the compiler so that it doesn't generate the floating point instructions. I'm using CCS. It always seems to force the following condition:
--float_support: should be one of {VFPv2,VFPv3,VFPv3D16,vfplib,fpalib,FPv4SPD16}
How can I disable this FPU support flag? Please note I'm not interested in Enabling/ Disabling the FPU core itself, that I can manage.
Thank you,
If --float_support is set to vfpalib or fpalib then the compiler won't generate floating point instructions, and any floating point operations will be performed by calls to library functions.Michael Raleigh said:I'm having difficulty figuring out how to disable the flag in the compiler so that it doesn't generate the floating point instructions
The only difference between vfpalib and fpalib is the endianess used for double-precision floating point values. From ARM Optimizing C/C++ Compiler v5.2 User's Guide SPNU151J:
fpalib— FPA endianness is used to store double-precision floating-point values (most significant word occupies the lower memory address).vfplib— VFP endianness is used to store double-precision floating-point values (endianness used is that of the memory system). All VFP coprocessors use this endianness to represent doubles.
Hi Luis,
Thanks for the quick response but I don't think that worked. When I compile using that "blank" method vs. using the flag FPv4SPD16, I get the same execution time for the FPU section (about 5 ms). I get the best performance when I select the FPU option fpalib (about 1.3 ms). I would expect that if the blank/FPv4SPD16 was not using the FPU instructions the execution time would be an order of magnitude larger than fpalib.
I'm trying to benchmark performance.
Thanks!
**Attention** This is a public forum