[comp.windows.x] X11R3 problems with GCC1.35

bert@opusc.CS.SCAROLINA.EDU (Bert Still) (06/02/89)

	I compiled the X11R3 (all 9 patches, and Purdue 2++ speedups)
with GCC1.35 using -g -O -fwritable-strings -fpcc-struct-return
-fcombine-regs on my Sun 4/260, running Sun Sys4-3.2 (OS3.2).  I got
binaries that were **much** larger than the ones produced by Sun's
cc -O.  
	Below I have listed the binaries taken from /usr/bin/X11
after doing ``make World; make install''.  the numbers inside of
parentheses are the sizes taken from using Sun's compiler.

total 101991 (17367)
   1    (1) X		3496  (312) x10tox11	3496  (400) xlogo
2864  (936) Xsun	3624  (416) xbiff	1536  (192) xlsfonts
  56   (48) atobm	2016  (264) xcalc	 976  (160) xlswins
 136   (88) bdftosnf	 656  (656) xchess	1832  (216) xmag
2032  (240) bitmap	4640  (528) xclipboard	5336  (608) xman
 120   (72) bmtoa	3720  (448) xclock	 464  (464) xmandel
  24   (24) constype	4040  (448) xcutsel	5568  (648) xmh
1264  (192) ico		3880  (448) xdm		1168  (192) xmodmap
  48   (48) kbd_mode	   3    (3) xdpr	 184  (144) xpr
1352  (168) maze	 864  (144) xdpyinfo	1680  (208) xprop
   1    (1) mkXsunfonts	1328 (1328) xdvi	1464  (192) xpseudoroot
  88   (56) mkfontdir	4936  (568) xedit	 544  (544) xqix
 984  (160) muncher	1128  (168) xev		 896  (152) xrdb
1008  (144) plaid	3584  (448) xeyes	 992  (152) xrefresh
1712  (232) puzzle	2008  (224) xfd		1224  (152) xset
 112   (96) resize	 504  (504) xgif	1368  (176) xsetroot
  96   (56) showsnf	 952  (144) xhost	5384  (616) xterm
   2    (2) startx	 840  (144) xinit	1520  (192) xwd
 320  (320) twm		1200  (176) xkill	1504  (192) xwininfo
3296  (280) uwm		3584  (432) xload	1728  (192) xwud

	Needless to say, I am confused/disappointed... I was
expecting the reverse situation given the responses I had seen
from various people about GCC1.34 and X11R3.
	I can also report two bugs with GCC1.35 that I noticed in
the process of doing the compiles.  If I compile the ``rgb'' program
with gcc (same options as above), and the run ``rgb rgb < rgb.txt''
as in the Makefile, I get a core dump (Segmentation fault).  Invoking
``dbx'' gives:
	% dbx a.out core
	Reading symbolic information...
	Read 343 symbols
	(dbx) where
	calchash() at 0x35c0
	store() at 0x2948
	main(), line 110 in "rgb.c"
	(dbx) list
	  110           if (store (key, content)) {
	  111               fprintf (stderr, "store of %s failed\n", name);
	  112               fflush (stderr);
	  113           }
	  114       }
	  115   }
	(dbx) quit
I am looking into this, but do not yet have any real guesses...

	The second bug is more straightforward. ``gcc-cc1'' dumps
core when gcc is invoked on certain files from X11R3.  For example,
	% gcc -g -O -fwritable-strings  -fpcc-struct-return \
		-fstrength-reduce -c -I. -I../../. -I../.././X11 \
		 -DTCPCONN -DUNIXCONN XStrKeysym.c
	gcc: Program cc1 got fatal signal 4.
	% dbx gcc-cc1 core
	Reading symbolic information...
	Read 43339 symbols
	(dbx) where
	abort() at 0x95908
	insn_extract(), line 1372 in "insn-extract.c"
	regclass(), line 402 in "regclass.c"
	rest_of_compilation(), line 1437 in "toplev.c"
	finish_function(), line 3647 in "c-decl.c"
	yyparse(), line 249 in "bison.simple"
	compile_file(), line 1009 in "toplev.c"
	main(), line 1795 in "toplev.c"
	(dbx) list
	 1372     if (INSN_CODE (insn) == -1) abort ();
	 1373     (*insn_extract_fn[INSN_CODE (insn)]) (PATTERN (insn));
	 1374   }
	(dbx) quit
Again, if I get some time, I may try to figure out what happened here.
Does anyone who have any ideas whether this will happen under SunOS4.0.1?
We are planning a migration here shortly, but that may yet be a few weeks
off...

	Comments/Suggestions/Ideas/Sympathy solicited... :-)  As always,
thanks in advance (aren't you so glad I didn't get cute and type
aTdHvAaNnKcSe...?)

					bert@cs.scarolina.edu

"Don't even try the (R)eply command... most mailers seem to route my
e-mail through the Twilight Zone..."

-- 
Domain:  bert%opus@cs.scarolina.edu   #####   BITNET:  T410119@UNIVSCVM
LarynxNet: Bert Still
AcadNet: Computer Services Division, University Of South Carolina

barry@confusion.ADS.COM (Barry Lustig) (06/03/89)

In article <195@opusc.CS.SCAROLINA.EDU> bert@cs.scarolina.edu (Bert Still) writes:
	
		I compiled the X11R3 (all 9 patches, and Purdue 2++ speedups)
	with GCC1.35 using -g -O -fwritable-strings -fpcc-struct-return
	-fcombine-regs on my Sun 4/260, running Sun Sys4-3.2 (OS3.2).  I got
	binaries that were **much** larger than the ones produced by Sun's
	cc -O.  
	
	...
	
	total 101991 (17367)
	   1    (1) X		3496  (312) x10tox11	3496  (400) xlogo
	2864  (936) Xsun	3624  (416) xbiff	1536  (192) xlsfonts
	  56   (48) atobm	2016  (264) xcalc	 976  (160) xlswins

	....

When you compile a file with the "-g" flag turned on, the compiler
produces symbol table information for the binary.  Try running the Sun
C compiler with the "-g" flag turned on or, try running gcc with "-g"
turned off.


barry