This is the mail archive of the gcc-bugs@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]

Mainline bootstrap failure on Tru64 UNIX V5.1


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


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