Subject: Re: CATS/EBSA285 config (Was: Possible bug in arm32 strongarm
To: David Brownlee <abs@netbsd.org>
From: Richard Earnshaw <rearnsha@arm.com>
List: port-arm32
Date: 10/31/2000 10:01:28
> 	Does FL_CO_PROC make any effective difference apart from
> 	the floating point case?

No, and even there it only affects the scheduling of floating point 
instructions (if there is no co-processor interface we assume that all fp 
instructions will be emulated, so we try to group them together rather 
than trying to split them up since the emulator can handle this more 
efficiently).

> 	IIRC arm32 uses a softfloat library already, but I didn't think
> 	that precluded the use of floating point hardware (with the
> 	addition of an alternative libm).
> 
> 	Given the increasing availability of arm hardwith with floating
> 	point does it make sense to go the i386 route of a default libm
> 	with softfloat and an alternative hardfloat library used if
> 	sysctl machdep.fpu_present is true?
> 

Yes and no.  The problem is that the soft-float ABI has a different 
returning convention from the hard-float ABI, so you can't call cleanly 
from one to the other.  It might be possible to hack the compiler to 
provide a mode where it returned results in both forms (f0 and r0(/r1)), 
but I haven't had time to do this, and it would be slightly less efficient.

R.