From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gavin Koch To: wilson@cygnus.com Cc: egcs@cygnus.com Subject: Patch to clean up multilibs for tx39 Date: Fri, 06 Feb 1998 17:06:00 -0000 Message-id: X-SW-Source: 1998-02/msg00245.html OK to push? -gavin... This cleans up the multilibs for tx39. * mips/t-r3900: New - same as t-ecoff but eliminate multilibs: mips1 and mips3. * configure.in (tx39*): Use new mips/t-r3900. * configure: Rebuild. * mips/r3900.h (MULTILIB_DEFAULTS): Eliminate mips1. New file: gcc/config/mips/t-r3900 ================================================ CONFIG2_H = $(srcdir)/config/mips/ecoff.h # We have a premade insn-attrtab.c to save the hour it takes to run genattrtab. # PREMADE_ATTRTAB = $(srcdir)/config/mips/mips-at.c # PREMADE_ATTRTAB_MD = $(srcdir)/config/mips/mips-at.md # Suppress building libgcc1.a, since the MIPS compiler port is complete # and does not need anything from libgcc1.a. LIBGCC1 = # When building a cross compiler, put the mips16 support functions in # libgcc1.a. CROSS_LIBGCC1 = libgcc1-asm.a LIB1ASMSRC = mips/mips16.S LIB1ASMFUNCS = _m16addsf3 _m16subsf3 _m16mulsf3 _m16divsf3 \ _m16eqsf2 _m16nesf2 _m16gtsf2 _m16gesf2 _m16lesf2 _m16ltsf2 \ _m16fltsisf _m16fixsfsi \ _m16adddf3 _m16subdf3 _m16muldf3 _m16divdf3 \ _m16extsfdf2 _m16trdfsf2 \ _m16eqdf2 _m16nedf2 _m16gtdf2 _m16gedf2 _m16ledf2 _m16ltdf2 \ _m16fltsidf _m16fixdfsi \ _m16retsf _m16retdf \ _m16stub1 _m16stub2 _m16stub5 _m16stub6 _m16stub9 _m16stub10 \ _m16stubsf0 _m16stubsf1 _m16stubsf2 _m16stubsf5 _m16stubsf6 \ _m16stubsf9 _m16stubsf10 \ _m16stubdf0 _m16stubdf1 _m16stubdf2 _m16stubdf5 _m16stubdf6 \ _m16stubdf9 _m16stubdf10 # We must build libgcc2.a with -G 0, in case the user wants to link # without the $gp register. TARGET_LIBGCC2_CFLAGS = -G 0 # fp-bit and dp-bit are really part of libgcc1, but this will cause # them to be built correctly, so... [taken from t-sparclite] LIB2FUNCS_EXTRA = fp-bit.c dp-bit.c dp-bit.c: $(srcdir)/config/fp-bit.c echo '#ifdef __MIPSEL__' > dp-bit.c echo '#define FLOAT_BIT_ORDER_MISMATCH' >> dp-bit.c echo '#endif' >> dp-bit.c echo '#define US_SOFTWARE_GOFAST' >> dp-bit.c cat $(srcdir)/config/fp-bit.c >> dp-bit.c fp-bit.c: $(srcdir)/config/fp-bit.c echo '#define FLOAT' > fp-bit.c echo '#ifdef __MIPSEL__' >> fp-bit.c echo '#define FLOAT_BIT_ORDER_MISMATCH' >> fp-bit.c echo '#endif' >> fp-bit.c echo '#define US_SOFTWARE_GOFAST' >> fp-bit.c cat $(srcdir)/config/fp-bit.c >> fp-bit.c # Build the libraries for both hard and soft floating point MULTILIB_OPTIONS = msoft-float/msingle-float EL/EB MULTILIB_DIRNAMES = soft-float single el eb LIBGCC = stmp-multilib INSTALL_LIBGCC = install-multilib # Add additional dependencies to recompile selected modules whenever the # tm.h file changes. The files compiled are: # # gcc.c (*_SPEC changes) # toplev.c (new switches + assembly output changes) # sdbout.c (debug format changes) # dbxout.c (debug format changes) # dwarfout.c (debug format changes) # final.c (assembly output changes) # varasm.c (assembly output changes) # cse.c (cost functions) # insn-output.c (possible ifdef changes in tm.h) # regclass.c (fixed/call used register changes) # cccp.c (new preprocessor macros, -v version #) # explow.c (GO_IF_LEGITIMATE_ADDRESS) # recog.c (GO_IF_LEGITIMATE_ADDRESS) # reload.c (GO_IF_LEGITIMATE_ADDRESS) gcc.o: $(CONFIG2_H) toplev.o: $(CONFIG2_H) sdbout.o: $(CONFIG2_H) dbxout.o: $(CONFIG2_H) dwarfout.o: $(CONFIG2_H) final.o: $(CONFIG2_H) varasm.o: $(CONFIG2_H) cse.o: $(CONFIG2_H) insn-output.o: $(CONFIG2_H) regclass.o: $(CONFIG2_H) cccp.o: $(CONFIG2_H) explow.o: $(CONFIG2_H) recog.o: $(CONFIG2_H) reload.o: $(CONFIG2_H) Index: gcc/configure.in =================================================================== RCS file: /egcs/carton/cvsfiles/egcs/gcc/configure.in,v retrieving revision 1.57 diff -c -3 -p -r1.57 configure.in *** configure.in 1998/02/01 00:48:05 1.57 --- configure.in 1998/02/06 19:41:21 *************** for machine in $build $host $target; do *** 1992,2002 **** ;; mipstx39el-*-elf*) tm_file="mips/r3900.h mips/elfl.h mips/abi64.h libgloss.h" ! tmake_file=mips/t-ecoff ;; mipstx39-*-elf*) tm_file="mips/r3900.h mips/elf.h mips/abi64.h libgloss.h" ! tmake_file=mips/t-ecoff ;; mips-*-*) # Default MIPS RISC-OS 4.0. if [[ x$stabs = xyes ]]; then --- 1992,2002 ---- ;; mipstx39el-*-elf*) tm_file="mips/r3900.h mips/elfl.h mips/abi64.h libgloss.h" ! tmake_file=mips/t-r3900 ;; mipstx39-*-elf*) tm_file="mips/r3900.h mips/elf.h mips/abi64.h libgloss.h" ! tmake_file=mips/t-r3900 ;; mips-*-*) # Default MIPS RISC-OS 4.0. if [[ x$stabs = xyes ]]; then Index: gcc/config/mips/r3900.h =================================================================== RCS file: /egcs/carton/cvsfiles/egcs/gcc/config/mips/r3900.h,v retrieving revision 1.1.1.1 diff -c -3 -p -r1.1.1.1 r3900.h *** r3900.h 1997/11/02 08:44:55 1.1.1.1 --- r3900.h 1998/02/06 19:41:26 *************** Boston, MA 02111-1307, USA. */ *** 46,52 **** #define MIPS_CPU_STRING_DEFAULT "R3900" #define MIPS_ISA_DEFAULT 1 ! #define MULTILIB_DEFAULTS { "EB", "mips1", "msoft-float" } /* We use the MIPS EABI by default. */ #define MIPS_ABI_DEFAULT ABI_EABI --- 46,52 ---- #define MIPS_CPU_STRING_DEFAULT "R3900" #define MIPS_ISA_DEFAULT 1 ! #define MULTILIB_DEFAULTS { "EB", "msoft-float" } /* We use the MIPS EABI by default. */ #define MIPS_ABI_DEFAULT ABI_EABI