Commit 23573244 authored by zack's avatar zack

i * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.

	* testsuite/gcc.dg/complete-port.c: New (revised version of
	libgcc1-test.c)
	* po/POTFILES.in: Remove libgcc1-test.c and libgcc1.c.

	* Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
	OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
	LIB1FUNCS, and LIB1FUNCS_EXTRA.  Delete rules: libgcc1-test,
	libgcc1-test.o.  Clarify commentary now that libgcc1 no longer exists.
	* cross-make: Don't set LIBGCC1.
	* mklibgcc.in: Delete all code for building from libgcc1.c.
	Always honor LIB1ASMFUNCS if set.

	* crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
	config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
	config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
	config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
	config/i386/uwin.asm, config/m68hc11/larith.asm,
	config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
	config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
	config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
	config/v850/lib1funcs.asm, config/c4x/libgcc.S:
	Delete or update references to libgcc1 in commentary.

	* config/t-libc-ok, config/t-linux, config/t-linux-aout,
	config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
	config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
	config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
	config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
	config/arm/t-semi, config/arm/t-strongarm-coff,
	config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
	config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
	config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
	config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
	config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
	config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
	config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
	config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
	config/m68k/t-m68kbare, config/m68k/t-m68kelf,
	config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
	config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
	config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
	config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
	config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
	config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
	config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
	config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
	config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
	config/mips/t-ultrix, config/mn10200/t-mn10200,
	config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
	config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
	config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
	config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
	config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
	config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
	config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
	config/sparc/t-sparclite, config/sparc/t-splet,
	config/sparc/t-sunos41, config/sparc/t-vxsparc,
	config/sparc/t-vxsparc64, config/v850/t-v850:
	Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.

	* config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
	Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
	* config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
	FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
	nongcc_SI_type, nongcc_word_type, or perform_*
	* config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.

	* config/i386/386bsd.h, config/i386/beos-elf.h,
	config/i386/linux-aout.h, config/i386/linux-oldld.h,
	config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
	config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
	Don't include i386/perform.h.

	* config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
	config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
	config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
	config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
	config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
	config/vax/t-openbsd, config/vax/t-vax: Delete.

	* config.gcc: Remove references to deleted files.
	(arm-semi-aof): Use arm/t-semi for tmake_file.

	* gcc.texi, install.texi, invoke.texi, tm.texi:
	Delete or rewrite text which is no longer relevant now that
	libgcc1 no longer exists.

	* config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
	No need to set INSTALL_ASSERT_H.  (Missed in previous sweep.)


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42188 138bc75d-0d04-0410-961f-82ee72b054a4
parent c718ce1e
2001-05-16 Zack Weinberg <zackw@stanford.edu>
* libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
* Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
* cross-make: Don't set LIBGCC1.
* mklibgcc.in: Delete all code for building from libgcc1.c.
Always honor LIB1ASMFUNCS if set.
* crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
config/i386/uwin.asm, config/m68hc11/larith.asm,
config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
config/v850/lib1funcs.asm, config/c4x/libgcc.S:
Delete or update references to libgcc1 in commentary.
* config/t-libc-ok, config/t-linux, config/t-linux-aout,
config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
config/arm/t-semi, config/arm/t-strongarm-coff,
config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
config/m68k/t-m68kbare, config/m68k/t-m68kelf,
config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
config/mips/t-ultrix, config/mn10200/t-mn10200,
config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
config/sparc/t-sparclite, config/sparc/t-splet,
config/sparc/t-sunos41, config/sparc/t-vxsparc,
config/sparc/t-vxsparc64, config/v850/t-v850:
Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
* config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
* config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
nongcc_SI_type, nongcc_word_type, or perform_*
* config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
* config/i386/386bsd.h, config/i386/beos-elf.h,
config/i386/linux-aout.h, config/i386/linux-oldld.h,
config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
Don't include i386/perform.h.
* config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
config/vax/t-openbsd, config/vax/t-vax: Delete.
* config.gcc: Remove references to deleted files.
(arm-semi-aof): Use arm/t-semi for tmake_file.
* gcc.texi, install.texi, invoke.texi, tm.texi:
Delete or rewrite text which is no longer relevant now that
libgcc1 no longer exists.
* config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
2001-05-16 Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
Bruce Korb <bkorb@gnu.org>
......
......@@ -152,20 +152,6 @@ ZLIBINC = @zlibinc@
# Substitution type for target's getgroups 2nd arg.
TARGET_GETGROUPS_T = @TARGET_GETGROUPS_T@
# Compiler to use for compiling libgcc1.a.
# OLDCC should not be the GNU C compiler,
# since that would compile typical libgcc1.a functions such as mulsi3
# into infinite recursions.
OLDCC = cc
# CFLAGS for use with OLDCC, for compiling libgcc1.a.
# NOTE: -O does not work on some Unix systems!
CCLIBFLAGS = -O
# Version of ar to use when compiling libgcc1.a.
OLDAR = ar
OLDAR_FLAGS = qc
# Target to use when installing include directory. Either
# install-headers-tar or install-headers-cpio.
INSTALL_HEADERS_DIR = @build_install_headers_dir@
......@@ -177,7 +163,7 @@ USER_H = $(srcdir)/ginclude/stdarg.h $(srcdir)/ginclude/stddef.h \
$(srcdir)/ginclude/stdbool.h $(srcdir)/ginclude/iso646.h \
$(EXTRA_HEADERS) $(LANG_EXTRA_HEADERS)
# The GCC to use for compiling libgcc.a, enquire, and libgcc1-test.
# The GCC to use for compiling libgcc.a, enquire, and crt*.o.
# Usually the one we just built.
# Don't use this as a dependency--use $(GCC_PASSES) or $(GCC_PARTS).
GCC_FOR_TARGET = ./xgcc -B./ -B$(build_tooldir)/bin/ -isystem $(build_tooldir)/include
......@@ -368,20 +354,11 @@ VFPRINTF=@vfprintf@
DOPRINT=@doprint@
STRSTR=@strstr@
# Specify the rule for actually making libgcc.a,
# libgcc.a may be built directly or via stmp-multilib,
# and installed likewise. Overridden by t-fragment.
LIBGCC = libgcc.a
# and the rule for installing it.
INSTALL_LIBGCC = install-libgcc
# Specify the rule for actually making libgcc1.a.
# The value may be empty; that means to do absolutely nothing
# with or for libgcc1.a.
LIBGCC1 = libgcc1.a
# Specify the rule for making libgcc1.a for a cross-compiler.
# The default rule assumes that libgcc1.a is supplied by the user.
CROSS_LIBGCC1 = libgcc1.cross
# Options to use when compiling libgcc2.a.
# -g1 causes output of debug info only for file-scope entities.
# we use this here because that should be enough, and also
......@@ -402,9 +379,6 @@ LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde.c \
$(srcdir)/unwind-sjlj.c
LIB2ADDEHDEP = unwind.inc unwind-dw2-fde.h
# libgcc1-test target (must also be overridable for a target)
LIBGCC1_TEST = libgcc1-test
# nm flags to list global symbols in libgcc object files.
SHLIB_NM_FLAGS = -pg
......@@ -436,16 +410,12 @@ EXTRA_HEADERS =@extra_headers_list@
USE_COLLECT2 = @will_use_collect2@
# If we might be using collect2, then this variable will be set to
# -DUSE_COLLECT2. toplev.c, collect2.c and libgcc2.c all need to
# if we may be using collect2.
# know if we may be using collect2.
MAYBE_USE_COLLECT2 = @maybe_use_collect2@
# It is convenient for configure to add the assignment at the beginning,
# so don't override it here.
USE_COLLECT2 = collect2$(exeext)
# List of extra C and assembler files to add to libgcc1.a.
# Assembler files should have names ending in `.asm'.
LIB1FUNCS_EXTRA =
# List of extra C and assembler files to add to static and shared libgcc2.
# Assembler files should have names ending in `.asm'.
LIB2FUNCS_EXTRA =
......@@ -776,15 +746,6 @@ STAGESTUFF = *$(objext) insn-flags.h insn-config.h insn-codes.h \
gcov$(exeext) *.[0-9][0-9].* *.[si] libcpp.a libbackend.a libgcc.mk \
$(LANG_STAGESTUFF)
# Members of libgcc1.a.
LIB1FUNCS = _mulsi3 _udivsi3 _divsi3 _umodsi3 _modsi3 \
_lshrsi3 _ashrsi3 _ashlsi3 \
_divdf3 _muldf3 _negdf2 _adddf3 _subdf3 \
_fixdfsi _fixsfsi _floatsidf _floatsisf _truncdfsf2 _extendsfdf2 \
_addsf3 _negsf2 _subsf3 _mulsf3 _divsf3 \
_eqdf2 _nedf2 _gtdf2 _gedf2 _ltdf2 _ledf2 \
_eqsf2 _nesf2 _gtsf2 _gesf2 _ltsf2 _lesf2
# Library members defined in libgcc2.c.
LIB2FUNCS = _muldi3 _divdi3 _moddi3 _udivdi3 _umoddi3 _negdi2 \
_lshrdi3 _ashldi3 _ashrdi3 _ffsdi2 _clz \
......@@ -952,7 +913,7 @@ all.internal: start.encap rest.encap doc
# Note that we can compile enquire using the cross-compiler just built,
# although we can't run it on this machine.
all.cross: native gcc-cross cpp$(exeext) specs \
$(LIBGCC) $(LIBGCC1_TEST) $(EXTRA_PARTS) lang.all.cross doc
$(LIBGCC) $(EXTRA_PARTS) lang.all.cross doc
# This is what to compile if making gcc with a cross-compiler.
all.build: native xgcc$(exeext) cpp$(exeext) $(EXTRA_PARTS) lang.all.build
# This is what must be made before installing GCC and converting libraries.
......@@ -976,15 +937,6 @@ PROTO: proto
# This does the things that can't be done on the host machine.
rest.cross: $(LIBGCC) specs
# Verify that it works to compile and link libgcc1-test.
# If it does, then there are sufficient replacements for libgcc1.a.
libgcc1-test: libgcc1-test.o native $(GCC_PARTS)
@echo "Testing libgcc1. Ignore linker warning messages."
$(GCC_FOR_TARGET) $(GCC_CFLAGS) libgcc1-test.o -o libgcc1-test \
-nostartfiles -nostdlib `$(GCC_FOR_TARGET) --print-libgcc-file-name`
libgcc1-test.o: libgcc1-test.c native xgcc$(exeext) stmp-int-hdrs
$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(ALL_CPPFLAGS) -c $(srcdir)/libgcc1-test.c
# Recompile all the language-independent object files.
# This is used only if the user explicitly asks for it.
compilations: $(BACKEND)
......@@ -1042,11 +994,7 @@ LIB2ADD_ST = $(LIB2FUNCS_STATIC_EXTRA)
libgcc.mk: config.status Makefile mklibgcc $(LIB2ADD) $(LIB2ADD_ST) xgcc$(exeext)
objext='$(objext)' \
OLDCC='$(OLDCC)' \
LIBGCC1='$(LIBGCC1)' \
LIB1FUNCS='$(LIB1FUNCS)' \
LIB1ASMFUNCS='$(LIB1ASMFUNCS)' \
LIB1FUNCS_EXTRA='$(LIB1FUNCS_EXTRA)' \
LIB2FUNCS='$(LIB2FUNCS)' \
LIB2FUNCS_ST='$(LIB2FUNCS_ST)' \
LIB2ADD='$(LIB2ADD)' \
......@@ -1071,10 +1019,10 @@ libgcc.mk: config.status Makefile mklibgcc $(LIB2ADD) $(LIB2ADD_ST) xgcc$(exeext
# All the things that might cause us to want to recompile bits of libgcc.
LIBGCC_DEPS = $(GCC_PASSES) $(LANGUAGES) stmp-int-hdrs $(STMP_FIXPROTO) \
libgcc.mk $(srcdir)/libgcc1.c $(srcdir)/libgcc2.c $(TCONFIG_H) \
libgcc.mk $(srcdir)/libgcc2.c $(TCONFIG_H) \
$(MACHMODE_H) longlong.h gbl-ctors.h config.status stmp-int-hdrs \
tsystem.h $(FPBIT) $(DPBIT) $(LIB2ADD) $(LIB2ADD_ST) $(LIB2ADDEH) \
$(LIB2ADDEHDEP) $(EXTRA_PARTS)
$(LIB2ADDEHDEP) $(EXTRA_PARTS) $(LIB1ASMSRC)
libgcc.a: $(LIBGCC_DEPS)
$(MAKE) GCC_FOR_TARGET="$(GCC_FOR_TARGET)" \
......@@ -1082,7 +1030,6 @@ libgcc.a: $(LIBGCC_DEPS)
AR_FOR_TARGET="$(AR_FOR_TARGET)" \
AR_CREATE_FOR_TARGET="$(AR_CREATE_FOR_TARGET)" \
AR_FLAGS_FOR_TARGET="$(AR_FLAGS_FOR_TARGET)" \
OLDCC="$(OLDCC)" CCLIBFLAGS="$(CCLIBFLAGS)" \
CFLAGS="$(CFLAGS) $(WARN_CFLAGS)" \
RANLIB_FOR_TARGET="$(RANLIB_FOR_TARGET)" \
RANLIB_TEST_FOR_TARGET="$(RANLIB_TEST_FOR_TARGET)" \
......@@ -1117,7 +1064,6 @@ stmp-multilib: $(LIBGCC_DEPS)
AR_FOR_TARGET="$(AR_FOR_TARGET)" \
AR_CREATE_FOR_TARGET="$(AR_CREATE_FOR_TARGET)" \
AR_FLAGS_FOR_TARGET="$(AR_FLAGS_FOR_TARGET)" \
OLDCC="$(OLDCC)" CCLIBFLAGS="$(CCLIBFLAGS)" \
CFLAGS="$(CFLAGS) $(WARN_CFLAGS)" \
RANLIB_FOR_TARGET="$(RANLIB_FOR_TARGET)" \
RANLIB_TEST_FOR_TARGET="$(RANLIB_TEST_FOR_TARGET)" \
......@@ -2323,8 +2269,7 @@ mostlyclean: $(INTL_MOSTLYCLEAN) lang.mostlyclean
-rm -f $(HOST_PREFIX_1)rtl.c
-rm -f $(HOST_PREFIX_1)obstack.c
# Delete the temp files made in the course of building libgcc.a.
-rm -f xlimits.h libgcc1-test
for name in $(LIB1FUNCS); do rm -f $${name}.c; done
-rm -f xlimits.h
# Delete other built files.
-rm -f t-float.h-cross xsys-protos.hT
# Delete the stamp and temporary files.
......@@ -2650,7 +2595,6 @@ install-libgcc: libgcc.mk libgcc.a installdirs
AR_FOR_TARGET="$(AR_FOR_TARGET)" \
AR_CREATE_FOR_TARGET="$(AR_CREATE_FOR_TARGET)" \
AR_FLAGS_FOR_TARGET="$(AR_FLAGS_FOR_TARGET)" \
OLDCC="$(OLDCC)" CCLIBFLAGS="$(CCLIBFLAGS)" \
CFLAGS="$(CFLAGS) $(WARN_CFLAGS)" \
RANLIB_TEST_FOR_TARGET="$(RANLIB_TEST_FOR_TARGET)" \
NM_FOR_TARGET="$(NM_FOR_TARGET)" AWK="$(AWK)" \
......@@ -2677,7 +2621,6 @@ install-multilib: stmp-multilib installdirs
AR_FOR_TARGET="$(AR_FOR_TARGET)" \
AR_CREATE_FOR_TARGET="$(AR_CREATE_FOR_TARGET)" \
AR_FLAGS_FOR_TARGET="$(AR_FLAGS_FOR_TARGET)" \
OLDCC="$(OLDCC)" CCLIBFLAGS="$(CCLIBFLAGS)" \
CFLAGS="$(CFLAGS) $(WARN_CFLAGS)" \
RANLIB_TEST_FOR_TARGET="$(RANLIB_TEST_FOR_TARGET)" \
NM_FOR_TARGET="$(NM_FOR_TARGET)" AWK="$(AWK)" \
......
......@@ -517,7 +517,7 @@ arm-semi-aout | armel-semi-aout)
;;
arm-semi-aof | armel-semi-aof)
tm_file=arm/semiaof.h
tmake_file=arm/t-semiaof
tmake_file=arm/t-semi
;;
arm*-*-netbsd*)
tm_file=arm/netbsd.h
......@@ -866,17 +866,15 @@ i370-*-opened*) # IBM 360/370/390 Architecture
xm_defines='POSIX FATAL_EXIT_CODE=12'
tm_file=i370/oe.h
xmake_file=i370/x-oe
tmake_file=i370/t-oe
;;
i370-*-mvs*)
xm_defines='POSIX FATAL_EXIT_CODE=12'
tm_file=i370/mvs.h
tmake_file=i370/t-mvs
;;
i370-*-linux*)
xmake_file=x-linux
tm_file="i370/linux.h ${tm_file}"
tmake_file="t-linux i370/t-linux"
tmake_file=t-linux
# broken_install=yes
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
# extra_parts="crtbegin.o crtend.o"
......@@ -982,12 +980,10 @@ i386-sun-sunos*) # Sun i386 roadrunner
;;
i[34567]86-wrs-vxworks*)
tm_file=i386/vxi386.h
tmake_file=i386/t-i386bare
thread_file='vxworks'
;;
i[34567]86-*-aout*)
tm_file=i386/i386-aout.h
tmake_file=i386/t-i386bare
;;
i[34567]86-*-beoself* | i[34567]86-*-beos*)
xm_defines=POSIX
......@@ -1007,11 +1003,11 @@ i[34567]86-*-bsd*)
# use_collect2=yes
;;
i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12].* | i[34567]86-*-freebsd*aout*)
tm_file="i386/freebsd-aout.h i386/perform.h"
tm_file=i386/freebsd-aout.h
tmake_file=t-freebsd
;;
i[34567]86-*-freebsd*)
tm_file="i386/i386.h i386/att.h svr4.h freebsd.h i386/freebsd.h i386/perform.h"
tm_file="i386/i386.h i386/att.h svr4.h freebsd.h i386/freebsd.h"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
tmake_file=t-freebsd
gas=yes
......@@ -1035,7 +1031,6 @@ i[34567]86-*-openbsd*)
;;
i[34567]86-*-coff*)
tm_file=i386/i386-coff.h
tmake_file=i386/t-i386bare
;;
i[34567]86-*-isc*) # 80386 running ISC system
xm_defines=POSIX
......@@ -1049,7 +1044,6 @@ i[34567]86-*-isc*) # 80386 running ISC system
tmake_file=i386/t-crtstuff
extra_parts="crtbegin.o crtend.o"
fi
tmake_file="$tmake_file i386/t-i386bare"
install_headers_dir=install-headers-cpio
;;
i[34567]86-*-linux*oldld*) # Intel 80386's running GNU/Linux
......@@ -1103,7 +1097,6 @@ i[34567]86-go32-msdos | i[34567]86-*-go32*)
i[34567]86-pc-msdosdjgpp*)
xm_file=i386/xm-djgpp.h
tm_file=i386/djgpp.h
tmake_file=i386/t-djgpp
xmake_file=i386/x-djgpp
gnu_ld=yes
gas=yes
......@@ -1127,7 +1120,6 @@ i[34567]86-*-lynxos*)
else
tm_file=i386/lynx-ng.h
fi
tmake_file=i386/t-i386bare
;;
i[34567]86-*-mach*)
tm_file=i386/mach.h
......@@ -1157,7 +1149,7 @@ i[34567]86-go32-rtems*)
i[34567]86-*-rtemscoff*)
cpu_type=i386
tm_file=i386/rtems.h
tmake_file="i386/t-i386bare t-rtems"
tmake_file=t-rtems
if test x$enable_threads = xyes; then
thread_file='rtems'
fi
......@@ -1183,7 +1175,6 @@ i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
else
tmake_file=i386/t-sco5
fi
tmake_file="$tmake_file i386/t-i386bare"
extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
;;
i[34567]86-*-solaris2*)
......@@ -1193,7 +1184,7 @@ i[34567]86-*-solaris2*)
# Only needed if gas does not support -s
tm_file="i386/sol2gas.h ${tm_file}"
fi
tmake_file="i386/t-i386bare i386/t-sol2"
tmake_file=i386/t-sol2
extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
xmake_file=x-svr4
if test x${enable_threads} = x; then
......@@ -1217,7 +1208,7 @@ i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
then
tm_file="${tm_file} dbx.h"
fi
tmake_file="i386/t-i386bare i386/t-crtpic"
tmake_file=i386/t-crtpic
xmake_file=x-svr4
extra_parts="crtbegin.o crtend.o"
if test x$enable_threads = xyes; then
......@@ -1231,14 +1222,14 @@ i[34567]86-*-sysv4*) # Intel 80386's running system V.4
then
tm_file="${tm_file} dbx.h"
fi
tmake_file="i386/t-i386bare i386/t-crtpic"
tmake_file=i386/t-crtpic
xmake_file=x-svr4
extra_parts="crtbegin.o crtend.o"
;;
i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
xm_defines=POSIX
tm_file=i386/udk.h
tmake_file="i386/t-i386bare i386/t-crtpic i386/t-udk"
tmake_file="i386/t-crtpic i386/t-udk"
xmake_file=x-svr4
extra_parts="crtbegin.o crtend.o"
install_headers_dir=install-headers-cpio
......@@ -1280,7 +1271,6 @@ i[34567]86-*-sysv*) # Intel 80386's running system V
i386-*-vsta) # Intel 80386's running VSTa kernel
xm_file=i386/xm-vsta.h
tm_file=i386/vsta.h
tmake_file=i386/t-vsta
;;
i[34567]86-*-win32)
xm_defines=POSIX
......@@ -1463,7 +1453,6 @@ ia64*-*-linux*)
;;
ia64*-*-hpux*)
tm_file="ia64/ia64.h svr4.h ia64/sysv4.h ia64/hpux.h"
tmake_file="ia64/t-ia64 ia64/t-hpux"
target_cpu_default="MASK_GNU_AS"
if test x$enable_threads = xyes; then
thread_file='posix'
......@@ -2035,7 +2024,6 @@ mips-sni-sysv4)
tm_file=mips/sni-svr4.h
fi
xm_defines=POSIX
tmake_file=mips/t-mips-gas
if test x$gnu_ld != xyes
then
use_collect2=yes
......@@ -2056,7 +2044,6 @@ mips-sgi-irix5*) # SGI System V.4., IRIX 5
xm_file=mips/xm-iris5.h
xmake_file=mips/x-iris
# mips-tfile doesn't work yet
tmake_file=mips/t-mips-gas
# See comment in mips/iris5.h file.
use_collect2=yes
# if test x$enable_threads = xyes; then
......@@ -2071,8 +2058,7 @@ mips-sgi-irix4loser*) # Mostly like a MIPS.
xm_defines=POSIX
xmake_file=mips/x-iris
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
then :
else
extra_passes="mips-tfile mips-tdump"
fi
......@@ -2092,8 +2078,7 @@ mips-sgi-irix4*) # Mostly like a MIPS.
xm_defines=POSIX
xmake_file=mips/x-iris
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
then :
else
extra_passes="mips-tfile mips-tdump"
fi
......@@ -2112,8 +2097,7 @@ mips-sgi-*) # Mostly like a MIPS.
fi
xm_defines=POSIX
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
then :
else
extra_passes="mips-tfile mips-tdump"
fi
......@@ -2124,7 +2108,6 @@ mips-sgi-*) # Mostly like a MIPS.
;;
mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
tm_file="mips/osfrose.h ${tm_file}"
tmake_file=mips/t-osfrose
extra_objs=halfpic.o
use_collect2=yes
;;
......@@ -2134,8 +2117,7 @@ mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
tm_file="${tm_file} dbx.h"
fi
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
then :
else
tmake_file=mips/t-ultrix
extra_passes="mips-tfile mips-tdump"
......@@ -2148,8 +2130,7 @@ mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
mips-dec-bsd*) # Decstation running 4.4 BSD
tm_file=mips/dec-bsd.h
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
then :
else
tmake_file=mips/t-ultrix
extra_passes="mips-tfile mips-tdump"
......@@ -2191,8 +2172,7 @@ mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
tm_file="${tm_file} dbx.h"
fi
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
then :
else
extra_passes="mips-tfile mips-tdump"
fi
......@@ -2210,8 +2190,7 @@ mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
fi
xm_defines=POSIX
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
then :
else
extra_passes="mips-tfile mips-tdump"
fi
......@@ -2228,10 +2207,8 @@ mips-tandem-sysv4*) # Tandem S2 running NonStop UX
xm_defines=POSIX
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
extra_parts="crtbegin.o crtend.o"
else
tmake_file=mips/t-mips
extra_passes="mips-tfile mips-tdump"
fi
if test x$gnu_ld != xyes
......@@ -2245,8 +2222,7 @@ mips-*-ultrix* | mips-dec-mach3) # Decstation.
tm_file="${tm_file} dbx.h"
fi
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
then :
else
tmake_file=mips/t-ultrix
extra_passes="mips-tfile mips-tdump"
......@@ -2367,8 +2343,7 @@ mips-*-riscos[56789]*) # Default MIPS RISC-OS 5.0.
tm_file="${tm_file} dbx.h"
fi
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
then :
else
extra_passes="mips-tfile mips-tdump"
fi
......@@ -2444,8 +2419,7 @@ mips-*-*) # Default MIPS RISC-OS 4.0.
tm_file="${tm_file} dbx.h"
fi
if test x$gas = xyes
then
tmake_file=mips/t-mips-gas
then :
else
extra_passes="mips-tfile mips-tdump"
fi
......@@ -2969,7 +2943,6 @@ sparc-*-solaris2*)
;;
sparc-*-sunos4.0*)
tm_file=sparc/sunos4.h
tmake_file=sparc/t-sunos40
use_collect2=yes
;;
sparc-*-sunos4*)
......@@ -3022,11 +2995,9 @@ sparc86x-*-elf*)
extra_parts="crtbegin.o crtend.o"
;;
sparc64-*-aout*)
tmake_file=sparc/t-sp64
tm_file=sparc/sp64-aout.h
;;
sparc64-*-elf*)
tmake_file=sparc/t-sp64
tm_file=sparc/sp64-elf.h
extra_parts="crtbegin.o crtend.o"
;;
......@@ -3107,7 +3078,6 @@ vax-*-netbsd*)
use_collect2=yes
;;
vax-*-openbsd*)
tmake_file="${tmake_file} vax/t-openbsd"
tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
float_format=vax
use_collect2=yes
......
LIBGCC1 =
CROSS_LIBGCC1 =
# We need crt0.o.
LIBGCC1_TEST =
LIBGCC1 =
CROSS_LIBGCC1 =
# We need crt0.o.
LIBGCC1_TEST =
# We want fine grained libraries, so use the new code to build the
# floating point emulation libraries.
FPBIT = fp-bit.c
......
LIBGCC1 =
CROSS_LIBGCC1 =
# We need crt0.o.
LIBGCC1_TEST =
# We don't want to put exit in libgcc.a for VxWorks, because VxWorks
# does not have _exit.
TARGET_LIBGCC2_CFLAGS = -Dexit=unused_exit
......
......@@ -392,23 +392,6 @@ extern const char *alpha_mlat_string; /* For -mmemory-latency= */
/* Define to enable software floating point emulation. */
#define REAL_ARITHMETIC
/* The following #defines are used when compiling the routines in
libgcc1.c. Since the Alpha calling conventions require single
precision floats to be passed in the floating-point registers
(rather than in the general registers) we have to build the
libgcc1.c routines in such a way that they know the actual types
of their formal arguments and the actual types of their return
values. Otherwise, gcc will generate calls to the libgcc1.c
routines, passing arguments in the floating-point registers,
but the libgcc1.c routines will expect their arguments on the
stack (where the Alpha calling conventions require structs &
unions to be passed). */
#define FLOAT_VALUE_TYPE double
#define INTIFY(FLOATVAL) (FLOATVAL)
#define FLOATIFY(INTVAL) (INTVAL)
#define FLOAT_ARG_TYPE double
/* Define the size of `int'. The default is the same as the word size. */
#define INT_TYPE_SIZE 32
......
......@@ -4,13 +4,5 @@
# Even LANG_EXTRA_HEADERS may be temporary.
USER_H=$(LANG_EXTRA_HEADERS)
# We don't want this one either.
INSTALL_ASSERT_H=
CROSS_LIBGCC1 = libgcc1-asm.a
LIBGCC1 = libgcc1-asm.a
LIB1ASMSRC = alpha/lib1funcs.asm
LIB1ASMFUNCS = _divqu _divq _divlu _divl _remqu _remq _remlu _reml
# Do not build libgcc1. Let gcc generate those functions.
LIBGCC1 =
CROSS_LIBGCC1 =
LIBGCC1_TEST =
EXTRA_HEADERS = $(srcdir)/config/alpha/va_list.h
# Do not build libgcc1.
LIBGCC1 =
CROSS_LIBGCC1 =
LIB2FUNCS_EXTRA = tramp.s
; libgcc1 routines for ARC cpu.
; libgcc routines for ARC cpu.
/* Copyright (C) 1995, 1997 Free Software Foundation, Inc.
......
CROSS_LIBGCC1 = libgcc1-asm.a
LIB1ASMSRC = arc/lib1funcs.asm
LIB1ASMFUNCS = _mulsi3 _umulsidi3 _udivsi3 _divsi3 _umodsi3 _modsi3 _divmod_tools
......
@ libgcc1 routines for ARM cpu.
@ libgcc routines for ARM cpu.
@ Division routines, written by Richard Earnshaw, (rearnsha@armltd.co.uk)
/* Copyright 1995, 1996, 1998, 1999, 2000 Free Software Foundation, Inc.
......
CROSS_LIBGCC1 = libgcc1-asm.a
LIB1ASMSRC = arm/lib1funcs.asm
LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _call_via_rX _interwork_call_via_rX
......
CROSS_LIBGCC1 = libgcc1-asm.a
LIB1ASMSRC = arm/lib1funcs.asm
LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func _call_via_rX _interwork_call_via_rX
......@@ -30,6 +29,6 @@ LIBGCC = stmp-multilib
INSTALL_LIBGCC = install-multilib
# Currently there is a bug somwehere in GCC's alias analysis
# or scheduling code that is breaking _fpmul_parts in libgcc1.c.
# or scheduling code that is breaking _fpmul_parts in fp-bit.c.
# Disabling function inlining is a workaround for this problem.
TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline