On Tuesday, February 26, 2002, at 12:10 AM, Daniel Jacobowitz wrote:
On Tue, Feb 26, 2002 at 06:02:37AM +0100, Ralf Baechle wrote:
On Mon, Feb 25, 2002 at 11:47:44PM -0500, Jay Carlson wrote:
Ralf is right that the kernel emulator is the supported route. But if you're willing to go to the trouble of building everything from scratch, this does work.
It's really a major pain. Softfp isn't defined in the ABI which assumes an FPU is available. As the result there is no provision for mixing softfp and fp-less code.
Something for the binutils to-do list - ld should make mixing hard-fp and soft-fp binaries impossible.
Or we could see if it is possible to define the ABIs in such a way that they can call each other... I don't immediately see a problem. The only code that will clobber FP registers is FP code.
Oh, they can intercall without any error until you call sin(1.0), at which point one side's calling convention places 1.0 in integer registers and the other places it in fp registers. Lots of fun to debug this one, especially once you have a kernel emulator that won't SIGILL for the hardfp ops :-) Seriously, this was a common screwup in the Agenda world until the snow specs file.
Jay