smith@darwin (Steven Smith) (12/13/89)
Can anyone help me? I am trying to compile X11 (from expo.lcs.mit.edu) on a sparcstation1. I have managed to compile it on a Sun3/60, 3/50, and a Mac II running AU/X, but I have had no luck on a Sun4/60. The "make World" seems to be fine, but when doing a "make install", the C compiler dumps core in the cfbbitblt.c file. The actual error is: ... making ddx/mfb making ddx/cfb rm -f cfbbitblt.o cc -c -O -I. -I../../include -I../../.././X11 -I../mfb -DINCLUDE_ALLOCA_H cfbbi tblt.c cc: Fatal error in iropt: Illegal instruction (core dumped) *** Error code 1 Does anyone have any insite into this compiler error? Thanks in advance Steve Smith University of Illinois, Microbiology smith@origin.life.uiuc.edu
keith@EXPO.LCS.MIT.EDU (Keith Packard) (12/13/89)
> I have had no luck on a Sun4/60. The "make World" > seems to be fine, but when doing a "make install", the C compiler dumps > core in the cfbbitblt.c file. > > cc -c -O -I. -I../../include -I../../.././X11 -I../mfb -DINCLUDE_ALLOCA_H > cfbbitblt.c > cc: Fatal error in iropt: Illegal instruction (core dumped) R3 cfbbitblt.c was particularily nasty to compilers. It expands a several-hundred line cpp macro 16 times; which breaks many optimizers (including the SPARC). My PMAX spent several hours compiling this one file, as it didn't have the requested 40 meg of physical memory. Turn off the optimizer for this one file and it should work fine; e.g. $ cd server/ddx/cfb $ make CDEBUGFLAGS= cfbbitblt.o $ cd ../.. $ make should successfully build the server. R4 won't have these problems (and will be "just a bit" faster). Keith Packard MIT X Consortium
erc@pai.UUCP (Eric Johnson) (12/14/89)
In article <1989Dec12.163847.7802@ux1.cso.uiuc.edu>, smith@darwin (Steven Smith) writes: > Can anyone help me? I am trying to compile X11 (from expo.lcs.mit.edu) on > ... The "make World" > seems to be fine, but when doing a "make install", the C compiler dumps > core in the cfbbitblt.c file. The actual error is: > ... > making ddx/mfb > making ddx/cfb > rm -f cfbbitblt.o > cc -c -O -I. -I../../include -I../../.././X11 -I../mfb -DINCLUDE_ALLOCA_H cfbbi > tblt.c > cc: Fatal error in iropt: Illegal instruction (core dumped) > *** Error code 1 > > Does anyone have any insite into this compiler error? > > Steve Smith > University of Illinois, Microbiology > smith@origin.life.uiuc.edu iropt is the C compiler optimizer. I had the same problem. I bet you also used the default SPARCStation configuration (UNIX, or SunOS, came pre-installed on my SPARC). The file cfbbitblt.c is nasty to C compilers, and the problem here is a lack of swap space, I believe (at least that's the general impression from talking to Sun support). What I did was compile that particular file by hand, using the -O1 optimization level, rather than -O optimization. This seemed to work fine. I still used -O on the rest of the X sources. Somehow it all worked, since I writing this using a SPARCStation-1 running MIT X11R3, and rlogin'ed to our machine that handles Usenet news. Hope this helps, -Eric -- Eric F. Johnson, Boulware Technologies, Inc. 415 W. Travelers Trail, Burnsville, MN 55337 USA. Phone: +1 612-894-0313. erc@pai.mn.org - or - bungia!pai!erc (We have a very dumb mailer, so please send a bang-!-style return address.)
mhorstm@swbatl.UUCP (3417) (12/14/89)
In article <1989Dec12.163847.7802@ux1.cso.uiuc.edu> smith@darwin (Steven Smith) writes: >Can anyone help me? I am trying to compile X11 (from expo.lcs.mit.edu) on >a sparcstation1. I have managed to compile it on a Sun3/60, 3/50, and a >Mac II running AU/X, but I have had no luck on a Sun4/60. The "make World" >seems to be fine, but when doing a "make install", the C compiler dumps >core in the cfbbitblt.c file. The actual error is: > >... >making ddx/mfb >making ddx/cfb >rm -f cfbbitblt.o >cc -c -O -I. -I../../include -I../../.././X11 -I../mfb -DINCLUDE_ALLOCA_H cfbbi >tblt.c >cc: Fatal error in iropt: Illegal instruction (core dumped) >*** Error code 1 > >Does anyone have any insite into this compiler error? > >Thanks in advance > >Steve Smith >University of Illinois, Microbiology >smith@origin.life.uiuc.edu I'm having the same problem. I found a patch for the cfb directory on the 'official' X11R3 update tape, but it didn't help. Can someone out there help? /------------------------------------------------------------------------------\ Mark Horstman PHONE: (314) 235-3417 Information Systems - Southwestern Bell Telephone FAX: (314) 235-4610 One Bell Center, Room 24-V-03, St. Louis, MO 63101-3099
pcg@rupert.cs.aber.ac.uk (Piercarlo Grandi) (12/19/89)
In article <8912121932.AA25369@xenon.lcs.mit.edu> keith@EXPO.LCS.MIT.EDU (Keith Packard) writes:
R3 cfbbitblt.c was particularily nasty to compilers. It expands
a several-hundred line cpp macro 16 times; which breaks many optimizers
(including the SPARC). My PMAX spent several hours compiling this one
file, as it didn't have the requested 40 meg of physical memory.
Would not it be easier to turn the several hundred line macro
into a procedure, or, if there is a hot path in the macro, maybe
a macro that only contains it and the rest packaged off in a function?
There has been a lot of discussion in comp.lang.c/c++ on inlining, and
I wonder if there was any real reason for the extensive use of very large
macros in the server. Any significant speedup?
R4 won't have these problems (and will be "just a bit" faster).
What did you do to it? Offlined the macros, offlined them selectively, ????
--
Piercarlo "Peter" Grandi | ARPA: pcg%cs.aber.ac.uk@nsfnet-relay.ac.uk
Dept of CS, UCW Aberystwyth | UUCP: ...!mcvax!ukc!aber-cs!pcg
Penglais, Aberystwyth SY23 3BZ, UK | INET: pcg@cs.aber.ac.uk