Actions

icon Post
text/html Subscribe
text/html Unsubscribe

[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.