Mainline bootstrap failure on Tru64 UNIX V5.1
Rainer Orth
ro@TechFak.Uni-Bielefeld.DE
Tue Jan 21 19:13:00 GMT 2003
Zack,
current mainline doesn't bootstrap on alpha-dec-osf5.1 (HP Tru64 UNIX V5.1):
It fails trying to compile crtfastmath.c (the first invokation of the newly
built xgcc) since mips-tfile is invoked incorrectly:
/vol/gcc/obj/gcc-3.4-20030120/5.1-gcc/gcc/xgcc -B/vol/gcc/obj/gcc-3.4-20030120/5.1-gcc/gcc/ -B/vol/gcc/share/alpha-dec-osf5.1/bin/ -B/vol/gcc/share/alpha-dec-osf5.1/lib/ -isystem /vol/gcc/share/alpha-dec-osf5.1/include -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -fPIC -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -c -o crtfastmath.o /vol/gnu/src/gcc/gcc-dist/gcc/config/alpha/crtfastmath.c
/vol/gnu/src/gcc/gcc-dist/gcc/config/alpha/crtfastmath.c:47: warning: no previous prototype for `_GLOBAL__I__vol_gnu_src_gcc_gcc_dist_gcc_config_alpha_crtfastmath.cTGld6a'
Calling Sequence:
mips-tfile [-d <num>] [-v] [-i <o-in-file>] -o <o-out-file> <s-file> (or)
mips-tfile [-d <num>] [-v] [-I <o-in-file>] -o <o-out-file> <s-file> (or)
mips-tfile [-d <num>] [-v] <s-file> <o-in-file> <o-out-file>
Debug levels are:
1 General debug + trace functions/blocks.
2 Debug level 1 + trace externals.
3 Debug level 2 + trace all symbols.
4 Debug level 3 + trace memory allocations.
make[2]: *** [crtfastmath.o] Error 1
Invoking xgcc manually with an empty test.c shows the following:
% ./xgcc -B./ -v -c test.c
[...]
as -g -oldas -c -nocpp -O0 -o test.o /tmp//ccIiVBip.s
./mips-tfile -v -o test.o
whereas xgcc as of 20021215 (immediately before the bib merge) invokes
mips-tfile as follows:
as -g -oldas -c -nocpp -O0 -o test.o /tmp//ccQz9I9S.s
./mips-tfile -v -o test.o /tmp//ccQz9I9S.s
i.e. it adds the assembler source file to the invokation. Binary search
revealed that the bib merge broke this. Comparing the specs file between
those points in time (20021217, broken, and 20021215, ok) gives only one
difference:
*invoke_as:
-%{!S:-o %{|!pipe:%g.s} |
- as %(asm_options) %{!pipe:%g.s} %A }
+%{!S:-o %|.s |
+ as %(asm_options) %m.s %A }
So I supposed that your patch that introduced that change is the culprit:
2002-09-19 Zack Weinberg <zack@codesourcery.com>
* gcc.c (use_pipes): New flag.
(process_command): Set it. Adjust check for -pipe conflicting
with -time or -save-temps.
(do_spec_1): Use it. Handle %|SUFFIX, %mSUFFIX, and
%<SWITCH. Drop %| (without a SUFFIX).
(handle_braces): Drop %{<SWITCH}, %{^SWITCH}, %{|...}.
(give_switch): Third argument eliminated.
(invoke_as, @assembler_with_cpp spec): Use %|.s or %m.s
depending on AS_NEEDS_DASH_FOR_PIPED_INPUT.
(specs documentation comment): Update.
but applying it to a 20021215 tree still bootstraps. Anyway, many
specs-related changes on bib are from you, so this might be the effect of
one of those.
Comments, suggestions?
Rainer
-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University
More information about the Gcc-bugs
mailing list