Internal compiler error in 4.1.0

Michael Miller michael.miller@prga.com
Thu Mar 9 01:25:00 GMT 2006


>
>-----Original Message-----
>From: crossgcc-owner@sourceware.org [mailto:crossgcc-owner@sourceware.org]
>On Behalf Of Dave Korn
>Sent: Wednesday, March 08, 2006 7:17 AM
>To: michael.miller@prga.com; crossgcc@sourceware.org
>Subject: RE: Internal compiler error in 4.1.0
>
>On 08 March 2006 12:50, michael.miller@prga.com wrote:
>
>> Trying to build crosstool 0.42 for arm xscale using gcc 4.1.0 and glibc
>> 2.3.6.  Base system is Mandriva 2006 on an Intel box with gcc 3.4.5:
>> 
>
>> /home/mike/crosstool/crosstool-0.42/build/arm-xscale-linux-gnu/gcc-4.1.0
>> -glibc-2.3.6/build-glibc/math/s_fmax.os
>> 
>> ../sysdeps/generic/s_fmax.c: In function `__fmax':
>> 
>> ../sysdeps/generic/s_fmax.c:28: internal compiler error: in
>> elim_reg_cond, at flow.c:3328
>> 
>> 
>> 
>> This is in the 2.3.5 math library portion.  Seems like this is similar
>> to an old bug PR15068 but I haven't looked into in detail.
>
>
>  It probably /is/ 15068 - doesn't crosstool use the 3.x-series base
>compiler
>to build 2.3-series glibc?  The matrix suggests so:-
>http://kegel.com/crosstool/crosstool-0.42/buildlogs/
>as does the fact that your build log shows the command line using '-isystem
>/home/mike/crosstool/crosstool-0.42/build/arm-xscale-linux-gnu/gcc-4.1.0
>-glibc-2.3.6/gcc-core-prefix/lib/gcc-lib/arm-xscale-linux-gnu/3.3.6/incl
>ude', which would indicate a 3.3.6 cross compiler being used.
>
>  The fix for 15068 was added to mainline shortly before it got renumbered
>as
>4.x series (they referred to it as 3.5.0 at the time) so you would expect
>to
>see it in your 4.1.0 compiler - once you've got past the problem of
>building
>glibc with an old buggy compiler to which the fix was not backported :-(
>You
>may be able to workaround it with optimisation options.
>
>    cheers,
>     DaveK

I updated the system gcc to 4.1.0, and then changed the gcc-core version to
4.1.0 in the .dat file.  That seems to have gotten me further, but I now
fail in linuxthreads/sysdeps/unix/sysv/linux/raise.c because __pthread_raise
is undefined.  It looks like the raise.c file has a #ifndef SHARED for a
weak external __pthread_raise.  The error is on line 32, which is a
__libc_maybe_call2() line.

Looking at Dan's logs, I see he actually had the same error with
elim_reg_cond that I originally had.  It looks like he only got glibc 2.3.2
to work on the xscale.

I guess I was just pushing the envelope to far on 4.1.0.

	Mike


--
For unsubscribe information see http://sourceware.org/lists.html#faq



More information about the crossgcc mailing list