lee@uhccux.uhcc.hawaii.edu (Greg Lee) (07/06/88)
These are diffs to use Gnu-cc (v 1.23) as a cross-compiler on an Ultrix 2.2 system to compile to assembler code for a 7300 system. My little 7300 with only 512k of ram takes a real long time to do compiles. Maybe others in that situation have access to a larger bsd system, and so this might be of use. I don't have a lot of experience with this yet -- it's worked ok for the few things I've tried. There may be some things wrong with the sdb support -- I don't know anything about sdb. (I've got v 3.51 with 3.50 development set.) This only works using the -S flag, since I don't have a cross-assembler or loader. Yet. If you decide to try this, you'd have to upload the 7300 include files to your big machine. I've got them in $HOME/include73. The diffs file ought to be edited to replace your $HOME path for mine (/uh5h/ling/lee). The 7300 files syms.h and storclass.h are also required for compiling the cross compiler (the #sccs directives need to be commented out). Before doing the make, you'll need to: ln -s config-3b1.h config.h ln -s tm-3b1.h tm.h ln -s output-m68k.c aux-output.c ln -s m68k.md md Greg Lee, lee@uhccux.uhcc.hawaii.edu #! /bin/sh # This is a shell archive. Remove anything before this line, then unpack # it by saving it into a file and typing "sh file". To overwrite existing # files, type "sh file -c". You can also feed this as standard input via # unshar, or by typing "sh <file", e.g.. If this archive is complete, you # will see the following message at the end: # "End of archive 1 (of 1)." # Contents: Changenotes Makefile x7300-diffs # Wrapped by lee@uhccux on Tue Jul 5 11:25:35 1988 PATH=/bin:/usr/bin:/usr/ucb ; export PATH if test -f 'Changenotes' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'Changenotes'\" else echo shar: Extracting \"'Changenotes'\" \(1046 characters\) sed "s/^X//" >'Changenotes' <<'END_OF_FILE' XChanges in gcc-1.23 to make 7300 cross-compiler for Utrix 2.2 X XTue Jul 5 08:59:50 GMT-10:00 1988, Greg Lee (lee@uhccux.uhcc.hawaii.edu) X Xnew Makefile X x is prefixed to names of programs: xgcc, xcpp, xcc1 X no gnulib, since only compilation done -- no assembly or linking X installation in my own home directory (/uh5h/ling/lee/...) X Xgcc.c X look for gnu-xcc1 etc. in my own lib X preprocessor symbol USG -> HOST_USG (which is not defined) X Xcccp.c X look for system include files in my directory: /uh5h/ling/lee/include73 X preprocessor symbol USG -> HOST_USG X Xtoplev.c X preprocessor symbol USG -> HOST_USG X Xtm-3b1.h X added: #define SDB_DEBUGGING_INFO X Xfinal.c X fixed mistaken call of ASM_OUTPUT_CASE_END X write "file" directive for sdb when go to new file (don't know X if this is right) X Xsdbout.c X write "file" directive in sdbout_init X remove initial "." from sdb directives X change "." to "~" in sdb names X include of syms.h made local (doesn't exist in ultrix) X Xstorclass.h Xsyms.h X imported from 7300, with initial #sccs directives commented out X END_OF_FILE if test 1046 -ne `wc -c <'Changenotes'`; then echo shar: \"'Changenotes'\" unpacked with wrong size! fi # end of 'Changenotes' fi if test -f 'Makefile' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'Makefile'\" else echo shar: Extracting \"'Makefile'\" \(11602 characters\) sed "s/^X//" >'Makefile' <<'END_OF_FILE' X# Makefile for GNU C compiler. X# Copyright (C) 1987 Free Software Foundation, Inc. X X#This file is part of GNU CC. X X#GNU CC is distributed in the hope that it will be useful, X#but WITHOUT ANY WARRANTY. No author or distributor X#accepts responsibility to anyone for the consequences of using it X#or for whether it serves any particular purpose or works at all, X#unless he says so in writing. Refer to the GNU CC General Public X#License for full details. X X#Everyone is granted permission to copy, modify and redistribute X#GNU CC, but only under the conditions described in the X#GNU CC General Public License. A copy of this license is X#supposed to have been given to you along with GNU CC so you X#can know your rights and responsibilities. It should be in a X#file named COPYING. Among other things, the copyright notice X#and this notice must be preserved on all copies. X X XCFLAGS = -g -O XCC = gcc X# OLDCC should not be the GNU C compiler. XOLDCC = cc XBISON = bison XAR = ar XSHELL = /bin/sh X Xbindir = /uh5h/ling/lee/bin Xlibdir = /uh5h/ling/lee/lib X X# These are what you would need on HPUX: X# CFLAGS = -Wc,-Ns2000 -Wc,-Ne700 X# -g is desirable in CFLAGS, but a compiler bug in HPUX version 5 X# bites whenever tree.def, rtl.def or machmode.def is included X# (ie., on every source file). X# CCLIBFLAGS = -Wc,-Ns2000 -Wc,-Ne700 X# For CCLIBFLAGS you might want to specify the switch that X# forces only 68000 instructions to be used. X X# If you are making gcc for the first time, and if you are compiling it with X# a non-gcc compiler, and if your system doesn't have a working alloca() in any X# of the standard libraries (as is true for HP/UX), then get alloca.c from X# GNU Emacs and un-comment the following line: X# CLIB = alloca.o X X# If your system has alloca() in /lib/libPW.a, un-comment the following line: X# CLIB= -lc -lPW X X# For System V based systems, you will also have to comment out the `ranlib' X# command below. X X# How to link with obstack XOBSTACK=obstack.o X# Dependency on obstack XOBSTACK1=obstack.o X XLIBS = $(OBSTACK) $(CLIB) XDIR = ../gcc X XOBJS = toplev.o version.o parse.tab.o tree.o print-tree.o \ X decl.o typecheck.o stor-layout.o fold-const.o \ X rtl.o expr.o stmt.o expmed.o explow.o optabs.o varasm.o \ X symout.o dbxout.o sdbout.o emit-rtl.o insn-emit.o \ X integrate.o jump.o cse.o loop.o flow.o stupid.o combine.o \ X regclass.o local-alloc.o global-alloc.o reload.o reload1.o insn-peep.o \ X final.o recog.o insn-recog.o insn-extract.o insn-output.o X X# Files to be copied away after each stage in building. XSTAGE_GCC=gcc XSTAGESTUFF = *.o insn-flags.h insn-config.h insn-codes.h \ X insn-output.c insn-recog.c insn-emit.c insn-extract.c insn-peep.c \ X genemit genoutput genrecog genextract genflags gencodes genconfig genpeep \ X cc1 cpp cccp X X# Members of gnulib. XLIBFUNCS = _eprintf \ X _umulsi3 _mulsi3 _udivsi3 _divsi3 _umodsi3 _modsi3 \ X _lshrsi3 _lshlsi3 _ashrsi3 _ashlsi3 \ X _divdf3 _muldf3 _negdf2 _adddf3 _subdf3 _cmpdf2 \ X _fixunsdfsi _fixunsdfdi _fixdfsi _fixdfdi \ X _floatsidf _floatdidf _truncdfsf2 _extendsfdf2 \ X _addsf3 _negsf2 _subsf3 _cmpsf2 _mulsf3 _divsf3 X X# If you want to recompile everything, just do rm *.o. X# CONFIG_H = config.h tm.h XCONFIG_H = XRTL_H = rtl.h rtl.def machmode.def XTREE_H = tree.h tree.def machmode.def X Xall: xgcc xcc1 xcpp X Xdoc: cpp.info internals X Xcompilations: ${OBJS} X Xxgcc: gcc.o version.o $(OBSTACK1) X $(CC) $(CFLAGS) -o gccnew gcc.o version.o $(LIBS) X# Go via `gccnew' to avoid `file busy' if $(CC) is `gcc'. X mv gccnew xgcc X Xgcc.o: gcc.c $(CONFIG_H) X $(CC) $(CFLAGS) -c -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc-\" gcc.c X Xxcc1: $(OBJS) $(OBSTACK1) X $(CC) $(CFLAGS) -o xcc1 $(OBJS) $(LIBS) X X#Library of arithmetic subroutines X# Don't compile this with gcc! Xgnulib: gnulib.c X -mkdir libtemp X cd libtemp; \ X rm -f gnulib; \ X for name in $(LIBFUNCS); \ X do \ X echo $${name}; \ X rm -f $${name}.c; \ X ln ../gnulib.c $${name}.c; \ X $(OLDCC) $(CCLIBFLAGS) -O -I.. -c -DL$${name} $${name}.c; \ X $(AR) qc gnulib $${name}.o; \ X done X mv libtemp/gnulib . X rm -rf libtemp X if [ -f /usr/bin/ranlib ] ; then ranlib gnulib ;fi X# On HPUX, if you are working with the GNU assembler and linker, X# the previous line must be replaced with X# No change is needed here if you are using the HPUX assembler and linker. X# mv gnulib gnulib-hp X# hpxt gnulib-hp gnulib X Xdecl.o : decl.c $(CONFIG_H) $(TREE_H) flags.h c-tree.h parse.h Xtypecheck.o : typecheck.c $(CONFIG_H) $(TREE_H) c-tree.h flags.h Xtree.o : tree.c $(CONFIG_H) $(TREE_H) Xprint-tree.o : print-tree.c $(CONFIG_H) $(TREE_H) Xstor-layout.o : stor-layout.c $(CONFIG_H) $(TREE_H) Xfold-const.o : fold-const.c $(CONFIG_H) $(TREE_H) Xtoplev.o : toplev.c $(CONFIG_H) $(TREE_H) flags.h X Xparse.tab.o : parse.tab.c $(CONFIG_H) $(TREE_H) parse.h c-tree.h flags.h X Xparse.tab.c : parse.y X $(BISON) -v parse.y X Xrtl.o : rtl.c $(CONFIG_H) $(RTL_H) X Xvarasm.o : varasm.c $(CONFIG_H) $(TREE_H) $(RTL_H) flags.h expr.h Xstmt.o : stmt.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h \ X insn-flags.h expr.h insn-config.h regs.h Xexpr.o : expr.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h \ X insn-flags.h insn-codes.h expr.h insn-config.h recog.h Xexpmed.o : expmed.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h \ X insn-flags.h insn-codes.h expr.h insn-config.h recog.h Xexplow.o : explow.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h expr.h Xoptabs.o : optabs.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h \ X insn-flags.h insn-codes.h expr.h insn-config.h recog.h Xsymout.o : symout.c $(CONFIG_H) $(TREE_H) $(RTL_H) symseg.h gdbfiles.h Xdbxout.o : dbxout.c $(CONFIG_H) $(TREE_H) $(RTL_H) Xsdbout.o : sdbout.c $(CONFIG_H) $(TREE_H) $(RTL_H) c-tree.h X Xemit-rtl.o : emit-rtl.c $(CONFIG_H) $(RTL_H) regs.h insn-config.h X Xintegrate.o : integrate.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h expr.h insn-flags.h X Xjump.o : jump.c $(CONFIG_H) $(RTL_H) flags.h regs.h Xstupid.o : stupid.c $(CONFIG_H) $(RTL_H) regs.h hard-reg-set.h X Xcse.o : cse.c $(CONFIG_H) $(RTL_H) insn-config.h regs.h hard-reg-set.h Xloop.o : loop.c $(CONFIG_H) $(RTL_H) insn-config.h regs.h recog.h Xflow.o : flow.c $(CONFIG_H) $(RTL_H) basic-block.h regs.h hard-reg-set.h Xcombine.o : combine.c $(CONFIG_H) $(RTL_H) flags.h \ X insn-config.h regs.h basic-block.h recog.h Xregclass.o : regclass.c $(CONFIG_H) $(RTL_H) flags.h regs.h \ X insn-config.h recog.h hard-reg-set.h Xlocal-alloc.o : local-alloc.c $(CONFIG_H) $(RTL_H) basic-block.h regs.h \ X insn-config.h recog.h hard-reg-set.h Xglobal-alloc.o : global-alloc.c $(CONFIG_H) $(RTL_H) flags.h \ X basic-block.h regs.h hard-reg-set.h insn-config.h X Xreload.o : reload.c $(CONFIG_H) $(RTL_H) \ X reload.h recog.h hard-reg-set.h insn-config.h regs.h Xreload1.o : reload1.c $(CONFIG_H) $(RTL_H) flags.h \ X reload.h regs.h hard-reg-set.h insn-config.h basic-block.h Xfinal.o : final.c $(CONFIG_H) $(RTL_H) regs.h recog.h conditions.h gdbfiles.h Xrecog.o : recog.c $(CONFIG_H) $(RTL_H) \ X regs.h recog.h hard-reg-set.h insn-config.h X X# Now the source files that are generated from the machine description. X X.PRECIOUS: insn-config.h insn-flags.h insn-codes.h \ X insn-emit.c insn-recog.c insn-extract.c insn-output.c insn-peep.c X Xinsn-config.h : md genconfig X ./genconfig md > tmp-insn-config.h X ./move-if-change tmp-insn-config.h insn-config.h X Xinsn-flags.h : md genflags X ./genflags md > tmp-insn-flags.h X ./move-if-change tmp-insn-flags.h insn-flags.h X Xinsn-codes.h : md gencodes X ./gencodes md > tmp-insn-codes.h X ./move-if-change tmp-insn-codes.h insn-codes.h X Xinsn-emit.o : insn-emit.c $(CONFIG_H) $(RTL_H) expr.h insn-config.h X $(CC) $(CFLAGS) -c insn-emit.c X Xinsn-emit.c : md genemit X ./genemit md > tmp-insn-emit.c X ./move-if-change tmp-insn-emit.c insn-emit.c X Xinsn-recog.o : insn-recog.c $(CONFIG_H) $(RTL_H) insn-config.h X $(CC) $(CFLAGS) -c insn-recog.c X Xinsn-recog.c : md genrecog X ./genrecog md > tmp-insn-recog.c X ./move-if-change tmp-insn-recog.c insn-recog.c X Xinsn-extract.o : insn-extract.c $(RTL_H) X $(CC) $(CFLAGS) -c insn-extract.c X Xinsn-extract.c : md genextract X ./genextract md > tmp-insn-extract.c X ./move-if-change tmp-insn-extract.c insn-extract.c X Xinsn-peep.o : insn-peep.c $(CONFIG_H) $(RTL_H) regs.h X $(CC) $(CFLAGS) -c insn-peep.c X Xinsn-peep.c : md genpeep X ./genpeep md > tmp-insn-peep.c X ./move-if-change tmp-insn-peep.c insn-peep.c X Xinsn-output.o : insn-output.c $(CONFIG_H) $(RTL_H) regs.h insn-config.h insn-flags.h conditions.h output.h aux-output.c X $(CC) $(CFLAGS) -c insn-output.c X Xinsn-output.c : md genoutput X ./genoutput md > tmp-insn-output.c X ./move-if-change tmp-insn-output.c insn-output.c X X# Now the programs that generate those files. X Xgenconfig : genconfig.o rtl.o $(OBSTACK1) X $(CC) $(CFLAGS) -o genconfig genconfig.o rtl.o $(LIBS) X Xgenconfig.o : genconfig.c $(RTL_H) X $(CC) $(CFLAGS) -c genconfig.c X Xgenflags : genflags.o rtl.o $(OBSTACK1) X $(CC) $(CFLAGS) -o genflags genflags.o rtl.o $(LIBS) X Xgenflags.o : genflags.c $(RTL_H) X $(CC) $(CFLAGS) -c genflags.c X Xgencodes : gencodes.o rtl.o $(OBSTACK1) X $(CC) $(CFLAGS) -o gencodes gencodes.o rtl.o $(LIBS) X Xgencodes.o : gencodes.c $(RTL_H) X $(CC) $(CFLAGS) -c gencodes.c X Xgenemit : genemit.o rtl.o $(OBSTACK1) X $(CC) $(CFLAGS) -o genemit genemit.o rtl.o $(LIBS) X Xgenemit.o : genemit.c $(RTL_H) X $(CC) $(CFLAGS) -c genemit.c X Xgenrecog : genrecog.o rtl.o $(OBSTACK1) X $(CC) $(CFLAGS) -o genrecog genrecog.o rtl.o $(LIBS) X Xgenrecog.o : genrecog.c $(RTL_H) X $(CC) $(CFLAGS) -c genrecog.c X Xgenextract : genextract.o rtl.o $(OBSTACK1) X $(CC) $(CFLAGS) -o genextract genextract.o rtl.o $(LIBS) X Xgenextract.o : genextract.c $(RTL_H) X $(CC) $(CFLAGS) -c genextract.c X Xgenpeep : genpeep.o rtl.o $(OBSTACK1) X $(CC) $(CFLAGS) -o genpeep genpeep.o rtl.o $(LIBS) X Xgenpeep.o : genpeep.c $(RTL_H) X $(CC) $(CFLAGS) -c genpeep.c X Xgenoutput : genoutput.o rtl.o $(OBSTACK1) X $(CC) $(CFLAGS) -o genoutput genoutput.o rtl.o $(LIBS) X Xgenoutput.o : genoutput.c $(RTL_H) X $(CC) $(CFLAGS) -c genoutput.c X X# Making the preprocessor Xxcpp: cccp X -rm -f xcpp X ln cccp xcpp Xcccp: cccp.o cexp.o version.o X $(CC) $(CFLAGS) -o cccp cccp.o cexp.o version.o $(CLIB) Xcexp.o: cexp.c Xcexp.c: cexp.y X $(BISON) cexp.y X mv cexp.tab.c cexp.c Xcccp.o: cccp.c X Xcpp.info: cpp.texinfo X makeinfo $< X Xinternals: internals.texinfo X makeinfo $< X X# gnulib is not deleted because deleting it would be inconvenient X# for most uses of this target. Xclean: X -rm -f $(STAGESTUFF) $(STAGE_GCC) X -rm -f *.s *.s[0-9] *.co *.greg *.lreg *.combine *.flow *.cse *.jump *.rtl *.tree *.loop X -rm -f core X X# Copy the files into directories where they will be run. Xinstall: all X install xcc1 $(libdir)/gcc-xcc1 X# install -c -m 755 gnulib $(libdir)/gcc-gnulib X# if [ -f /usr/bin/ranlib ] ; then ranlib $(libdir)/gcc-gnulib ;fi X install xcpp $(libdir)/gcc-xcpp X install xgcc $(bindir) X X# do make -f ../gcc/Makefile maketest DIR=../gcc X# in the intended test directory to make it a suitable test directory. Xmaketest: X ln -s $(DIR)/*.[chy] . X ln -s $(DIR)/*.def . X ln -s $(DIR)/*.md . X ln -s $(DIR)/.gdbinit . X -ln -s $(DIR)/bison.simple . X ln -s $(DIR)/gcc . X ln -s $(DIR)/move-if-change . X ln -s $(DIR)/Makefile test-Makefile X -rm tm.h aux-output.c X make -f test-Makefile clean X# You must create the necessary links tm.h, md and aux-output.c X X# Copy the object files from a particular stage into a subdirectory. Xstage1: force X -mkdir stage1 X mv $(STAGESTUFF) $(STAGE_GCC) stage1 X ln gnulib stage1 X Xstage2: force X -mkdir stage2 X mv $(STAGESTUFF) $(STAGE_GCC) stage2 X ln gnulib stage2 X Xstage3: force X -mkdir stage3 X mv $(STAGESTUFF) $(STAGE_GCC) stage3 X ln gnulib stage3 X X.PHONY: stage1 stage2 stage3 #In GNU Make, ignore whether `stage*' exists. Xforce: X XTAGS: force X etags *.y *.h *.c X.PHONY: TAGS END_OF_FILE if test 11602 -ne `wc -c <'Makefile'`; then echo shar: \"'Makefile'\" unpacked with wrong size! fi # end of 'Makefile' fi if test -f 'x7300-diffs' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'x7300-diffs'\" else echo shar: Extracting \"'x7300-diffs'\" \(18897 characters\) sed "s/^X//" >'x7300-diffs' <<'END_OF_FILE' X*** ../gcc-1.23/cccp.c Thu Jun 30 05:48:51 1988 X--- cccp.c Tue Jul 5 07:26:30 1988 X*************** X*** 167,173 X X int do_define (), do_line (), do_include (), do_undef (), do_error (), X do_pragma (), do_if (), do_xifdef (), do_else (), X! do_elif (), do_endif (), do_sccs (); X X struct hashnode *install (); X struct hashnode *lookup (); X X--- 167,173 ----- X X int do_define (), do_line (), do_include (), do_undef (), do_error (), X do_pragma (), do_if (), do_xifdef (), do_else (), X! do_elif (), do_endif (), do_sccs (), do_ident (); X X struct hashnode *install (); X struct hashnode *lookup (); X*************** X*** 204,210 X /* Current maximum length of directory names in the search path X for include files. (Altered as we get more of them.) */ X X! int max_include_len = sizeof("/usr/local/lib/gcc-include"); X X /* Nonzero means copy comments into the output file. */ X X X--- 204,210 ----- X /* Current maximum length of directory names in the search path X for include files. (Altered as we get more of them.) */ X X! int max_include_len = sizeof("/uh5h/ling/lee/include73/gcc-include"); X X /* Nonzero means copy comments into the output file. */ X X*************** X*** 309,315 X #ifndef VMS X #ifdef CPLUSPLUS X /* Pick up GNU C++ specific include files. */ X! { &include_defaults[1], "/usr/local/lib/g++-include" }, X /* Borrow AT&T C++ head files, if available. */ X { &include_defaults[2], "/usr/include/CC" }, X /* Use GNU CC specific header files. */ X X--- 309,315 ----- X #ifndef VMS X #ifdef CPLUSPLUS X /* Pick up GNU C++ specific include files. */ X! { &include_defaults[1], "/uh5h/ling/lee/include73/g++-include" }, X /* Borrow AT&T C++ head files, if available. */ X { &include_defaults[2], "/usr/include/CC" }, X /* Use GNU CC specific header files. */ X*************** X*** 313,319 X /* Borrow AT&T C++ head files, if available. */ X { &include_defaults[2], "/usr/include/CC" }, X /* Use GNU CC specific header files. */ X! { &include_defaults[3], "/usr/local/lib/gcc-include" }, X #else X { &include_defaults[1], "/usr/local/lib/gcc-include" }, X #endif X X--- 313,319 ----- X /* Borrow AT&T C++ head files, if available. */ X { &include_defaults[2], "/usr/include/CC" }, X /* Use GNU CC specific header files. */ X! { &include_defaults[3], "/uh5h/ling/lee/include73/gcc-include" }, X #else X { &include_defaults[1], "/uh5h/ling/lee/include73/gcc-include" }, X #endif X*************** X*** 315,321 X /* Use GNU CC specific header files. */ X { &include_defaults[3], "/usr/local/lib/gcc-include" }, X #else X! { &include_defaults[1], "/usr/local/lib/gcc-include" }, X #endif X { 0, "/usr/include" } X #else X X--- 315,321 ----- X /* Use GNU CC specific header files. */ X { &include_defaults[3], "/uh5h/ling/lee/include73/gcc-include" }, X #else X! { &include_defaults[1], "/uh5h/ling/lee/include73/gcc-include" }, X #endif X { 0, "/uh5h/ling/lee/include73" } X #else X*************** X*** 317,323 X #else X { &include_defaults[1], "/usr/local/lib/gcc-include" }, X #endif X! { 0, "/usr/include" } X #else X { &include_defaults[1], "GNU_CC_INCLUDE:" }, /* GNU includes */ X { &include_defaults[2], "SYS$SYSROOT:[SYSLIB.]" }, /* VAX-11 "C" includes */ X X--- 317,323 ----- X #else X { &include_defaults[1], "/uh5h/ling/lee/include73/gcc-include" }, X #endif X! { 0, "/uh5h/ling/lee/include73" } X #else X { &include_defaults[1], "GNU_CC_INCLUDE:" }, /* GNU includes */ X { &include_defaults[2], "SYS$SYSROOT:[SYSLIB.]" }, /* VAX-11 "C" includes */ X*** ../gcc-1.23/final.c Thu Jun 30 05:49:05 1988 X--- final.c Tue Jul 5 08:03:51 1988 X*************** X*** 523,529 X CODE_LABEL_NUMBER (XEXP (XVECEXP (body, 1, idx), 0)), X CODE_LABEL_NUMBER (XEXP (XEXP (body, 0), 0))); X #ifdef ASM_OUTPUT_CASE_END X! ASM_OUTPUT_CASE_END (file, CODE_LABEL_NUMBER (PREV_INSN (insn))); X #endif X break; X } X X--- 523,531 ----- X CODE_LABEL_NUMBER (XEXP (XVECEXP (body, 1, idx), 0)), X CODE_LABEL_NUMBER (XEXP (XEXP (body, 0), 0))); X #ifdef ASM_OUTPUT_CASE_END X! ASM_OUTPUT_CASE_END (file, X! CODE_LABEL_NUMBER (PREV_INSN (insn)), X! insn); X #endif X break; X } X*************** X*** 733,738 X #ifdef SDB_DEBUGGING_INFO X if (write_symbols == SDB_DEBUG) X { X #ifdef ASM_OUTPUT_SOURCE_LINE X ASM_OUTPUT_SOURCE_LINE (file, last_linenum); X #else X X--- 735,751 ----- X #ifdef SDB_DEBUGGING_INFO X if (write_symbols == SDB_DEBUG) X { X+ X+ if (filename && (lastfile == 0 || strcmp (filename, lastfile))) X+ { X+ #ifdef ASM_OUTPUT_SOURCE_FILENAME X+ ASM_OUTPUT_SOURCE_FILENAME (file, filename); X+ #else X+ fprintf (file, "\tfile\t\"%s\"\n", filename); X+ #endif X+ lastfile = filename; X+ } X+ X #ifdef ASM_OUTPUT_SOURCE_LINE X ASM_OUTPUT_SOURCE_LINE (file, last_linenum); X #else X*** ../gcc-1.23/gcc.c Thu Jun 30 05:49:09 1988 X--- gcc.c Mon Jul 4 06:10:26 1988 X*************** X*** 119,125 X #include "obstack.h" X #include "config.h" X X! #ifdef USG X #define R_OK 4 X #define W_OK 2 X #define X_OK 1 X X--- 119,125 ----- X #include "obstack.h" X #include "config.h" X X! #ifdef HOST_USG X #define R_OK 4 X #define W_OK 2 X #define X_OK 1 X*************** X*** 199,205 X struct compiler compilers[] = X { X {".c", X! "cpp %{nostdinc} %{C} %{v} %{D*} %{U*} %{I*} %{M*} %{T} \ X -undef -D__GNU__ -D__GNUC__ %{ansi:-T -$ -D__STRICT_ANSI__} %{!ansi:%p}\ X %c %{O:-D__OPTIMIZE__} %{traditional} %{pedantic}\ X %{Wcomment} %{Wtrigraphs} %{Wall} %C\ X X--- 199,205 ----- X struct compiler compilers[] = X { X {".c", X! "xcpp %{nostdinc} %{C} %{v} %{D*} %{U*} %{I*} %{M*} %{T} \ X -undef -D__GNU__ -D__GNUC__ %{ansi:-T -$ -D__STRICT_ANSI__} %{!ansi:%p}\ X %c %{O:-D__OPTIMIZE__} %{traditional} %{pedantic}\ X %{Wcomment} %{Wtrigraphs} %{Wall} %C\ X*************** X*** 203,210 X -undef -D__GNU__ -D__GNUC__ %{ansi:-T -$ -D__STRICT_ANSI__} %{!ansi:%p}\ X %c %{O:-D__OPTIMIZE__} %{traditional} %{pedantic}\ X %{Wcomment} %{Wtrigraphs} %{Wall} %C\ X! %i %{!M*:%{!E:%g.cpp}}%{E:%{o*}}%{M*:%{o*}}\n\ X! %{!M*:%{!E:cc1 %g.cpp %{!Q:-quiet} -dumpbase %i %{Y*} %{d*} %{m*} %{f*}\ X %{g} %{O} %{W*} %{w} %{pedantic} %{ansi} %{traditional}\ X %{v:-version} %{gg:-symout %g.sym} %{pg:-p} %{p}\ X %{S:%{o*}%{!o*:-o %b.s}}%{!S:-o %g.s}\n\ X X--- 203,210 ----- X -undef -D__GNU__ -D__GNUC__ %{ansi:-T -$ -D__STRICT_ANSI__} %{!ansi:%p}\ X %c %{O:-D__OPTIMIZE__} %{traditional} %{pedantic}\ X %{Wcomment} %{Wtrigraphs} %{Wall} %C\ X! %i %{!M*:%{!E:%g.xcpp}}%{E:%{o*}}%{M*:%{o*}}\n\ X! %{!M*:%{!E:xcc1 %g.xcpp %{!Q:-quiet} -dumpbase %i %{Y*} %{d*} %{m*} %{f*}\ X %{g} %{O} %{W*} %{w} %{pedantic} %{ansi} %{traditional}\ X %{v:-version} %{gg:-symout %g.sym} %{pg:-p} %{p}\ X %{S:%{o*}%{!o*:-o %b.s}}%{!S:-o %g.s}\n\ X*************** X*** 335,341 X /* Default prefixes to attach to command names. */ X X #ifndef STANDARD_EXEC_PREFIX X! #define STANDARD_EXEC_PREFIX "/usr/local/lib/gcc-" X #endif /* !defined STANDARD_EXEC_PREFIX */ X X char *standard_exec_prefix = STANDARD_EXEC_PREFIX; X X--- 335,341 ----- X /* Default prefixes to attach to command names. */ X X #ifndef STANDARD_EXEC_PREFIX X! #define STANDARD_EXEC_PREFIX "/uh5h/ling/lee/lib/gcc-" X #endif /* !defined STANDARD_EXEC_PREFIX */ X X char *standard_exec_prefix = STANDARD_EXEC_PREFIX; X*************** X*** 339,345 X #endif /* !defined STANDARD_EXEC_PREFIX */ X X char *standard_exec_prefix = STANDARD_EXEC_PREFIX; X! char *standard_exec_prefix_1 = "/usr/lib/gcc-"; X X char *standard_startfile_prefix = "/lib/"; X char *standard_startfile_prefix_1 = "/usr/lib/"; X X--- 339,345 ----- X #endif /* !defined STANDARD_EXEC_PREFIX */ X X char *standard_exec_prefix = STANDARD_EXEC_PREFIX; X! char *standard_exec_prefix_1 = "/uh5h/ling/lee/lib/gcc-"; X X char *standard_startfile_prefix = "/uh5h/ling/lee/lib73/"; X char *standard_startfile_prefix_1 = "/uh5h/ling/lee/lib73/"; X*************** X*** 341,348 X char *standard_exec_prefix = STANDARD_EXEC_PREFIX; X char *standard_exec_prefix_1 = "/usr/lib/gcc-"; X X! char *standard_startfile_prefix = "/lib/"; X! char *standard_startfile_prefix_1 = "/usr/lib/"; X X /* Clear out the vector of arguments (after a command is executed). */ X X X--- 341,348 ----- X char *standard_exec_prefix = STANDARD_EXEC_PREFIX; X char *standard_exec_prefix_1 = "/uh5h/ling/lee/lib/gcc-"; X X! char *standard_startfile_prefix = "/uh5h/ling/lee/lib73/"; X! char *standard_startfile_prefix_1 = "/uh5h/ling/lee/lib73/"; X X /* Clear out the vector of arguments (after a command is executed). */ X X*************** X*** 441,447 X #endif /* DEBUG */ X } X X! #ifdef USG X pid = fork (); X if (pid < 0) X pfatal_with_name ("fork"); X X--- 441,447 ----- X #endif /* DEBUG */ X } X X! #ifdef HOST_USG X pid = fork (); X if (pid < 0) X pfatal_with_name ("fork"); X*** ../gcc-1.23/sdbout.c Thu Jun 30 05:49:35 1988 X--- sdbout.c Tue Jul 5 08:24:36 1988 X*************** X*** 27,33 X #include "rtl.h" X #include "c-tree.h" X #include <stdio.h> X! #include <syms.h> X /* #include <storclass.h> used to be this instead of syms.h. */ X X /* Line number of beginning of current function, minus one. */ X X--- 27,33 ----- X #include "rtl.h" X #include "c-tree.h" X #include <stdio.h> X! #include "syms.h" X /* #include <storclass.h> used to be this instead of syms.h. */ X X /* Line number of beginning of current function, minus one. */ X*************** X*** 55,62 X /* Put something here if lines get too long */ X #define CONTIN X X! #define PUT_SDB_SCL(a) fprintf(asm_out_file, "\t.scl\t%d;", (a)) X! #define PUT_SDB_INT_VAL(a) fprintf (asm_out_file, "\t.val\t%d;", (a)) X #define PUT_SDB_VAL(a) \ X ( fputs (".val\t", asm_out_file), \ X output_addr_const (asm_out_file, (a)), \ X X--- 55,62 ----- X /* Put something here if lines get too long */ X #define CONTIN X X! #define PUT_SDB_SCL(a) fprintf(asm_out_file, "\tscl\t%d;", (a)) X! #define PUT_SDB_INT_VAL(a) fprintf (asm_out_file, "\tval\t%d;", (a)) X #define PUT_SDB_VAL(a) \ X ( fputs ("\tval\t", asm_out_file), \ X output_addr_const (asm_out_file, (a)), \ X*************** X*** 58,64 X #define PUT_SDB_SCL(a) fprintf(asm_out_file, "\t.scl\t%d;", (a)) X #define PUT_SDB_INT_VAL(a) fprintf (asm_out_file, "\t.val\t%d;", (a)) X #define PUT_SDB_VAL(a) \ X! ( fputs (".val\t", asm_out_file), \ X output_addr_const (asm_out_file, (a)), \ X fputc (';', asm_out_file)) X #define PUT_SDB_DEF(a) fprintf(asm_out_file, "\t.def\t%s;", a) X X--- 58,64 ----- X #define PUT_SDB_SCL(a) fprintf(asm_out_file, "\tscl\t%d;", (a)) X #define PUT_SDB_INT_VAL(a) fprintf (asm_out_file, "\tval\t%d;", (a)) X #define PUT_SDB_VAL(a) \ X! ( fputs ("\tval\t", asm_out_file), \ X output_addr_const (asm_out_file, (a)), \ X fputc (';', asm_out_file)) X #define PUT_SDB_DEF(a) fprintf(asm_out_file, "\tdef\t%s;", a) X*************** X*** 61,71 X ( fputs (".val\t", asm_out_file), \ X output_addr_const (asm_out_file, (a)), \ X fputc (';', asm_out_file)) X! #define PUT_SDB_DEF(a) fprintf(asm_out_file, "\t.def\t%s;", a) X! #define PUT_SDB_ENDEF fputs("\t.endef\n", asm_out_file) X! #define PUT_SDB_TYPE(a) fprintf(asm_out_file, "\t.type\t0%o;", a) X! #define PUT_SDB_TAG(a) fprintf(asm_out_file, "\t.tag\t%s;", a) X! #define PUT_SDB_SIZE(a) fprintf(asm_out_file, "\t.size\t%d;", a) X X /* Return the sdb tag identifier string for TYPE X if TYPE has already been defined; otherwise return a null pointer. */ X X--- 61,71 ----- X ( fputs ("\tval\t", asm_out_file), \ X output_addr_const (asm_out_file, (a)), \ X fputc (';', asm_out_file)) X! #define PUT_SDB_DEF(a) fprintf(asm_out_file, "\tdef\t%s;", a) X! #define PUT_SDB_ENDEF fputs("\tendef\n", asm_out_file) X! #define PUT_SDB_TYPE(a) fprintf(asm_out_file, "\ttype\t0%o;", a) X! #define PUT_SDB_TAG(a) fprintf(asm_out_file, "\ttag\t%s;", a) X! #define PUT_SDB_SIZE(a) fprintf(asm_out_file, "\tsize\t%d;", a) X X /* Return the sdb tag identifier string for TYPE X if TYPE has already been defined; otherwise return a null pointer. */ X*************** X*** 90,95 X FILE *asm_file; X char *input_file_name; X { X /* Get all permanent types not yet gotten X and output them. */ X X X--- 90,100 ----- X FILE *asm_file; X char *input_file_name; X { X+ asm_out_file = asm_file; X+ X+ fprintf (asm_out_file, X+ "\tfile\t\"%s\"\n", input_file_name); X+ X /* Get all permanent types not yet gotten X and output them. */ X X*************** X*** 125,131 X { X char label[10]; X char *labelstr; X! sprintf (label, ".%dfake", unnamed_struct_number++); X labelstr = (char *) permalloc (strlen (label) + 1); X strcpy (labelstr, label); X return labelstr; X X--- 130,136 ----- X { X char label[10]; X char *labelstr; X! sprintf (label, "~%dfake", unnamed_struct_number++); X labelstr = (char *) permalloc (strlen (label) + 1); X strcpy (labelstr, label); X return labelstr; X*************** X*** 543,549 X } X /* output end of a structure,union, or enumeral definition */ X X! PUT_SDB_DEF (".eos"); X PUT_SDB_INT_VAL (size); X PUT_SDB_SCL (C_EOS); X PUT_SDB_TAG (name); X X--- 548,554 ----- X } X /* output end of a structure,union, or enumeral definition */ X X! PUT_SDB_DEF ("~eos"); X PUT_SDB_INT_VAL (size); X PUT_SDB_SCL (C_EOS); X PUT_SDB_TAG (name); X*************** X*** 672,678 X { X tree decl = current_function_decl; X fprintf (file, X! "\t.def\t.bb;\t.val\t.;\t.scl\t100;\t.line\t%d;\t.endef\n", X line - sdb_begin_function_line); X if (n == 1) X { X X--- 677,683 ----- X { X tree decl = current_function_decl; X fprintf (file, X! "\tdef\t~bb;\tval\t~;\tscl\t100;\tline\t%d;\tendef\n", X line - sdb_begin_function_line); X if (n == 1) X { X*************** X*** 694,700 X int line; X { X fprintf (file, X! "\t.def\t.eb;.val\t.;\t.scl\t100;\t.line\t%d;\t.endef\n" , X line - sdb_begin_function_line); X } X X X--- 699,705 ----- X int line; X { X fprintf (file, X! "\tdef\t~eb;\tval\t~;\tscl\t100;\tline\t%d;\tendef\n" , X line - sdb_begin_function_line); X } X X*************** X*** 710,716 X { X sdb_begin_function_line = line - 1; X fprintf (asm_out_file, X! "\t.def\t.bf;\t.val\t.;\t.scl\t101;\t.line\t%d;\t.endef\n", X line); X sdbout_parms (DECL_ARGUMENTS (current_function_decl)); X sdbout_reg_parms (DECL_ARGUMENTS (current_function_decl)); X X--- 715,721 ----- X { X sdb_begin_function_line = line - 1; X fprintf (asm_out_file, X! "\tdef\t~bf;\tval\t~;\tscl\t101;\tline\t%d;\tendef\n", X line); X sdbout_parms (DECL_ARGUMENTS (current_function_decl)); X sdbout_reg_parms (DECL_ARGUMENTS (current_function_decl)); X*************** X*** 724,730 X int line; X { X fprintf (asm_out_file, X! "\t.def\t.ef;\t.val\t.;\t.scl\t101;\t.line\t%d;\t.endef\n", X line - sdb_begin_function_line); X } X X X--- 729,735 ----- X int line; X { X fprintf (asm_out_file, X! "\tdef\t~ef;\tval\t~;\tscl\t101;\tline\t%d;\tendef\n", X line - sdb_begin_function_line); X } X X*************** X*** 742,748 X sdbout_mark_end_function () X { X PUT_SDB_DEF (IDENTIFIER_POINTER (DECL_NAME (current_function_decl))); X! fputs ("\t.val\t.;", asm_out_file); X PUT_SDB_SCL (C_EFCN); X PUT_SDB_ENDEF; X } X X--- 747,753 ----- X sdbout_mark_end_function () X { X PUT_SDB_DEF (IDENTIFIER_POINTER (DECL_NAME (current_function_decl))); X! fputs ("\tval\t~;", asm_out_file); X PUT_SDB_SCL (C_EFCN); X PUT_SDB_ENDEF; X } X*** ../gcc-1.23/tm-3b1.h Thu Jun 30 05:49:42 1988 X--- tm-3b1.h Mon Jul 4 08:59:21 1988 X*************** X*** 40,46 X /* we use /lib/libp/lib* when profiling */ X X #undef LIB_SPEC X! #define LIB_SPEC "%{!shlib:%{p:-L/lib/libp} %{pg:-L/lib/libp} -lc}" X X /* shared libraries need to use crt0s.o */ X X X--- 40,46 ----- X /* we use /lib/libp/lib* when profiling */ X X #undef LIB_SPEC X! #define LIB_SPEC "%{!shlib:%{p:-L/uh5h/ling/lee/lib73/libp} %{pg:-L/uh5h/ling/lee/lib73/libp} -lc}" X X /* shared libraries need to use crt0s.o */ X X*************** X*** 57,62 X /* Define __HAVE_FPU__ in preprocessor if -m68881 is specified. X This will control the use of inline 68881 insns in certain macros. */ X X #define CPP_SPEC "%{m68881:-D__HAVE_FPU__}" X X /* Names to predefine in the preprocessor for this target machine. */ X X--- 57,63 ----- X /* Define __HAVE_FPU__ in preprocessor if -m68881 is specified. X This will control the use of inline 68881 insns in certain macros. */ X X+ #undef CPP_SPEC X #define CPP_SPEC "%{m68881:-D__HAVE_FPU__}" X X /* Names to predefine in the preprocessor for this target machine. */ X*************** X*** 278,284 X XVECLEN (PATTERN (TABLE), 1) + 1, PREFIX, NUM) X X #define ASM_OUTPUT_CASE_END(FILE,NUM,TABLE) \ X! fprintf (FILE, "\tset LD%d,L%d-LI%d\n", NUM, NUM, NUM); X X #define ASM_OUTPUT_OPCODE(FILE, PTR) \ X { if ((PTR)[0] == 'j' && (PTR)[1] == 'b') \ X X--- 279,285 ----- X XVECLEN (PATTERN (TABLE), 1) + 1, PREFIX, NUM) X X #define ASM_OUTPUT_CASE_END(FILE,NUM,TABLE) \ X! fprintf (FILE, "\tset LD%d,L%d-LI%d\n", NUM, NUM, NUM) X X #define ASM_OUTPUT_OPCODE(FILE, PTR) \ X { if ((PTR)[0] == 'j' && (PTR)[1] == 'b') \ X*************** X*** 320,322 X X #define ASM_OUTPUT_LABELREF(FILE,NAME) \ X fprintf (FILE, "%s", NAME) X X--- 321,324 ----- X X #define ASM_OUTPUT_LABELREF(FILE,NAME) \ X fprintf (FILE, "%s", NAME) X+ #define SDB_DEBUGGING_INFO X*** ../gcc-1.23/toplev.c Thu Jun 30 05:49:53 1988 X--- toplev.c Mon Jul 4 06:04:32 1988 X*************** X*** 31,37 X #include <sys/types.h> X #include <sys/stat.h> X X! #ifdef USG X #include <sys/param.h> X #include <sys/times.h> X #include <time.h> /* Correct for hpux at least. Is it good on other USG? */ X X--- 31,37 ----- X #include <sys/types.h> X #include <sys/stat.h> X X! #ifdef HOST_USG X #include <sys/param.h> X #include <sys/times.h> X #include <time.h> /* Correct for hpux at least. Is it good on other USG? */ X*************** X*** 286,292 X int X gettime () X { X! #ifdef USG X struct tms tms; X #else X #ifndef VMS X X--- 286,292 ----- X int X gettime () X { X! #ifdef HOST_USG X struct tms tms; X #else X #ifndef VMS X*************** X*** 305,311 X if (quiet_flag) X return 0; X X! #ifdef USG X times (&tms); X return (tms.tms_utime + tms.tms_stime) * (1000000 / HZ); X #else X X--- 305,311 ----- X if (quiet_flag) X return 0; X X! #ifdef HOST_USG X times (&tms); X return (tms.tms_utime + tms.tms_stime) * (1000000 / HZ); X #else X*************** X*** 1543,1549 X X compile_file (filename); X X! #ifndef USG X #ifndef VMS X if (print_mem_flag) X { X X--- 1543,1549 ----- X X compile_file (filename); X X! #ifndef HOST_USG X #ifndef VMS X if (print_mem_flag) X { END_OF_FILE if test 18897 -ne `wc -c <'x7300-diffs'`; then echo shar: \"'x7300-diffs'\" unpacked with wrong size! fi # end of 'x7300-diffs' fi echo shar: End of archive 1 \(of 1\). cp /dev/null ark1isdone MISSING="" for I in 1 ; do if test ! -f ark${I}isdone ; then MISSING="${MISSING} ${I}" fi done if test "${MISSING}" = "" ; then echo You have the archive. rm -f ark[1-9]isdone else echo You still need to unpack the following archives: echo " " ${MISSING} fi ## End of shell archive. exit 0