init fails w/ new build of gcc & glibc

Dr. Craig Hollabaugh craig at hollabaugh.com
Sat Aug 18 08:54:00 EST 2001


At 05:22 PM 8/17/2001 -0500, Mark Hatle wrote:
>> Mark,
>>
>> You mentioned these two exclusive ABIs a couple days ago. If you want to compile the
>> toolchain and the kernel correctly to insure run-time compatibility (in my case for 8xx),
>> would you do this
>>
>> for kernel fp emulation
>> compile kernel with CONFIG_MATH_EMULATION=y, (do you use -msoft-float while compiling
>> kernel?)
>> then compile the toolchain without -msoft-float
>
>Use the kernel parameters as they stand, I wouldn't mess with them....
>(floating point is not supposed to happen in the kernel anyway, and when
>it does it's almost always assembly that is trapped anyway.)
>
>> or
>>
>> for soft-floating point - no kernel emulation
>> compile kernel CONFIG_MATH_EMULATION is not set (do you use -msoft-float while compiling kernel?)
>> then compile the toolchain with -msoft-float
>
>Basically.. One thing to keep in mind on the 8xx (due to cache line
>size) it'll never truely be compatable with the rest of the PPC world.
>But on a processor like the 405 it "can be" compatable using the
>CONFIG_MATH_EMULATION.  The catch is that you have a lot more overhead
>doing emulation.... (The emulation itself is pretty fast, certainly no
>slower then the software code invoked in -msoft-float..)  However, you
>have much more context switching over head and possible cache
>invalidation.  Also, your software could be using floating point
>registers w/o you expliciting using float's or double's due to gcc
>optimizations to argument passing.  All in all you will have a penalty
>for using hard floating point on a soft-floating point architecture.
>
>This is the reason that MontaVista has chosen to go the route of
>soft-float...





To summarize for me (and others), "leave kernel parameters as they stand" means

CONFIG_MATH_EMULATION=y and compile with -msoft-float

"MontaVista has chosen to go the route of soft-float..." means that MontaVista's tools are compiled with -msoft-float and --without-fp. I should compile my apps and toolchain (or use MV's) the same way.


** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/





More information about the Linuxppc-embedded mailing list