This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [3.3 branch] IA64 bootstrap failure
On Tue, Jul 08, 2003 at 04:45:57PM +0200, Andreas Schwab wrote:
> "H. J. Lu" <hjl@lucon.org> writes:
>
> |> On Tue, Jul 08, 2003 at 04:10:33PM +0200, Andreas Schwab wrote:
> |> > Eric Botcazou <ebotcazou@libertysurf.fr> writes:
> |> >
> |> > |> > @@ -2054,10 +2054,10 @@
> |> > |> > 2a50: 0b 70 00 1e 18 10 [MMI] ld8 r14=[r15];;
> |> > |> > 2a56: 70 00 38 0c 72 00 cmp.eq p7,p6=0,r14
> |> > |> > 2a5c: 00 00 04 00 nop.i 0x0;;
> |> > |> > - 2a60: dc 00 20 40 98 11 [MFB] (p06) st8 [r32]=r8
> |> > |> > + 2a60: fc 00 20 1e 98 11 [MFB] (p07) st8 [r15]=r8
> |> > |> > 2a66: 00 00 00 02 00 00 nop.f 0x0
> |> > |> > 2a6c: 00 00 00 20 nop.b 0x0
> |> > |> > - 2a70: e0 00 20 1e 98 11 [MII] (p07) st8 [r15]=r8
> |> > |> > + 2a70: c0 00 20 40 98 11 [MII] (p06) st8 [r32]=r8
> |> > |> > 2a76: f0 c0 22 00 42 00 adds r15=88,r8
> |> > |> > 2a7c: 04 40 00 84 mov r32=r8
> |> > |> > 2a80: 0a 70 00 46 18 10 [MMI] ld8 r14=[r35];;
> |> > |>
> |> > |> It bears some ressemblance with PR optimization/11320, where the machine
> |> > |> dependent reorg pass also swaps two insns.
> |> >
> |> > Could be, but then I would have expected that the stage1 compiler
> |> > generates the same code. I'd rather think this is similar to the problem
> |> > that lead to the replacement of PWD with PWD_COMMAND.
> |> >
> |>
> |> Yes, it is true. Can you duplicate the result on the command line?
>
> Running the same (stage2) compiler command on the command line produces
> output that is the same as the output from the stage1 compiler. So it
> indeed looks like it's dependent on the environment size.
>
Last time I tracked it down to PWD. You can start with the gcc
Makefile and add a special target to run the stage2 compiler on
java/decl.c to see if you can duplicate the result. If yes, narrow
down which part of the Makefile causes the problem.
BTW, I do see strange result with gcc 3.3 on ia64. I can't build glibc
from CVS with it. I got
gcc -shared -static-libgcc -Wl,-O1 -Wl,-z,defs
-Wl,-dynamic-linker=/lib/ld-linux-ia64.so.2
-B/export/build/gnu/glibc/build-ia64-linux/csu/
-Wl,--version-script=/export/build/gnu/glibc/build-ia64-linux/libc.map
-Wl,-soname=libc.so.6.1 -Wl,-z,combreloc -nostdlib -nostartfiles -e __libc_main
-u __register_frame -L/export/build/gnu/glibc/build-ia64-linux
-L/export/build/gnu/glibc/build-ia64-linux/math
-L/export/build/gnu/glibc/build-ia64-linux/elf
-L/export/build/gnu/glibc/build-ia64-linux/dlfcn
-L/export/build/gnu/glibc/build-ia64-linux/nss
-L/export/build/gnu/glibc/build-ia64-linux/nis
-L/export/build/gnu/glibc/build-ia64-linux/rt
-L/export/build/gnu/glibc/build-ia64-linux/resolv
-L/export/build/gnu/glibc/build-ia64-linux/crypt
-L/export/build/gnu/glibc/build-ia64-linux/linuxthreads
-Wl,-rpath-link=/export/build/gnu/glibc/build-ia64-linux:/export/build/gnu/glibc/build-ia64-linux/math:/export/build/gnu/glibc/build-ia64-linux/elf:/export/build/gnu/glibc/build-ia64-linux/dlfcn:/export/build/gnu/glibc/build-ia64-linux/nss:/export/build/gnu/glibc/build-ia64-linux/nis:/export/build/gnu/glibc/build-ia64-linux/rt:/export/build/gnu/glibc/build-ia64-linux/resolv:/export/build/gnu/glibc/build-ia64-linux/crypt:/export/build/gnu/glibc/build-ia64-linux/linuxthreads
-o /export/build/gnu/glibc/build-ia64-linux/libc.so -T
/export/build/gnu/glibc/build-ia64-linux/shlib.lds
/export/build/gnu/glibc/build-ia64-linux/csu/abi-note.o
/export/build/gnu/glibc/build-ia64-linux/elf/soinit.os
/export/build/gnu/glibc/build-ia64-linux/libc_pic.os
/export/build/gnu/glibc/build-ia64-linux/elf/sofini.os
/export/build/gnu/glibc/build-ia64-linux/elf/interp.os
/export/build/gnu/glibc/build-ia64-linux/elf/ld.so -lgcc -lgcc_eh
/export/build/gnu/glibc/build-ia64-linux/libc_pic.os(.text+0x2e442)/usr/local/bin/ld:
Dwarf Error: DW_FORM_strp offset (134217728) greater than or equal to
.debug_str size (15981886).
...
H.J.
H.J.