[fpc-devel] ARM: problem with uses VFP instructions
Dariusz Mazur
darekm at emadar.com
Wed Dec 2 15:17:28 CET 2009
Jonas Maebe pisze:
>
> On 02 Dec 2009, at 00:23, Dariusz Mazur wrote:
>
>> HI
>> I try to crosscompile for arm (uclibc and eabi). Source and listing
>> error below.
>> But when I remove dynlibs form uses section, all goes OK
>> When I check link.res only few things are changed in section input
>> prt0->cprt0.o
>> ->crti.o
>>
>> What I should looking for.
>
> I don't understand the errors, because FPC does not yet support VFP at
> all. So those FPC-generated object files cannot contain any VFP code.
> On ARM systems, the kind of instructions used by an object file is
> stored in its header by the assembler. Maybe you are using a toolchain
> that has not been configured for softfloat to cross-compile.
i've make some investigation
problem start from crti.o linking from achieved toolchain (I use
AT91SAM9260)
I found something like makro __FPV_FP in source for this library on
uclibc.org
and explanation on http://wiki.debian.org/ArmEabiPort
When porting code to ARM EABI, the following preprocessor macros are
interesting:
*
__VFP_FP__ means that the floating point format in use is that of
the ARM VFP unit, which is native-endian IEEE-754.
*
__MAVERICK__ means that the floating point format is that of the
irrus Logic MaverickCrunch
<http://wiki.debian.org/MaverickCrunch>, which is also IEEE-754
and is always little-endian.
*
__SOFTFP__ means that instead of floating point instructions,
library calls are being generated for floating point math
operations so that the code will run on a processor without an FPU.
__VFP_FP__ and __MAVERICK__ are mutually exclusive. If neither is set,
that means the floating point format in use is the old mixed-endian
45670123 format of the FPA unit.
Note that __VFP_FP__ does /not/ mean that VFP code generation has been
selected. It only speaks of the floating point data format in use and is
normally set when softfloat has been selected. The correct test for VFP
code generation, for example around asm fragments containing VFP
instructions, is
My question is: which variant use FPC
--
Darek
More information about the fpc-devel
mailing list