This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: m68k bootstrapping broken


On Mon, Jan 05, 2004 at 05:06:11AM +0100, Bernardo Innocenti wrote:
> Richard Zidlicky wrote:
> >Hello,
> >
> >I am testing gcc-3.4-20031210. Bootstrapping fails with
> >this problems:
> >
> >stage1/xgcc -Bstage1/ -B/usr/m68k-rz-linux/bin/ -c   -g -O2 -DIN_GCC   -W 
> >-Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic 
> >-Wno-long-long -Wold-style-definition -Werror    -DHAVE_CONFIG_H    -I. 
> >-I. -I../../gcc-3.4-20031210/gcc -I../../gcc-3.4-20031210/gcc/. 
> >-I../../gcc-3.4-20031210/gcc/../include  \
> >        ../../gcc-3.4-20031210/gcc/config/m68k/m68k.c -o m68k.o
> >../../gcc-3.4-20031210/gcc/config/m68k/m68k.c: In function `output_andsi3':
> >
> >../../gcc-3.4-20031210/gcc/config/m68k/m68k.c:3285: warning: comparison 
> >between signed and unsigned
> >make[2]: *** [m68k.o] Error 1
> 
> Are you building with --enable-werror ?  

yes, thats what "make bootstrap" did for me. I had to override
the Makefile to proceed to the next error.

> This is a long-standing warning,
> I'll fix that.

thanks.


> >/sources/rz-rpm/BUILD/build-gcc-3.4.0/gcc/xgcc 
> >-B/sources/rz-rpm/BUILD/build-gcc-3.4.0/gcc/ -B/usr/m68k-rz-linux/bin/ 
> >-B/usr/m68k-rz-linux/lib/ -isystem /usr/m68k-rz-linux/include -isystem 
> >/usr/m68k-rz-linux/sys-include -O2  -DIN_GCC    -W -Wall -Wwrite-strings 
> >-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem 
> >./include -O3 -fomit-frame-pointer -m68020-60   -O2 -Dmc68060 
> >-D__mc68060__ -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED 
> >-I. -I -I../../gcc-3.4-20031210/gcc -I../../gcc-3.4-20031210/gcc/ 
> >-I../../gcc-3.4-20031210/gcc/../include   -DL_lshrdi3 -c 
> >../../gcc-3.4-20031210/gcc/libgcc2.c -o libgcc/./_lshrdi3.o
> >
> >../../gcc-3.4-20031210/gcc/libgcc2.c: In function `__lshrdi3':
> >../../gcc-3.4-20031210/gcc/libgcc2.c:361: error: unrecognizable insn:
> >(insn 35 34 36 3 ../../gcc-3.4-20031210/gcc/libgcc2.c:350 (set (reg:SI 39)
> >        (lshiftrt:SI (subreg:SI (reg/v:DI 35 [ uu ]) 0)
> >            (reg:SI 38))) -1 (insn_list 34 (nil))
> >    (expr_list:REG_DEAD (reg/v:DI 35 [ uu ])
> >        (expr_list:REG_DEAD (reg:SI 38)
> >            (expr_list:REG_EQUAL (lshiftrt:SI (subreg:SI (reg/v:DI 35 [ uu 
> >            ]) 0)
> >                    (reg:SI 38))
> >                (nil)))))
> >../../gcc-3.4-20031210/gcc/libgcc2.c:361: internal compiler error: in 
> >extract_insn, at recog.c:2061
> >
> >When I compile libgcc with the same flags with a crosscompiler this
> >doesnt happen so it appears the compiler has miscompiled itself
> >somewhere else.. anyone else seen this?
> 
> Never in m68k-*-uclinux nor m68k-*-elf.  Neither uses -m68020-60, but
> I still can't reproduce the problem compiling the same code with 
> m68k-uclinux-gcc:
> 
> % m68k-uclinux-gcc -O2  -DIN_GCC    -W -Wall -Wwrite-strings 
....
....

did you ever bootstrap the compiler on uclinux? It does not happen
here with a crosscompiler here either.. in fact it built libgcc
and libstdc without problems.
It does happen with stage1 bootstrapped gcc and with a gcc that was
itself cross compiled for m68k-linux.

Does gcc-3.4 use any new binutils features aggressively?

> Do you have any local patches that might be triggering this ICE?

I have the "--with-cpu" and global register variables patches,
both very low on the list of suspects.

> You may also want to retry with a more recent CVS snapshot,
> just in case.
> 
> 
> >The crosscompiler so far works pretty well btw, working 2.4 & 2.6
> >kernels and some 3.2 problems fixed.
> 
> That's good news.  As you might have noticed, the m68k backend has
> been tortured quite a lot lately :-)

yes, quite a facelift.

Richard


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]