This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: m68k bootstrapping broken
On Wed, Jan 14, 2004 at 05:14:05PM +0100, Andreas Schwab wrote:
> Gunther Nikl <gni@gecko.de> writes:
>
> > IMHO, if there is a bug with CC handling it _should_ also be visible
> > with a cross-compiler, shouldn't it? If GCC(cc1) generates wrong code
> > then there must be a change in the cc1 executable (besides the patch
> > place!). Maybe I am wrong about it but the CC problem I ran into
> > was observable with a cross-compiler and the generated code after
> > the fix was different compared to the code before the fix. That doesn't
> > seem to be the case with the output_move_const_into_data_reg() patch.
>
> What did you test exactly?
[First, I noticed that it was stated the bug does only show up on a native
bootstrap. However, you also stated you had a miscompiled compiler created
by a ppc->m68k cross-compiler.]
I used a checkout from 12.1.2004. I built a i386->m68k cross compiler
for m68k-amigaos and then used this cross-compiler to built a native
compiler for m68k-amigaos. Then I installed your patch to
m68k.c/output_move_const_into_data_reg and created a new cross-compiler.
This cross-compiler was then used to compile a new native compiler.
Then I compared the objects in gcc/ for the native compiler versions
created by the unpatched and patched cross-compilers. There was no
difference except in m68k.o/output_move_const_into_data_reg (because
of your patch). IMHO, there _should_ be differences in other objects if
your patch would really fix a miscompilation. If there is no difference
then your patch doesn't have any effect, does it?
Maybe I am totally off-track with my reasoning.
Gunther