[ Date Prev][ Date Next][ Thread Prev][ Thread Next][ Date Index][ Thread Index]
Re: [arm-gnu] urgent toolchain
- To: Carlos O'Donell <carlos@xxxxxxxxxxxxxxxx>
- Subject: Re: [arm-gnu] urgent toolchain
- From: Gilles Chanteperdrix <gilles.chanteperdrix@xxxxxxxxxxx>
- Date: Mon, 18 Aug 2008 16:43:28 +0200
Carlos O'Donell wrote:
> Gilles Chanteperdrix wrote:
>>> Using "-mfpu=vfp -mfloat-abi=softfp" instead of "-msoft-float" will
>>> enable VFP hardware floating-point code-generation for your program. The
>>> run-time libraries will still use software floating-point. Routines
>>> compiled for VFP are compatible with software floating-point.
>> It looks like run-time libraries do contain some FP code. Here is an
>> excerpt of disassembling
>> arm-2007q3/arm-none-linux-gnueabi/libc/lib/libc-2.5.so:
>
> The run-time may contain VFP instructions as long as they are never
> executed on hardware that does not have a VFP.
>
>> 29b10: 0a000002 beq 29b20 <Lno_vfp>
>> 29b14: ecac8b11 fstmiax ip!, {d8-d15}
>> 29b18: eef12a10 fmrx r2, fpscr
>> 29b1c: e48c2004 str r2, [ip], #4
>
> The GNU C Library contains run-time CPU feature detection. The 'beq'
> instruction will check the variable "no_vfp" (No VFP available) and skip
> the VFP instructions on non-VFP hardware.
>
> Are you having a problem with this?
I do not have checked any further, but I have a VFP platform where the
Linux kernel fails executing init without CONFIG_VFP enabled.
--
Gilles.
|