🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.bug
Article #2881

Noises compiling gcc 1.37 on config.gcc decstation

#2881
From: David Keppel
Date: Thu, 22 Feb 1990 02:02
76 lines
2663 bytes
Machine: DECstation 3100
Config: config.gcc decstation
Gcc: gcc 1.37 (prep.ai.mit.edu, 20 Feb., 1990)

Four things:

*1

Building gcc using with the native (/bin/cc) comnpiler.

ccom: Warning: insn-emit.c, line 729: statement not reached
        operand0 = emit_operand[0];
      ----------------------------^

The fragment of code looks like

	goto _done;
	operand0 = emit_operand[0];
	...
      _done:

It isn't obvious to me (a) why this is done or (b) why it isn't
commented.  (Actually, `goto _done' is a macro DONE.)


*2

Still building with the native compiler...

ccom: Warning: insn-emit.c, line 749: zero or negative subscript
        rtx emit_operand[0];
      --------------------^

It seems likely to me that a bunch of compilers are going to gag on
this zero-based declaration.  I haven't looked, but it isn't obvious
to me that the variable is used in the function.  In any case, I
suggest that the macro ZERO should be used.  It can expand to zero
on most platforms, but can expand to one if the compiler gags on
zero-based arrays (as, indeed, a number of compilers do gag on it).


*3

On the `make' after `make stage1', the CFLAGS line includes the `-g'
flag.  The decstation port `cc1' gags and returns error code 1.  The
documentation for the decstation should say something.  I suggest that
`gcc' should complain but should not exit with an error status, since
eventually `gas' and `gdb' will be ported and we will be able to use
gcc with the `-g' flag.


*4

Nearly every gcc file compiled with stage2 differs from the
stage1-compiled file, even ignoring the first bytes.

$ for file in *.o; do
> echo $file
> tail +10 $file > foo1
> tail +10 stage2/$file > foo2
> cmp foo1 foo2
> done
c-convert.o
foo1 foo2 differ: char 4837, line 29
c-decl.o
foo1 foo2 differ: char 52281, line 113

[... and so on. ]

I tried doing the following: compile each .c using stage1/gcc -S and
using stage2/gcc -S, then compare the assembly files.  In each case,
the assembly was the same.  Unless I screwed up, it is the assembler,
not gcc, that is causing the difference.


	;-D on  ( Brought to you by the makers of... )  Pardo
Technical Details
Message-ID: <9002220202.AA10288@sturgeon.cs.washington.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!STURGEON.CS.WASHINGTON.EDU!bryan_a_pardo

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!STURGEON.CS.WASHINGTON.EDU!bryan_a_pardo
From: pardo@STURGEON.CS.WASHINGTON.EDU (David Keppel)
Newsgroups: gnu.gcc.bug
Subject: Noises compiling gcc 1.37 on config.gcc decstation
Message-ID: <9002220202.AA10288@sturgeon.cs.washington.edu>
Date: 22 Feb 90 02:02:56 GMT
Sender: daemon@tut.cis.ohio-state.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 76