[gnu.utils.bug] GAS statement ignoreds on ISI

ulmo@ssyx.ucsc.edu (Brad Allen) (05/24/89)

ISI BSD4.3 68020 w/68881

gas1.33
gcc1.35
g++1.35.0
libg++1.35.0

This is just a general itinerary of my simple efforts so far.
It is probably fairly inaccurate.

First, I think neither GAS nor GCC would compile with ISI's
cc with -O turned on.  I used cc -20 for all cc compilations.
When I finally figured this out, GAS stopped giving stange
".... -- ignored" warnings while compiling GCC.
GCC would finally build right.
(I ought to try cc again with gas for stage1 of GCC, perhaps I forgot
to jury-rig cc to use gas.  Humm.)

I never used -g anywhere.  Tomorrow I will try throwing -g on
for all gcc compiles (someone mentioned gcc without -g didn't work).

GCC seemed to compile OK (stage2 and stage3 compared as equal).
A few small utilities compiled under gcc fine with -O.
Notably the GNU utilities did not compile fine, noting some
missing functions I believe.

Emacs compiled comparatively painlessly.  I used gcc -O as usual,
with an exception:  on about three of the source files,
I think it was gas which ran into the same "...: ignored" warning
again, so I did a "cc -20 ...." by hand for those few.
I learned Emacs last night, it worked wonderfully.

G++ would hardly budge.  There were more than a few source files
which barfed with the same gas errors, even though it made it
most of the way to the end (with occasional hand-done cc -20 -c's
to get it there).  This was with the same prettymuch-working gcc.

The one time I did get G++ to accidentally seem to think it was
compiled right and install, libg++ couldn't compile complaining about
about 7 undefined floating point functions.  Before that, I got a few
signals while in gas for compiling various stuff.  I forget why.
I forget how I got around that.

I'll note excerpts from the complete set of scripts tomorrow.
Tonight I'll show just a bit:
$ make CC=stage1/gcc CFLAGS="-O -Bstage1/"
stage1/gcc -O -Bstage1/ -I./config  -DSTANDARD_STARTFILE_PREFIX=\"/usr/ulmo/gnu/lib/\"  -DSTANDARD_EXEC_PREFIX=\"/usr/ulmo/gnu/lib/gcc-\" -c gcc.c
stage1/gcc -c -O -Bstage1/  -I./config version.c
stage1/gcc -c -O -Bstage1/  -I./config obstack.c
stage1/gcc -O -Bstage1/  -o gccnew gcc.o version.o obstack.o   
mv gccnew gcc
stage1/gcc -c -O -Bstage1/  -I./config c-parse.tab.c
/tmp/cc003372.s:10589:"instruction/operands mismatch" -- Statement 'fmoved fp0,sp@-' ignored
stage1/gcc -c -O -Bstage1/  -I./config c-decl.c
stage1/gcc -c -O -Bstage1/  -I./config c-typeck.c
stage1/gcc -c -O -Bstage1/  -I./config c-convert.c
stage1/gcc -c -O -Bstage1/  -I./config toplev.c
stage1/gcc -c -O -Bstage1/  -I./config tree.c
/tmp/cc003395.s:1211:"instruction/operands mismatch" -- Statement 'fmovem #0x4,sp@-' ignored
/tmp/cc003395.s:1222:"instruction/operands mismatch" -- Statement 'fmovel d0,fp0' ignored
/tmp/cc003395.s:1223:"instruction/operands mismatch" -- Statement 'fmuld #0r4294967296,fp0' ignored

Etc.  I looked at the source in the ccXXXXXX.s's, and the Statements
are quoted correctly from the specified lines.  Too bad I don't know 68020.

As I said, this problem mostly went away once I compiled GAS without cc's -O.
GCC even seemed to make correctly.  But apparently not well enough for
tree.c in emacs, g++, etc...