96 Commits

Author SHA1 Message Date
Paul Brook
1e874273f8 arm.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
2011-09-13  Paul Brook  <paul@codesourcery.com>
 
	gcc/
	* config/arm/arm.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
	(ARM_TARGET2_DWARF_FORMAT): Provide default definition.
	* config/arm/linux-eabi.h (ARM_TARGET2_DWARF_FORMAT): Define.
	* config/arm/symbian.h (ARM_TARGET2_DWARF_FORMAT): Define.
	* config/arm/uclinux-eabi.h(ARM_TARGET2_DWARF_FORMAT): Define.
	* config/arm/t-bpabi (EXTRA_HEADERS): Add unwind-arm-common.h.
	* config/arm/t-symbian (EXTRA_HEADERS): Add unwind-arm-common.h.
	* config/c6x/c6x.c (c6x_output_file_unwind): Don't rely on dwarf2 code
	enabling unwind tables.
	(c6x_debug_unwind_info): New function.
	(TARGET_ARM_EABI_UNWINDER): Define.
	(TARGET_DEBUG_UNWIND_INFO): Define.
	* config/c6x/c6x.h (DWARF_FRAME_RETURN_COLUMN): Define.
	(TARGET_EXTRA_CFI_SECTION): Remove.
	* config/c6x/t-c6x-elf (EXTRA_HEADERS): Set.
	* ginclude/unwind-arm-common.h: New file.

	libgcc/
	* config.host (tic6x-*-*): Add c6x/t-c6x-elf.  Set unwind_header.
	* unwind-c.c (PERSONALITY_FUNCTION): Use UNWIND_POINTER_REG.
	* unwind-arm-common.inc: New file.
	* config/arm/unwind-arm.c: Use unwind-arm-common.inc.
	* config/arm/unwind-arm.h: Use unwind-arm-common.h.
	(_GLIBCXX_OVERRIDE_TTYPE_ENCODING): Define.
	* config/c6x/libunwind.S: New file.
	* config/c6x/pr-support.c: New file.
	* config/c6x/unwind-c6x.c: New file.
	* config/c6x/unwind-c6x.h: New file.
	* config/c6x/t-c6x-elf: New file.


	libstdc++-v3/
	* libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
	* libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
	* libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
	__ARM_EABI_UNWINDER__ check.
	(parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
	(get_ttype_entry): Use generic implementation on ARM EABI.
	(check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
	UNWIND_STACK_REG.
	(PERSONALITY_FUNCTION): Set ttype_base.

From-SVN: r178808
2011-09-13 12:48:33 +00:00
Rainer Orth
c6412d8676 sync.c: Move to ../libgcc.
gcc:
	* config/sync.c: Move to ../libgcc.
	* Makefile.in (libgcc.mvars): Remove LIBGCC_SYNC,
	LIBGCC_SYNC_CFLAGS.
	* config/mips/t-libgcc-mips16 (LIBGCC_SYNC, LIBGCC_SYNC_CFLAGS):
	Remove.

	libgcc:
	* sync.c: New file.
	* config/mips/t-mips16: New file.
	* config.host (mips64*-*-linux*): Add mips/t-mips16 to tmake_file.
	(mips*-*-linux*): Likewise.
	(mips*-sde-elf*): Likewise.
	(mipsisa32-*-elf*): Join with mipsisa32r2-*-elf*,
	mipsisa64-*-elf*, mipsisa64r2-*-elf*.
	Add mips/t-mips16 to tmake_file.
	(mipsisa64sb1-*-elf*): Add mips/t-mips16 to tmake_file.
	(mips-*-elf*): Likewise.
	(mips64-*-elf*): Likewise.
	(mips64orion-*-elf*): Likewise.
	(mips*-*-rtems*): Likewise.
	(mipstx39-*-elf*): Likewise.
	* Makefile.in: Use SYNC instead of LIBGCC_SYNC.
	($(libgcc-sync-size-funcs-o)): Use SYNC_CFLAGS instead of
	LIBGCC_SYNC_CFLAGS.
	Use $(srcdir) to refer to sync.c.
	Use $<.
	($(libgcc-sync-funcs-o)): Likewise.
	($(libgcc-sync-size-funcs-s-o)): Likewise.
	($(libgcc-sync-funcs-s-o)): Likewise.

From-SVN: r177601
2011-08-09 15:40:30 +00:00
Andreas Schwab
3cb6e5bd17 config.host (ia64*-*-linux*): Move ia64/t-glibc after t-libunwind.
* config.host (ia64*-*-linux*): Move ia64/t-glibc after
t-libunwind.

From-SVN: r177598
2011-08-09 14:26:41 +00:00
Richard Sandiford
ed39fbad9a libgcc/
* config.host (*-*-darwin*, *-*-freebsd*, *-*-linux*, frv-*-*linux*)
	(*-*-kfreebsd*-gnu, *-*-knetbsd*-gnu, *-*-gnu*, *-*-kopensolaris*-gnu):
	Add to tmake_file rather than overriding it.

From-SVN: r177533
2011-08-06 18:41:36 +00:00
Rainer Orth
aca0b0b315 soft-fp: Move to ../libgcc.
gcc:
	* config/soft-fp: Move to ../libgcc.
	* Makefile.in (SFP_MACHINE): Remove.
	(libgcc-support): Remove $(SFP_MACHINE) dependency.
	* config/arm/sfp-machine.h: Move to ../libgcc/config/arm.
	* config/arm/t-arm-softfp: Move to
	../libgcc/config/arm/t-softfp.
	* config/c6x/sfp-machine.h: Move to ../libgcc/config/c6x.
	* config/c6x/t-c6x-softfp: Remove.
	* config/i386/sfp-machine.h: Move to ../libgcc/config/i386.
	* config/i386/t-fprules-softfp: Move to
	../libgcc/config/t-softfp-tf.
	* config/ia64/sfp-machine.h: Move to ../libgcc/config/ia64.
	* config/ia64/t-fprules-softfp: Remove.
	* config/lm32/sfp-machine.h: Move to ../libgcc/config/lm32.
	* config/lm32/t-fprules-softfp: Remove.
	* config/moxie/sfp-machine.h: Remove.
	* config/moxie/t-moxie-softfp: Remove.
	* config/rs6000/darwin-ldouble-format: Move to
	../libgcc/config/rs6000/ibm-ldouble-format.
	* config/rs6000/darwin-ldouble.c: Move to
	../libgcc/config/rs6000/ibm-ldouble.c
	* config/rs6000/libgcc-ppc-glibc.ver: Move to ../libgcc/config/rs6000.
	* config/rs6000/libgcc-ppc64.ver: Likewise.
	* config/rs6000/sfp-machine.h: Likewise.
	* config/rs6000/t-aix43 (SHLIB_MAPFILES): Remove
	$(srcdir)/config/rs6000/libgcc-ppc64.ver.
	(LIB2FUNCS_EXTRA): Remove.
	(TARGET_LIBGCC2_CFLAGS): Remove.
	* config/rs6000/t-aix52: Likewise
	* config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Remove
	$(srcdir)/config/rs6000/darwin-ldouble.c.
	(SHLIB_MAPFILES): Remove.
	* config/rs6000/t-darwin64 (LIB2FUNCS_EXTRA): Remove
	$(srcdir)/config/rs6000/darwin-ldouble.c.
	* config/rs6000/t-fprules-softfp: Move to
	../libgcc/config/t-softfp-sfdf.
	* config/rs6000/t-freebsd: Move to ../libgcc/config/rs6000.
	* config/rs6000/t-linux64 (softfp_wrap_start, softfp_wrap_end): Remove.
	* config/rs6000/t-ppccomm (LIB2FUNCS_EXTRA): Remove
	$(srcdir)/config/rs6000/darwin-ldouble.c.
	* config/score/sfp-machine.h: Move to ../libgcc/config/score.
	* config/score/t-score-softfp: Remove.
	* config.gcc (arm*-*-linux*): Remove arm/t-arm-softfp,
	soft-fp/t-softfp from tmake_file.
	(arm*-*-uclinux*): Likewise.
	(arm*-*-ecos-elf): Likewise.
	(arm*-*-eabi*, arm*-*-symbianelf*): Likewise.
	(arm*-*-rtems*): Likewise.
	(arm*-*-elf): Likewise.
	(moxie-*-elf): Remove moxie/t-moxie-softfp, soft-fp/t-softfp from
	tmake_file.
	(moxie-*-uclinux*): Likewise.
	(moxie-*-rtems*): Likewise.
	(lm32-*-elf*): Remove lm32/t-fprules-softfp, soft-fp/t-softfp from
	tmake_file.
	(lm32-*-rtems*): Likewise.
	(lm32-*-uclinux*): Likewise.
	(powerpc-*-freebsd*): Remove rs6000/t-freebsd,
	rs6000/t-fprules-softfp, soft-fp/t-softfp from tmake_file.
	(powerpc-*-linux*, powerpc64-*-linux*): Remove
	rs6000/t-fprules-softfp, soft-fp/t-softfp from tmake_file.
	(score-*-elf): Remove score/t-score-softfp, soft-fp/t-softfp from
	tmake_file.
	(tic6x-*-elf): Remove c6x/t-c6x-softfp, soft-fp/t-softfp from
	tmake_file.
	(tic6x-*-uclinux): Likewise.
	(i[34567]86-*-darwin*, x86_64-*-darwin*): Remove i386/t-fprules-softfp,
	soft-fp/t-softfp from tmake_file.
	(i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu)
	(x86_64-*-kfreebsd*-gnu, i[34567]86-*-gnu*): Likewise.
	(i[34567]86-*-solaris2*, x86_64-*-solaris2.1[0-9]*): Likewise.
	(i[34567]86-*-cygwin*, i[34567]86-*-mingw*, x86_64-*-mingw*):
	Likewise.
	(i[34567]86-*-freebsd*, x86_64-*-freebsd*): Likewise.

	libgcc:
	* config/t-softfp: Remove.
	* soft-fp: Moved from ../gcc/config.
	* soft-fp/README: Remove t-softfp reference.
	* soft-fp/t-softfp: Move to config/t-softfp.
	(softfp_machine_header): Remove.
	(softfp_file_list): Remove config subdir.
	(soft-fp-objects): New variable.
	($(soft-fp-objects)): Set INTERNAL_CFLAGS.
	(LIB2FUNCS_EXTRA): Add to LIB2ADD instead.
	(SFP_MACHINE, $(SFP_MACHINE)): Remove.
	* config/t-softfp-excl: New file.
	* config/t-softfp-sfdf: New file.
	* config/t-softfp-tf: New file.
	* config/no-sfp-machine.h: New file.
	* config/arm/sfp-machine.h: New file.
	* config/arm/t-softfp: New file.
	* config/c6x/sfp-machine.h: New file.
	* config/i386/32/t-fprules-softfp: Rename to ...
	* config/i386/32/t-softfp: ... this.
	(tifunctions, LIB2ADD): Remove.
	(softfp_int_modes): Override.
	* config/i386/64/t-softfp-compat (tf-functions): Remove config
	subdir.
	* config/i386/64/eqtf2.c: Likewise.
	* config/i386/64/getf2.c: Likewise.
	* config/i386/64/letf2.c: Likewise.
	* config/ia64/sft-machine.h: New file.
	* config/ia64/t-fprules-softfp: Rename to ...
	* config/ia64/t-softfp: ... this.
	* config/lm32/sfp-machine.h: New file.
	* config/moxie/t-moxie-softfp: Remove.
	* config/rs6000/ibm-ldouble-format: New file.
	* config/rs6000/ibm-ldouble.c: New file.
	* config/rs6000/libgcc-ppc-glibc.ver: New file
	* config/rs6000/libgcc-ppc64.ver: New file
	* config/rs6000/sfp-machine.h: New file.
	* config/rs6000/t-freebsd: New file.
	* config/rs6000/t-ibm-ldouble: New file.
	* config/rs6000/t-ldbl128: Use $(srcdir) to refer to
	libgcc-ppc-glibc.ver.
	* config/rs6000/t-linux64: New file.
	* config/rs6000/t-ppccomm (LIB2ADD): Add
	$(srcdir)/config/rs6000/ibm-ldouble.c.
	* config/rs6000/t-ppccomm-ldbl: New file.
	* config/score/sfp-machine.h: New file.
	* config.host (sfp_machine_header): Explain.
	(arm*-*-linux*): Add t-softfp-sfdf, t-softfp-excl, arm/t-softfp,
	t-softfp to tmake_file.
	(arm*-*-uclinux*): Likewise.
	(arm*-*-ecos-elf): Likewise.
	(arm*-*-eabi*, arm*-*-symbianelf*): Likewise.
	(arm*-*-rtems*): Likewise.
	(arm*-*-elf): Likewise.
	(ia64*-*-linux*): Replace ia64/t-fprules-softfp by ia64/t-softfp
	in tmake_file.
	Add t-softfp-tf, t-softfp-excl, t-softfp to tmake_file.
	(lm32-*-elf*, lm32-*-rtems*): Add t-softfp-sfdf, t-softfp to tmake_file.
	(lm32-*-uclinux*): Likewise.
	(moxie-*-*): Replace moxie/t-moxie-softfp by t-softfp-sfdf,
	t-softfp-excl, t-softfp.
	(powerpc-*-darwin*): Add rs6000/t-ibm-ldouble to tmake_file.
	(powerpc64-*-darwin*): Likewise.
	(powerpc-*-freebsd*): Add t-softfp-sfdf, t-softfp-excl, t-softfp
	to tmake_file.
	(powerpc-*-eabisimaltivec*): Add rs6000/t-ppccomm-ldbl to
	tmake_file.
	(powerpc-*-eabisim*): Likewise.
	(powerpc-*-elf*): Likewise.
	(powerpc-*-eabialtivec*): Likewise.
	(powerpc-xilinx-eabi*): Likewise.
	(powerpc-*-rtems*): Likewise.
	(powerpc-*-linux*, powerpc64-*-linux*): Add t-softfp-sfdf,
	t-softfp-excl, t-softfp to tmake_file.
	(powerpc-wrs-vxworks, powerpc-wrs-vxworksae): Add
	rs6000/t-ppccomm-ldbl to tmake_file.
	(powerpcle-*-elf*): Likewise.
	(powerpcle-*-eabisim*): Likewise.
	(powerpcle-*-eabi*): Likewise.
	(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
	rs6000/t-ibm-ldouble to tmake_file.
	(rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
	(rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
	(score-*-elf): Add t-softfp-sfdf, t-softfp-excl, t-softfp to tmake_file.
	(tic6x-*-*): Likewise.
	(i[34567]86-*-darwin*, x86_64-*-darwin*,
	i[34567]86-*-kfreebsd*-gnu, x86_64-*-kfreebsd*-gnu,
	i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-gnu*,
	i[34567]86-*-solaris2*, x86_64-*-solaris2.1[0-9]*,
	i[34567]86-*-cygwin*, i[34567]86-*-mingw*, x86_64-*-mingw*,
	i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add t-softfp-tf,
	t-softfp to tmake_file.
	* configure.ac (sfp_machine_header): Provide default if unset.
	Substitute.
	Link sfp-machine.h to config/$sfp_machine_header.
	* configure: Regenerate.

From-SVN: r177452
2011-08-05 15:13:48 +00:00
Rainer Orth
569dc49461 Makefile.in (FPBIT_FUNCS, [...]): Remove.
gcc:
	* Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS, TPBIT_FUNCS): Remove.
	(libgcc-support): Remove $(FPBIT), $(DPBIT), $(TPBIT)
	dependencies.
	(libgcc.mvars): Remove FPBIT, FPBIT_FUNCS, DPBIT, DPBIT_FUNCS,
	TPBIT, TPBIT_FUNCS.
	* config/fp-bit.c, config/fp-bit.h: Move to ../libgcc.
	* config/arm/t-strongarm-elf (FPBIT, DPBIT, dp-bit.c, fp-bit.c):
	Remove.
	* config/arm/t-vxworks: Likewise.
	* config/arm/t-wince-pe: Likewise.
	* config/avr/t-avr (fp-bit.c, FPBIT): Remove.
	* config/bfin/t-bfin (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
	* config/bfin/t-bfin-elf: Likewise.
	* config/bfin/t-bfin-linux: Likewise.
	* config/bfin/t-bfin-uclinux: Likewise.
	* config/cris/t-cris (FPBIT, DPBIT, dp-bit.c, tmplibgcc_fp_bit.c):
	Remove.
	* config/fr30/t-fr30: Likewise.
	* config/frv/t-frv: Likewise.
	* config/h8300/t-h8300 (FPBIT, fp-bit.c): Remove.
	* config/iq2000/t-iq2000 (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
	* config/m32c/t-m32c: Likewise.
	* config/m32r/t-linux: (LIB2FUNCS_EXTRA, fp-bit.c, dp-bit.c): Remove.
	* config/m32r/t-m32r (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
	* config/mcore/t-mcore: Likewise.
	* config/mep/t-mep: Likewise.
	* config/microblaze/t-microblaze: Likewise.
	* config/mips/t-linux64 (TPBIT, tp-bit.c): Remove.
	* config/mips/t-mips (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
	* config/mips/t-sdemtk (FPBIT, DPBIT): Remove.
	* config/mips/t-sr71k (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
	* config/mn10300/t-linux: Remove.
	* config/mn10300/t-mn10300 (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
	* config/pdp11/t-pdp11: Likewise.
	* config/picochip/t-picochip (FPBIT, fp-bit.c): Remove.
	* config/rs6000/ppc64-fp.c: Move to ../libgcc/config/rs6000.
	* config/rs6000/t-aix43 (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
	(LIB2FUNCS_EXTRA): Remove $(srcdir)/config/rs6000/ppc64-fp.c.
	* config/rs6000/t-aix52: Likewise.
	* config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Remove
	$(srcdir)/config/rs6000/ppc64-fp.c.
	* config/rs6000/t-fprules-fpbit: Remove.
	* config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Remove.
	* config/rs6000/t-lynx (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
	* config/sh/t-netbsd (FPBIT, DPBIT): Remove.
	* config/sh/t-sh (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
	* config/sparc/t-elf: Likewise.
	* config/sparc/t-leon: Likewise.
	* config/sparc/t-leon3: Likewise.
	* config/spu/t-spu-elf: Likewise.
	(DPBIT_FUNCS): Remove.
	* config/stormy16/t-stormy16 (FPBIT, DPBIT, dp-bit.c, fp-bit.c): Remove.
	* config/v850/t-v850: Likewise.
	* config.gcc (avr-*-rtems*): Add avr/avr-lib.h to libgcc_tm_file.
	(avr-*-*): Likewise.
	(h8300-*-rtems*): Set libgcc_tm_file.
	(h8300-*-elf*): Likewise.
	(powerpc-*-eabisimaltivec*): Remove rs6000/t-fprules-fpbit from
	tmake_file.
	(powerpc-*-eabisim*): Likewise.
	(powerpc-*-elf*): Likewise.
	(powerpc-*-eabialtivec*): Likewise.
	(powerpc-xilinx-eabi*): Likewise.
	(powerpc-*-eabi*): Likewise.
	(powerpc-*-rtems*): Likewise.
	(powerpc-wrs-vxworks, powerpc-wrs-vxworksae): Likewise.
	(powerpcle-*-elf*): Likewise.
	(powerpcle-*-eabisim*): Likewise.
	(powerpcle-*-eabi*): Likewise.
	(rx-*-elf*): Add rx/rx-lib.h to libgcc_tm_file.
	(am33_2.0-*-linux*): Remove mn10300/t-linux from tmake_file.
	* doc/fragments.texi (Target Fragment, Floating Point Emulation):
	Remove.

	gcc/po:
	* EXCLUDES (config/fp-bit.c, config/fp-bit.h): Remove.

	libgcc:
	* Makefile.in (double_type_size, long_double_type_size): Set.
	Remove $(fpbit-in-libgcc) support.
	(FPBIT_FUNCS, DPBIT_FUNCS, TPBIT_FUNCS): New variables.
	(fpbit-src): New variable.
	($(fpbit-o), $(fpbit-s-o)): Use $(fpbit-src) instead of $(FPBIT).
	Compile with -DFLOAT $(FPBIT_CFLAGS).
	Use $<.
	($(dpbit-o), $(dpbit-s-o)): Use $(fpbit-src) instead of $(DPBIT).
	Compile with $(FPBIT_CFLAGS).
	Use $<.
	($(tpbit-o), $(tpbit-s-o): Use $(fpbit-src) instead of $(TPBIT).
	Compile with -DFLOAT $(TPBIT_CFLAGS).
	Use $<.
	* configure.ac (double_type_size, long_double_type_size):
	Determine and substitute.
	* configure: Regenerate.
	* fp-bit.c, fp-bit.h: New files.
	* config/avr/avr-lib.h, config/h8300/h8300-lib.h: New files.
	* config/mips/t-irix6 (TPBIT, $(gcc_objdir)/tp-bit.c): Remove.
	* config/mips/t-mips: New file.
	* config/mips/t-sdemtk: New file.
	* config/rs6000/ppc64-fp.c: New file.
	* config/rs6000/t-darwin (LIB2ADD): Add
	$(srcdir)/config/rs6000/ppc64-fp.c.
	* config/rs6000/t-ppc64-fp: New file.
	* config/rx/rx-lib.h: New file.
	* config/rx/t-rx (FPBIT): Set to true.
	($(gcc_objdir)/fp-bit.c): Remove.
	(DPBIT): Set to true only with -m64bit-doubles.
	($(gcc_objdir)/dp-bit.c): Remove.
	* config/sparc/t-softfp: Remove.
	* config/spu/t-elf: New file.
	* config/t-fdpbit, config/t-fpbit: New files.
	* config.host (m32c*-*-*): Add t-fdpbit to tmake_file.
	(mips*-*-*): Likewise.
	(arm-wrs-vxworks): Likewise.
	(arm*-*-freebsd*): Likewise.
	(avr-*-rtems*): Add t-fpbit to tmake_file.
	(avr-*-*): Likewise.
	(bfin*-elf*): Add t-fdpbit to tmake_file.
	(bfin*-uclinux*): Likewise.
	(bfin*-linux-uclibc*): Likewise.
	(bfin*-rtems*): New case.
	Add t-fdpbit to tmake_file.
	(bfin*-*): Add t-fdpbit to tmake_file.
	(crisv32-*-elf): Likewise.
	(cris-*-linux*): Likewise.
	(fr30-*-elf): Likewise.
	(frv-*-elf, frv-*-*linux*): Likewise.
	(h8300-*-rtems*, h8300-*-elf*): Add t-fpbit to tmake_file.
	(iq2000*-*-elf*): Add t-fdpbit to tmake_file.
	(m32r-*-elf*): Likewise.
	(m32rle-*-elf*): Likewise.
	(m32r-*-linux*): Likewise.
	(m32rle-*-linux*): Likewise.
	(mcore-*-elf): Add t-fdpbit to tmake_file.
	(microblaze*-*-*): Likewise.
	(mips-sgi-irix6.5*): Add t-tpbit to tmake_file.
	(mips*-*-netbsd*): Add mips/t-mips to tmake_file.
	(mips64*-*-linux*): Also handle mipsisa64*-*-linux*.
	Fix typo.
	Add mips/t-tpbit to tmake-file.
	(mips*-*-linux*): Fix typo.
	(mips*-sde-elf*): New case
	Add mips/t-sdemtk unless using newlib.
	(mipsisa64sr71k-*-elf*): Add t-fdpbit to tmake_file.
	(mipsisa64sb1-*-elf*): Add mips/t-mips to tmake_file.
	(mn10300-*-*): Likewise.
	(pdp11-*-*): Likewise.
	(picochip-*-*): Add t-fpbit to tmake_file.
	(powerpc-*-eabisimaltivec*): Likewise.
	(powerpc-*-eabisim*): Likewise.
	(powerpc-*-elf*): Likewise.
	(powerpc-*-eabialtivec*): Likewise.
	(powerpc-xilinx-eabi*): New case.
	Add t-fdpbit to tmake_file.
	(powerpc-*-eabi*):  Add t-fdpbit to tmake_file.
	(powerpc-*-rtems*): Likewise.
	(powerpc-*-linux*, powerpc64-*-linux*): Add rs6000/t-ppc64-fp to
	tmake_file.
	(powerpc-wrs-vxworks, powerpc-wrs-vxworksae): Add t-fdpbit to
	tmake_file.
	(powerpc-*-lynxos*): Likewise.
	(powerpcle-*-elf*): Likewise.
	(powerpcle-*-eabisim*): Likewise.
	(powerpcle-*-eabi*): Likewise.
	(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
	t-fdpbit, rs6000/t-ppc64-fp to tmake_file.
	(rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
	(rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
	(rx-*-elf): Add t-fdpbit to tmake_file.
	(sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*)
	(sh[2346lbe]*-*-linux*, sh-*-netbsdelf*, shl*-*-netbsdelf*)
	(sh5-*-netbsd*, sh5l*-*-netbsd*, sh64-*-netbsd*)
	(sh64l*-*-netbsd*): Add t-fdpbit to tmake_file except on
	sh*-*-netbsd*.
	(sh-*-rtems*): Add t-fdpbit to tmake_file.
	(sh-wrs-vxworks): Likewise.
	(sparc-*-elf*): Replace sparc/t-softfp by t-fdpbit in tmake_file.
	(sparc-*-linux*): Add t-fdpbit to tmake_file for *-leon*.
	(sparc-*-rtems*, sparc64-*-rtems*): Split off ...
	(sparc64-*-rtems*): ... new case.
	(sparc-*-rtems*): Add t-fdpbit to tmake_file.
	(spu-*-elf*): Likewise.
	Add spu/t-elf to tmake_file.
	(v850*-*-*): Add t-fdpbit to tmake_file.
	(xstormy16-*-elf): Likewise.
	(am33_2.0-*-linux*): Add t-fdpbit to tmake_file.
	(mep*-*-*): Likewise.

From-SVN: r177448
2011-08-05 14:53:09 +00:00
Rainer Orth
201cdb7438 Makefile.in (UNWIND_H): Remove.
gcc:
	* Makefile.in (UNWIND_H): Remove.
	(LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): Move to
	../libgcc/Makefile.in.
	(LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL): Likewise.
	(LIBUNWINDDEP): Remove.
	(libgcc-support): Remove LIB2ADDEH, $(srcdir)/emutls.c dependencies.
	(libgcc.mvars): Remove LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED,
	LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL.
	(stmp-int-hdrs): Remove $(UNWIND_H) dependency.
	Don't copy $(UNWIND_H).
	* config.gcc (ia64*-*-linux*): Remove with_system_libunwind
	handling.
	* configure.ac (GCC_CHECK_UNWIND_GETIPINFO): Remove.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* emutls.c, unwind-c.c, unwind-compat.c, unwind-compat.h,
	unwind-dw2-fde-compat.c, unwind-dw2-fde-glibc.c, unwind-dw2-fde.c,
	unwind-dw2-fde.h, unwind-dw2.c, unwind-dw2.h, unwind-generic.h,
	unwind-pe.h, unwind-sjlj.c, unwind.inc: Move to ../libgcc.
	* unwind-dw2-fde-darwin.c: Move to ../libgcc/config.
	* config/arm/libunwind.S, config/arm/pr-support.c,
	config/arm/unwind-arm.c, config/arm/unwind-arm.h: Move to
	../libgcc/config/arm.
	* config/arm/t-bpabi (UNWIND_H, LIB2ADDEH): Remove.
	* config/arm/t-symbian (UNWIND_H, LIB2ADDEH): Remove.
	* config/frv/t-frv ($(T)frvbegin$(objext)): Use
	$(srcdir)/../libgcc to refer to unwind-dw2-fde.h.
	($(T)frvend$(objext)): Likewise.
	* config/ia64/t-glibc (LIB2ADDEH): Remove.
	* config/ia64/t-glibc-libunwind: Move to ../libgcc/config/ia64.
	* config/ia64/fde-glibc.c, config/ia64/fde-vms.c,
	config/ia64/unwind-ia64.c, config/ia64/unwind-ia64.h: Move to
	../libgcc/config/ia64.
	* config/ia64/t-hpux (LIB2ADDEH): Remove.
	* config/ia64/t-ia64 (LIB2ADDEH): Remove.
	* config/ia64/t-vms (LIB2ADDEH): Remove.
	* config/ia64/vms.h (UNW_IVMS_MODE,
	MD_UNW_COMPATIBLE_PERSONALITY_P): Remove.
	* config/picochip/t-picochip (LIB2ADDEH): Remove.
	* config/rs6000/aix.h (R_LR, MD_FROB_UPDATE_CONTEXT): Remove.
	* config/rs6000/t-darwin (LIB2ADDEH): Remove.
	* config/rs6000/darwin-fallback.c: Move to ../libgcc/config/rs6000.
	* config/sh/t-sh ($(T)unwind-dw2-Os-4-200.o): Use
	$(srcdir)/../libgcc to refer to unwinder sources.
	* config/spu/t-spu-elf (LIB2ADDEH): Remove.
	* config/t-darwin (LIB2ADDEH): Remove.
	* config/t-freebsd (LIB2ADDEH): Remove.
	* config/t-libunwind (LIB2ADDEH, LIB2ADDEHSTATIC): Remove.
	* config/t-libunwind-elf: Move to ../libgcc/config.
	* config/t-linux (LIB2ADDEH): Remove.
	* config/t-sol2 (LIB2ADDEH): Remove.
	* config/xtensa/t-xtensa (LIB2ADDEH): Remove.
	* system.h (MD_FROB_UPDATE_CONTEXT): Poison.

	gcc/po:
	* EXCLUDES (unwind-c.c, unwind-dw2-fde-darwin.c)
	(unwind-dw2-fde-glibc.c, unwind-dw2-fde.c, unwind-dw2-fde.h)
	(unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h): Remove.

	libgcc:
	* Makefile.in (LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): New
	variables.
	(LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL): New variables.
	(LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): Add $(srcdir)/emutls.c.
	(install-unwind_h): New target.
	(all): Depend on it.
	* config.host (unwind_header): New variable.
	(*-*-freebsd*): Set tmake_file to t-eh-dw2-dip.
	(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
	*-*-gnu*): Likewise, also for *-*-kopensolaris*-gnu.
	(*-*-solaris2*): Add t-eh-dw2-dip to tmake_file.
	(arm*-*-linux*): Add arm/t-bpabi for arm*-*-linux-*eabi.
	Set unwind_header.
	(arm*-*-uclinux*): Add arm/t-bpabi for arm*-*-uclinux*eabi.
	Set unwind_header.
	(arm*-*-eabi*, arm*-*-symbianelf*): Add arm/t-bpabi for
	arm*-*-eabi*.
	Add arm/t-symbian to tmake_file for arm*-*-symbianelf*.
	Set unwind_header.
	(ia64*-*-elf*): Add ia64/t-eh-ia64 to tmake_file.
	(ia64*-*-freebsd*): Likewise.
	(ia64*-*-linux*): Add ia64/t-glibc, ia64/t-eh-ia64, t-libunwind to
	tmake_file.
	Add t-libunwind-elf, ia64/t-glibc-libunwind unless
	$with_system_libunwind.
	(ia64*-*-hpux*): Set tmake_file.
	(ia64-hp-*vms*): Add ia64/t-eh-ia64 to tmake_file.
	(picochip-*-*): Set tmake_file.
	(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Set
	md_unwind_header.
	(rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
	(rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
	(s390x-ibm-tpf*): Add t-eh-dw2-dip to tmake_file.
	(xtensa*-*-elf*): Set tmake_file.
	(xtensa*-*-linux*): Likewise.
	* configure.ac: Include ../config/unwind_ipinfo.m4.
	Call GCC_CHECK_UNWIND_GETIPINFO.
	Link unwind.h to $unwind_header.
	* configure: Regenerate.
	* emutls.c, unwind-c.c, unwind-compat.c, unwind-compat.h,
	unwind-dw2-fde-compat.c, unwind-dw2-fde-dip.c, unwind-dw2-fde.c,
	unwind-dw2-fde.h, unwind-dw2.c, unwind-dw2.h, unwind-generic.h,
	unwind-pe.h, unwind-sjlj.c, unwind.inc: New files.
	* config/unwind-dw2-fde-darwin.c: New file.
	* config/arm/libunwind.S, config/arm/pr-support.c,
	config/arm/t-bpabi, config/arm/t-symbian, config/arm/unwind-arm.c,
	config/arm/unwind-arm.h,: New files.
	* config/ia64/fde-glibc.c, config/ia64/fde-vms.c,
	config/ia64/t-eh-ia64, config/ia64/t-glibc,
	config/ia64/t-glibc-libunwind, config/ia64/t-hpux,
	config/ia64/t-vms, config/ia64/unwind-ia64.c,
	config/ia64/unwind-ia64.h: New files.
	* config/picochip/t-picochip: New file.
	* config/rs6000/aix-unwind.h, config/rs6000/darwin-fallback.c: New
	files.
	* config/rs6000/t-darwin (LIB2ADDEH): Set.
	* config/s390/t-tpf (LIB2ADDEH): Remove.
	* config/t-darwin (LIB2ADDEH): Set.
	* config/t-eh-dw2-dip: New file.
	* config/t-libunwind, config/t-libunwind-elf: New files.
	* config/t-sol2 (LIB2ADDEH): Remove.
	* config/xtensa/t-xtensa: New file.

	gcc/ada:
	* gcc-interface/Makefile.in (raise-gcc.o): Search
	$(srcdir)/../libgcc.

	libgo:
	* Makefile.am (AM_CFLAGS): Search $(srcdir)/../libgcc.
	* Makefile.in: Regenerate.

	libjava:
	* configure.ac (GCC_UNWIND_INCLUDE): Rename to
	LIBGCC_UNWIND_INCLUDE.
	Point to $(multi_basedir)/./libjava/../libgcc.
	* configure: Regenerate.
	* Makefile.am (GCC_UNWIND_INCLUDE): Reflect this.
	* Makefile.in: Regenerate.

	libobjc:
	* Makefile.in (INCLUDES): Search
	$(srcdir)/$(MULTISRCTOP)../libgcc.

	libstdc++-v3:
	* acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
	to $(toplevel_srcdir)/libgcc.
	* configure: Regenerate.

From-SVN: r177447
2011-08-05 14:37:48 +00:00
Julian Brown
655b30bfde configure.ac (fixed-point): Add ARM support.
gcc/
	* configure.ac (fixed-point): Add ARM support.
	* configure: Regenerate.
	* config/arm/arm.c (arm_fixed_mode_set): New struct.
	(arm_set_fixed_optab_libfunc): New.
	(arm_set_fixed_conv_libfunc): New.
	(arm_init_libfuncs): Initialise fixed-point helper libfuncs with
	ARM-specific names.
	(aapcs_libcall_value): Return sub-word-size fixed-point libcall
	return values in SImode.
	(arm_return_in_msb): Return fixed-point types in the msb.
	(arm_pad_reg_upwards, arm_pad_arg_upwards): Pad fixed-point types
	upwards.
	(arm_scalar_mode_supported_p): Support fixed-point modes.
	(arm_vector_mode_supported_p): Support vector fixed-point modes.
	* config/arm/arm.h (SHORT_FRACT_TYPE_SIZE, FRACT_TYPE_SIZE)
	(LONG_FRACT_TYPE_SIZE, LONG_LONG_FRACT_TYPE_SIZE)
	(SHORT_ACCUM_TYPE_SIZE, ACCUM_TYPE_SIZE, LONG_ACCUM_TYPE_SIZE)
	(LONG_LONG_ACCUM_TYPE_SIZE, MAX_FIXED_MODE_SIZE): Define.
	* config/arm/iterators.md (FIXED, ADDSUB, UQADDSUB, QADDSUB, QMUL):
	New mode iterators.
	(qaddsub_suf): New mode attribute.
	* config/arm/arm-modes.def (FRACT, UFRACT, ACCUM, UACCUM): Declare
	vector modes.
	* config/arm/predicates.md (sat_shift_operator): New predicate.
	* config/arm/arm-fixed.md: New.
	* config/arm/arm.md: Include arm-fixed.md.
	* config/arm/t-arm (MD_INCLUDES): Add arm-fixed.md.

	libgcc/
	* config.host (arm*-*-linux*, arm*-*-uclinux*, arm*-*-eabi*)
	(arm*-*-symbianelf*): Add t-fixedpoint-gnu-prefix makefile fragment.
	* config/arm/bpabi-lib.h (LIBGCC2_FIXEDBIT_GNU_PREFIX): Define.

	gcc/testsuite/
	* gcc.target/arm/fixed-point-exec.c: New test.

From-SVN: r177025
2011-08-01 12:41:30 +00:00
Rainer Orth
e44dbbe18b re PR debug/23205 ([C++/unit-at-a-time] stabs debug info omitted for global const variables)
toplevel:
	* configure: Regenerate.

	config:
	* elf.m4 (target_elf): Remove *-netware*.

	contrib:
	* config-list.mk (i586-netware): Remove.
	(.PHONY): Remove make-script-dir dependency.
	(make-script-dir): Remove.
	($(LIST)): Remove make-script-dir dependency.

	gcc:
	* config.gcc (i[3456x]86-*-netware*): Remove.

	* gthr-nks.h: Remove.
	* configure.ac (enable_threads): Remove nks.
	* configure: Regenerate.

	* config/i386/i386.c (ix86_encode_section_info): Remove netware
	reference.
	* config/i386/i386.h (KEEP_AGGREGATE_RETURN_POINTER): Remove
	<netware.h> reference.

	* config/i386/netware-libgcc.c,
	gcc/config/i386/netware-libgcc.def,
	gcc/config/i386/netware-libgcc.exp, gcc/config/i386/netware.c,
	gcc/config/i386/netware.h, gcc/config/i386/netware.opt,
	gcc/config/i386/nwld.c, gcc/config/i386/nwld.h,
	gcc/config/i386/t-netware, gcc/config/i386/t-nwld: Remove

	* doc/extend.texi (Function Attributes,
	callee_pop_aggregate_return): Remove i?86-netware reference.
	* doc/install.texi (Configuration, --enable-threads): Remove nks.

	gcc/testsuite:
	* g++.dg/ext/bitfield2.C: Remove i?86-*-netware support.
	* g++.dg/ext/bitfield3.C: Likewise.
	* g++.dg/ext/bitfield4.C: Likewise.
	* g++.dg/ext/bitfield5.C: Likewise.
	* g++.dg/other/PR23205.C: Remove *-*-netware* support.
	* g++.dg/other/pr23205-2.C: Likewise.
	* gcc.c-torture/compile/20001109-1.c: Remove dg-xfail-if.
	* gcc.c-torture/compile/20001109-2.c: Likewise.
	* gcc.dg/20040813-1.c: Remove *-*-netware* support.
	* gcc.dg/bitfld-15.c: Remove i?86-*-netware support.
	* gcc.dg/bitfld-16.c: Likewise.
	* gcc.dg/bitfld-17.c: Likewise.
	* gcc.dg/bitfld-18.c: Likewise.
	* gcc.dg/builtins-config.h: Remove Netware support.
	* gcc.dg/cdce1.c: Remove *-*-netware* support.  Update line number.
	* gcc.dg/cdce2.c: Likewise.
	* gcc.dg/cpp/assert4.c: Remove netware support.
	* gcc.dg/debug/pr35154.c: Remove *-*-netware* support.
	* gfortran.dg/debug/pr35154-stabs.f: Remove *-*-netware* support.

	* lib/target-supports.exp (check_visibility_available): Remove
	NetWare support.
	(check_profiling_available): Likewise.

	libgcc:
	* config.host (i[3456x]86-*-netware*): Remove.
	* config/i386/netware-crt0.c, config/i386/t-nwld,
	config/i386/t-slibgcc-nwld: Remove.

	libstdc++-v3:
	* crossconfig.m4 (*-netware): Remove.
	* configure: Regenerate.

From-SVN: r176391
2011-07-18 11:04:18 +00:00
Bernd Schmidt
bcead286bf invoke.texi (C6X Options): New section.
gcc/
	* doc/invoke.texi (C6X Options): New section.
	* doc/md.texi (TI C6X family): New section.
	* config.gcc: Handle tic6x, in particular tic6x-*-elf and
	tic6x-*-uclinux.
	* longlong.h (add_ssaaaa, __umulsidi3, umul_ppmm,
	count_leading_zeros, count_trailing_zeros, UMUL_TIME, UDIV_TIME):
	Provide C6X definitions.
	* config/c6x/c6x.md: New file.
	* config/c6x/constraints.md: New file.
	* config/c6x/predicates.md: New file.
	* config/c6x/c6x-sched.md.in: New file.
	* config/c6x/c6x-sched.md: New file.
	* config/c6x/gensched.sh: New file.
	* config/c6x/c6x-mult.md.in: New file.
	* config/c6x/genmult.sh: New file.
	* config/c6x/c6x-mult.md: New file.
	* config/c6x/sync.md: New file.
	* config/c6x/c6x-protos.h: New file.
	* config/c6x/sfp-machine.h: New file.
	* config/c6x/c6x.c: New file.
	* config/c6x/c6x.h: New file.
	* config/c6x/crti.s: New file.
	* config/c6x/crtn.s: New file.
	* config/c6x/lib1funcs.asm: New file.
	* config/c6x/c6x-modes.def: New file.
	* config/c6x/genopt.sh: New file.
	* config/c6x/c6x.opt: New file.
	* config/c6x/c6x-tables.opt: New file.
	* config/c6x/c6x-opts.h: New file.
	* config/c6x/c6x-isas.def: New file.
	* config/c6x/elf.h: New file.
	* config/c6x/elf-common.h: New file.
	* config/c6x/uclinux-elf.h: New file.
	* config/c6x/t-c6x: New file.
	* config/c6x/t-c6x-elf: New file.
	* config/c6x/t-c6x-uclinux: New file.
	* config/c6x/t-c6x-softfp: New file.
	* config/c6x/gtd.c: New file.
	* config/c6x/gtf.c: New file.
	* config/c6x/ltd.c: New file.
	* config/c6x/ltf.c: New file.
	* config/c6x/ged.c: New file.
	* config/c6x/gef.c: New file.
	* config/c6x/led.c: New file.
	* config/c6x/lef.c: New file.
	* config/c6x/eqd.c: New file.
	* config/c6x/eqf.c: New file.
	* config/c6x/libgcc-c6xeabi.ver: New file.

contrib/
	* gcc_update: Add C6X generated files.
	* contrib/config-list.mk: Add c6x-elf and c6x-uclinux.

libgcc/
	* config.host: Handle tic6x-*-*.
	* config/c6x/c6x-abi.h: New file.

From-SVN: r176308
2011-07-15 09:36:40 +00:00
Rainer Orth
b3fe158425 crtprec.c: Move to ../libgcc/config/i386.
gcc:
	* config/i386/crtprec.c: Move to ../libgcc/config/i386.
	* config/i386/t-crtpc: Remove.
	* config/t-darwin (EXTRA_MULTILIB_PARTS): Remove.
	* config.gcc (i[34567]86-*-darwin*): Remove i386/t-crtpc from
	tmake_file.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-linux*): Likewise.
	(x86_64-*-linux*): Likewise.

	* config/i386/sol2.h (ENDFILE_SPEC): Redefine.
	Handle -mpc32, -mpc64, -mpc80.

	libgcc:
	* config/i386/crtprec.c: New file.
	* config/i386/t-crtpc: Use $(srcdir) to refer to crtprec.c.
	* config.host (i[34567]86-*-darwin*): Add i386/t-crtpc to tmake_file.
	Add crtprec32.o, crtprec64.o, crtprec80.o to extra_parts.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-solaris2*: Likewise.

	gcc/testsuite:
	* gcc.c-torture/execute/990127-2.x: Use -mpc64 on i?86-*-darwin*,
	i?86-*-solaris2*, x86_64-*-darwin*, x86_64-*-solaris2*.

From-SVN: r176242
2011-07-13 17:39:35 +00:00
Rainer Orth
35d8090d78 crtfastmath.c: Move to ../libgcc/config/alpha.
gcc:
	* config/alpha/crtfastmath.c: Move to ../libgcc/config/alpha.
	* config/alpha/t-crtfm: Remove.
	* config/i386/crtfastmath.c: Move to ../libgcc/config/i386.
	* config/i386/t-crtfm: Remove.
	* config/ia64/crtfastmath.c: Move to ../libgcc/config/ia64.
	* config/mips/crtfastmath.c: Move to ../libgcc/config/mips.
	* config/sparc/crtfastmath.c: Move to ../libgcc/config/sparc.
	* config/sparc/t-crtfm: Remove.

	* config.gcc (alpha*-*-linux*): Remove alpha/t-crtfm from tmake_file.
	(alpha*-*-freebsd*): Likewise.
	(i[34567]86-*-darwin*): Remove i386/t-crtfm from tmake_file.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-linux*): Likewise.
	(x86_64-*-linux*): Likewise.
	(x86_64-*-mingw*): Likewise.
	(ia64*-*-elf*): Remove crtfastmath.o from extra_parts.
	(ia64*-*-freebsd*): Likewise.
	(ia64*-*-linux*): Likewise.
	(mips64*-*-linux*): Likewise.
	(mips*-*-linux*): Likewise.
	(sparc-*-linux*): Remove sparc/t-crtfm from tmake_file.
	(sparc64-*-linux*): Likewise.
	(sparc64-*-freebsd*): Likewise.

	libgcc:
	* config/alpha/crtfastmath.c: New file.
	* config/i386/crtfastmath.c: New file.
	* config/ia64/crtfastmath.c: New file.
	* config/mips/crtfastmath.c: New file.
	* config/sparc/crtfastmath.c: New file.

	* config/t-crtfm (crtfastmath.o): Use $(srcdir) to refer to
	crtfastmath.c.
	Add -frandom-seed=gcc-crtfastmath.
	* config/alpha/t-crtfm: Remove.
	* config/i386/t-crtfm: Use $(srcdir) to refer to crtfastmath.c.
	* config/ia64/t-ia64 (crtfastmath.o): Remove.

	* config.host (alpha*-*-linux*): Replace alpha/t-crtfm by t-crtfm.
	(alpha*-dec-osf5.1*): Likewise.
	(alpha*-*-freebsd*): Add t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.
	(i[34567]86-*-darwin*): Add i386/t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.
	(x86_64-*-darwin*): Likewise.
	(x86_64-*-mingw*): Likewise.
	(ia64*-*-elf*): Add t-crtfm to tmake_file.
	(ia64*-*-freebsd*): Likewise.
	(ia64*-*-linux*): Likewise.
	(sparc64-*-freebsd*): Add t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.

From-SVN: r176241
2011-07-13 17:33:38 +00:00
Rainer Orth
e141542e74 darwin-crt2.c: Move to ../libgcc/config/rs6000.
gcc:
	* config/darwin-crt2.c: Move to ../libgcc/config/rs6000.
	* config/darwin-crt3.c: Move to ../libgcc/config.
	* config/t-darwin (EXTRA_MULTILIB_PARTS): Remove.
	($(T)crt3$(objext)): Remove.
	* config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): Remove.
	($(T)crt2$(objext)): Remove.
	* config.gcc (powerpc-*-darwin*): Remove extra_parts.
	(powerpc64-*-darwin*): Likewise.

	gcc/po:
	* EXCLUDES (config/darwin-crt2.c): Remove.

	libgcc:
	* config/darwin-crt3.o: New file.
	* config/rs6000/darwin-crt2.c: New file.
	* config/t-darwin: New file.
	* config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): New variable.
	(crt2.o): New rule.
	* config.host (*-*-darwin*): Add crt3.o to extra_parts.
	(powerpc-*-darwin*): Add crt2.o to extra_parts.
	(powerpc64-*-darwin*): Likewise.

From-SVN: r176239
2011-07-13 16:28:30 +00:00
Rainer Orth
2d1efe2d2d Makefile.in (CRT0STUFF_T_CFLAGS): Remove.
gcc:
	* Makefile.in (CRT0STUFF_T_CFLAGS): Remove.
	($(T)crt0.o, $(T)mcrt0.o, s-crt0): Remove.
	* config/i386/netware-crt0.c: Move to ../libgcc/config/i386.
	* config/i386/t-nwld (CRTSTUFF_T_CFLAGS, CRT0STUFF_T_CFLAGS): Remove.
	(CRT0_S, MCRT0_S): Remove.
	($(T)libgcc.def, $(T)libc.def, $(T)libcpre.def, $(T)posixpre.def):
	Remove.
	(s-crt0): Remove.
	* config.gcc (i[3456x]86-*-netware*): Remove extra_parts.

	libgcc:
	* config/i386/netware-crt0.c: New file.
	* config/i386/t-nwld: Rename to ...
	* config/i386/t-slibgcc-nwld: ... this.
	* config/i386/t-nwld: New file.
	* config.host (i[3456x]86-*-netware*): Add i386/t-slibgcc-nwld to
	tmake_file.
	Add crt0.o, libgcc.def, libc.def, libcpre.def, posixpre.def to
	extra_parts.

From-SVN: r176225
2011-07-13 09:57:08 +00:00
Rainer Orth
2d8d59352b dfp-bit.c, dfp-bit.h: Move to ../libgcc.
gcc:
	* config/dfp-bit.c, config/dfp-bit.h: Move to ../libgcc.
	* config/t-dfprules: Move to ../libgcc/config.
	* config.gcc (i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu,
	i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*,
	i[34567]86-*-kopensolaris*-gnu): Remove t-dfprules from tmake_file.
	(x86_64-*-linux*, x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu):
	Likewise.
	(i[34567]86-*-cygwin*): Likewise.
	(i[34567]86-*-mingw*,  x86_64-*-mingw*): Likewise.
	(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
	* Makefile.in (D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS): Remove.
	(libgcc.mvars): Remove DFP_ENABLE, DFP_CFLAGS, D32PBIT_FUNCS,
	D64PBIT_FUNCS, D128PBIT_FUNCS.

	libgcc:
	* dfp-bit.c, dfp-bit.h: New files.
	* Makefile.in (D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS): New
	variables.
	($(d32pbit-o)): Use $(srcdir) to refer to dfp-bit.c
	($(d64pbit-o)): Likewise.
	($(d128pbit-o)): Likewise.
	* config/t-dfprules: New file.
	* config.host (i[34567]86-*-linux*): Add t-dfprules to tmake_file.
	(i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu,
	i[34567]86-*-gnu*, i[34567]86-*-kopensolaris*-gnu): Likewise.
	(x86_64-*-linux*): Likewise.
	(x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu): Likewise.
	(i[34567]86-*-cygwin*): Likewise.
	(i[34567]86-*-mingw*,  x86_64-*-mingw*): Likewise.
	(powerpc-*-linux*, powerpc64-*-linux*): Likewise.

From-SVN: r176156
2011-07-11 14:40:56 +00:00
Joseph Myers
1e4b2746e0 config.gcc (*local*): Remove.
gcc:
	* config.gcc (*local*): Remove.
	* doc/install-old.texi: Don't mention local configurations.

libgcc:
	* config.host (*local*): Remove.

From-SVN: r175988
2011-07-07 17:33:18 +01:00
Rainer Orth
fbdd5d8715 re PR bootstrap/39150 (Configure scripts have no 64-Bit Solaris defined (only i386-solaris*).)
gcc:
	PR target/39150
	* configure.ac (gcc_cv_as_hidden): Also accept
	x86_64-*-solaris2.1[0-9]*.
	(gcc_cv_as_cfi_directive): Likewise.
	(gcc_cv_as_comdat_group_group): Likewise.
	(set_have_as_tls): Likewise.
	* configure: Regenerate.
	* config.gcc (i[34567]86-*-solaris2*): Also handle
	x86_64-*-solaris2.1[0-9]*.
	* config.host (i[34567]86-*-solaris2*): Likewise.
	* config/sparc/sol2.h (ASM_CPU_DEFAULT_SPEC): Remove.
	* config/sol2-bi.h (ASM_CPU_DEFAULT_SPEC): Redefine.
	[USE_GLD] (ARCH_DEFAULT_EMULATION): Define.
	(TARGET_LD_EMULATION): Use it.
	* config/i386/sol2.h (ASM_CPU_DEFAULT_SPEC): Define.
	(SUBTARGET_CPU_EXTRA_SPECS): Add asm_cpu_default.
	* config/i386/sol2-bi.h (ASM_CPU32_DEFAULT_SPEC): Define.
	(ASM_CPU64_DEFAULT_SPEC): Define.
	(ASM_CPU_SPEC): Use %(asm_cpu_default).
	(ASM_SPEC): Redefine.
	(DEFAULT_ARCH32_P): Define using TARGET_64BIT_DEFAULT.
	* config/host-solaris.c [__x86_64__] (TRY_EMPTY_VM_SPACE): Reduce.
	* doc/install.texi (Specific, amd64-*-solaris2.1[0-9]*):
	Document.
	(Specific, i?86-*-solaris2.10): Mention x86_64-*-solaris2.1[0-9]*
	configuration.
	(Specific, x86_64-*-solaris2.1[0-9]*): Document.

	gcc/ada:
	PR target/39150
	* gcc-interface/Makefile.in: Handle x86_64-solaris2.

	libgcc:
	PR target/39150
	* config.host (*-*-solaris2*): Handle x86_64-*-solaris2.1[0-9]*
	like i?86-*-solaris2.1[0-9]*.
	(i[34567]86-*-solaris2*): Also handle x86_64-*-solaris2.1[0-9]*.
	* configure.ac (i?86-*-solaris2*): Likewise.
	* configure: Regenerate.

	gcc/testsuite:
	PR target/39150
	* gcc.misc-tests/linkage.exp: Handle x86_64-*-solaris2.1[0-9]*.

	toplevel:
	PR target/39150
	* configure.ac (i[3456789]86-*-solaris2*): Also accept
	x86_64-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	boehm-gc:
	PR target/39150
	* configure.ac (i?86-*-solaris2.[89]): Also accept
	x86_64-*-solaris2.1?.
	* configure: Regenerate.

	gnattools:
	PR target/39150
	* configure.ac (*86-*-solaris2*): Also accept
	x86_64-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	libcpp:
	PR target/39150
	* configure.ac (host_wide_int): Handle x86_64-*-solaris2.1[0-9]
	like i[34567]86-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	libgo:
	PR target/39150
	* config/libtool.m4: Handle x86_64-*-solaris2.1[0-9]* like
	i?86-*-solaris*.
	* configure: Regenerate.

	libjava:
	PR target/39150
	* configure.host (x86_64-*): Add -Usun to libgcj_flags.
	(x86_64-*-solaris2.1[0-9]*): New case.
	(i?86-*-solaris2*): Also accept x86_64-*-solaris2.1[0-9]*.

From-SVN: r175958
2011-07-07 09:24:16 +00:00
Thomas Schwinge
9e7714f424 libgcc/
* config.host (i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu)
	(i[34567]86-*-gnu*, i[34567]86-*-kopensolaris*-gnu): Remove
	md_unwind_header by splitting out of...
	(i[34567]86-*-linux*): ... this.
	* config.host (x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu):
	Remove md_unwind_header by splitting out of...
	(x86_64-*-linux*): ... this.

From-SVN: r175892
2011-07-06 00:14:37 +02:00
Nick Clifton
4be46d1929 * config.host: Recognize all V850 variants.
From-SVN: r175576
2011-06-28 08:49:18 +00:00
Olivier Hainque
ea96399965 irix6-unwind.h: New file.
2011-06-14  Olivier Hainque  <hainque@adacore.com>
	    Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* config/mips/irix6-unwind.h: New file.
	* config.host (mips-sgi-irix6.5*): Set md_unwind_header.

Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>

From-SVN: r175013
2011-06-14 12:20:08 +00:00
Rainer Orth
10e48e3927 netbsd.h (ENABLE_EXECUTE_STACK): Remove.
2011-05-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
	    Joseph Myers  <joseph@codesourcery.com>

	gcc:
	* config/alpha/netbsd.h (ENABLE_EXECUTE_STACK): Remove.
	(HAVE_ENABLE_EXECUTE_STACK): Define.
	* config/alpha/osf5.h (ENABLE_EXECUTE_STACK): Remove.
	(HAVE_ENABLE_EXECUTE_STACK): Define.
	* config/darwin.h (ENABLE_EXECUTE_STACK): Remove.
	(HAVE_ENABLE_EXECUTE_STACK): Define.
	* config/i386/mingw32.h (MINGW_ENABLE_EXECUTE_STACK): Remove.
	(ENABLE_EXECUTE_STACK): Remove.
	(HAVE_ENABLE_EXECUTE_STACK): Define.
	[IN_LIBGCC2]: Don't include <windows.h>.
	* config/i386/netbsd-elf.h (ENABLE_EXECUTE_STACK): Remove.
	(HAVE_ENABLE_EXECUTE_STACK): Define.
	* config/i386/netbsd64.h (ENABLE_EXECUTE_STACK): Remove.
	(HAVE_ENABLE_EXECUTE_STACK): Define.
	* config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Remove.
	* config/openbsd.h (ENABLE_EXECUTE_STACK): Remove.
	(HAVE_ENABLE_EXECUTE_STACK): Define.
	* config/sol2.h (ENABLE_EXECUTE_STACK): Remove.
	(HAVE_ENABLE_EXECUTE_STACK): Define.
	* config/sparc/freebsd.h (ENABLE_EXECUTE_STACK): Remove.
	(HAVE_ENABLE_EXECUTE_STACK): Define.
	* config/sparc/netbsd-elf.h (ENABLE_EXECUTE_STACK): Remove.
	(HAVE_ENABLE_EXECUTE_STACK): Define.
	* config/alpha/alpha.c (alpha_trampoline_init): Test
	HAVE_ENABLE_EXECUTE_STACK.
	* config/i386/i386.c (ix86_trampoline_init): Likewise.
	* config/sparc/sparc.c (sparc32_initialize_trampoline): Likewise.
	(sparc64_initialize_trampoline): Likewise.
	* libgcc2.c [L_enable_execute_stack]: Remove.
	* system.h (ENABLE_EXECUTE_STACK): Poison.
	* doc/tm.texi.in (Trampolines, ENABLE_EXECUTE_STACK): Remove.
	* doc/tm.texi: Regenerate.
	* Makefile.in (LIBGCC2_CFLAGS): Add -fbuilding-libgcc.

	gcc/c-family:
	* c.opt (fbuilding-libgcc): New option.
	* c-cppbuiltin.c (c_cpp_builtins): Define
	__LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc.

	libgcc:
	* enable-execute-stack-empty.c: New file.
	* enable-execute-stack-mprotect.c: New file.
	* config/i386/enable-execute-stack-mingw32.c: New file.
	* config.host (enable_execute_stack): New variable.
	Select appropriate variants.
	* configure.ac: Link enable-execute-stack.c to
	$enable_execute_stack.
	* configure: Regenerate.
	* Makefile.in (LIB2ADD): Add enable-execute-stack.c.
	(lib2funcs): Remove _enable_execute_stack.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>

From-SVN: r174843
2011-06-09 12:30:46 +00:00
David S. Miller
10c4cabcde config.host (sparc-*-linux*): Correct md_unwind_header filename.
2011-06-09  David S. Miller  <davem@davemloft.net>
	    Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* config.host (sparc-*-linux*): Correct md_unwind_header
	filename.
	(s390x-ibm-tpf*): Fix typo.

Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>

From-SVN: r174838
2011-06-09 07:31:44 +00:00
Rainer Orth
aa4203e734 iris6.h (ENDFILE_SPEC): Use crtfastmath.o if -ffast-math etc.
gcc:
	* config/mips/iris6.h (ENDFILE_SPEC): Use crtfastmath.o if
	-ffast-math etc.

	libgcc:
	* config.host (mips-sgi-irix6.5*): Add t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.
	(mips64*-*-linux*, mips*-*-linux*): Use t-crtfm instead of
	mips/t-crtfm.
	* config/mips/t-crtfm: Remove.

From-SVN: r174686
2011-06-06 09:49:47 +00:00
John David Anglin
0defd78663 config.host (hppa*-*-linux*): Correct md_unwind_header name.
* config.host (hppa*-*-linux*): Correct md_unwind_header name.

From-SVN: r174640
2011-06-04 15:21:01 +00:00
Kaz Kojima
82f247af45 config.host (sh*-*-linux*): Fix typo.
* config.host (sh*-*-linux*): Fix typo.

From-SVN: r174631
2011-06-04 02:38:24 +00:00
Rainer Orth
58cd1d70dd linux.h (MD_UNWIND_SUPPORT): Remove.
gcc:
	* config/alpha/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/alpha/osf5.h (MD_UNWIND_SUPPORT): Remove.
	* config/alpha/vms.h (MD_UNWIND_SUPPORT): Remove.
	* config/bfin/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/bfin/uclinux.h (MD_UNWIND_SUPPORT): Remove.
	* config/i386/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/i386/linux64.h (MD_UNWIND_SUPPORT): Remove.
	* config/i386/sol2.h (MD_UNWIND_SUPPORT): Remove.
	* config/i386/mingw32.h (MD_UNWIND_SUPPORT): Remove.
	* config/ia64/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/ia64/vms.h (MD_UNWIND_SUPPORT): Remove.
	* config/m68k/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/mips/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/pa/pa-hpux.h (MD_UNWIND_SUPPORT): Remove.
	* config/pa/pa32-linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/rs6000/darwin.h (MD_UNWIND_SUPPORT): Remove.
	* config/rs6000/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/rs6000/linux64.h (MD_UNWIND_SUPPORT): Remove.
	* config/s390/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/s390/tpf.h (MD_UNWIND_SUPPORT): Remove.
	* config/sh/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/sparc/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/sparc/linux64.h (MD_UNWIND_SUPPORT): Remove.
	* config/sparc/sol2.h (MD_UNWIND_SUPPORT): Remove.
	* config/xtensa/linux.h (MD_UNWIND_SUPPORT): Remove.
	* config/alpha/linux-unwind.h: Move to ../libgcc/config/alpha.
	* config/alpha/osf5-unwind.h: Move to ../libgcc/config/alpha.
	* config/alpha/vms-unwind.h: Move to ../libgcc/config/alpha.
	* config/bfin/linux-unwind.h: Move to ../libgcc/config/bfin.
	* config/i386/linux-unwind.h: Move to ../libgcc/config/i386.
	* config/i386/sol2-unwind.h: Move to ../libgcc/config/i386.
	* config/i386/w32-unwind.h: Move to ../libgcc/config/i386.
	* config/ia64/linux-unwind.h: Move to ../libgcc/config/ia64.
	* config/ia64/vms-unwind.h: Move to ../libgcc/config/ia64.
	* config/m68k/linux-unwind.h: Move to ../libgcc/config/m68k.
	* config/mips/linux-unwind.h: Move to ../libgcc/config/mips.
	* config/pa/hpux-unwind.h: Move to ../libgcc/config/pa.
	* config/pa/linux-unwind.h: Move to ../libgcc/config/pa.
	* config/rs6000/darwin-unwind.h: Move to ../libgcc/config/rs6000.
	* config/rs6000/linux-unwind.h: Move to ../libgcc/config/rs6000.
	* config/s390/linux-unwind.h: Move to ../libgcc/config/s390.
	* config/s390/tpf-unwind.h: Move to ../libgcc/config/s390.
	* config/sh/linux-unwind.h: Move to ../libgcc/config/sh.
	* config/sparc/linux-unwind.h: Move to ../libgcc/config/sparc.
	* config/sparc/sol2-unwind.h: Move to ../libgcc/config/sparc.
	* config/xtensa/linux-unwind.h: Move to ../libgcc/config/xtensa.
	* config/darwin9.h (DARWIN_LIBSYSTEM_HAS_UNWIND): Remove.
	* system.h (MD_UNWIND_SUPPORT): Poison.
	* doc/tm.texi.in (Exception Handling, MD_UNWIND_SUPPORT): Remove.
	* doc/tm.texi: Regenerate.
	* unwind-dw2.c: Include md-unwind-support.h instead of
	MD_UNWIND_SUPPORT.
	* config/ia64/unwind-ia64.c: Likewise.
	* config/xtensa/unwind-dw2-xtensa.c: Likewise.

	libgcc:
	* config/alpha/linux-unwind.h: Move from ../gcc/config/alpha.
	* config/alpha/osf5-unwind.h: Move from ../gcc/config/alpha.
	* config/alpha/vms-unwind.h: Move from ../gcc/config/alpha.
	* config/bfin/linux-unwind.h: Move from ../gcc/config/bfin.
	* config/i386/linux-unwind.h: Move from ../gcc/config/i386.
	* config/i386/sol2-unwind.h: Move from ../gcc/config/i386.
	* config/i386/w32-unwind.h: Move from ../gcc/config/i386.
	Wrap in !__MINGW64__.
	* config/ia64/linux-unwind.h: Move from ../gcc/config/ia64.
	* config/ia64/vms-unwind.h: Move from ../gcc/config/ia64.
	* config/m68k/linux-unwind.h: Move from ../gcc/config/m68k.
	* config/mips/linux-unwind.h: Move from ../gcc/config/mips.
	* config/pa/hpux-unwind.h: Move from ../gcc/config/pa.
	* config/pa/linux-unwind.h: Move from ../gcc/config/pa.
	* config/rs6000/darwin-unwind.h: Move from ../gcc/config/rs6000.
	Wrap in !__LP64__.
	* config/rs6000/linux-unwind.h: Move from ../gcc/config/rs6000.
	* config/s390/linux-unwind.h: Move from ../gcc/config/s390.
	* config/s390/tpf-unwind.h: Move from ../gcc/config/s390.
	* config/sh/linux-unwind.h: Move from ../gcc/config/sh.
	* config/sparc/linux-unwind.h: Move from ../gcc/config/sparc.
	* config/sparc/sol2-unwind.h: Move from ../gcc/config/sparc.
	* config/xtensa/linux-unwind.h: Move from ../gcc/config/xtensa.
	* config/no-unwind.h: New file.
	* config.host (md_unwind_header): Document.
	Define.
	(alpha*-*-linux*, alpha*-dec-osf5.1*, alpha64-dec-*vms*,
	alpha*-dec-*vms*, bfin*-uclinux*, bfin*-linux-uclibc*,
	hppa*-*-linux*, hppa[12]*-*-hpux10*, hppa*64*-*-hpux11*,
	hppa[12]*-*-hpux11*): Set md_unwind_header.
	(i[34567]86-*-linux*): Handle i[34567]86-*-kopensolaris*-gnu.
	Set md_unwind_header.
	(x86_64-*-linux*, i[34567]86-*-solaris2*): Set md_unwind_header.
	(i[34567]86-*-cygwin*): Split from i[34567]86-*-mingw*.
	(i[34567]86-*-mingw*, ia64*-*-linux*, ia64-hp-*vms*,
	m68k-*-uclinux*, m68k-*-linux*, mips64*-*-linux*, mips*-*-linux*,
	powerpc-*-darwin*, powerpc-*-linux*, s390-*-linux*,
	s390x-*-linux*,  s390x-ibm-tpf*, sh*-*-linux*, sparc-*-linux*,
	sparc*-*-solaris2*, sparc64-*-linux*, xtensa*-*-linux*): Set
	md_unwind_header.
	* configure.ac: Link md-unwind-support.h to $md_unwind_header.
	* configure: Regenerate.

From-SVN: r174613
2011-06-03 18:30:39 +00:00
Rainer Orth
737346fa24 config.gcc (mips-sgi-irix6.5*): Set tmake_file to mips/t-irix6 t-slibgcc-dummy.
gcc:
	* config.gcc (mips-sgi-irix6.5*): Set tmake_file to mips/t-irix6
	t-slibgcc-dummy.
	* config/mips/irix-crti.asm: Move to ../libgcc/config/mips/irix-crti.S.
	* config/mips/irix-crtn.asm: Move to ../libgcc/config/mips/irix-crtn.S.
	* config/mips/t-iris: Remove.
	* config/mips/t-irix6: New file.
	* config/mips/t-slibgcc-irix: Move to ../libgcc/config/mips.

	libgcc:
	* config.host (mips-sgi-irix[56]*): Restrict to mips-sgi-irix6.5*.
	Set tmake_file, extra_parts.
	* config/mips/irix-crti.S: Move from ../gcc/config/mips/irix-crti.asm.
	Remove O32 support.
	* config/mips/irix-crtn.S: Move from ../gcc/config/mips/irix-crtn.asm.
	Remove O32 support.
	* config/mips/t-irix6: New file.
	* config/mips/t-slibgcc-irix: New file.

From-SVN: r174608
2011-06-03 17:16:44 +00:00
Rainer Orth
ee33b5f0b2 t-osf5: Remove.
gcc:
	* config/alpha/t-osf5: Remove.
	* config/alpha/t-osf-pthread: Remove.
	* config.gcc (alpha*-dec-osf5.1*): Set tmake_file to t-slibgcc-dummy.
	* mkmap-flat.awk: Handle osf_export for Tru64 UNIX linker -input file.

	libgcc:
	* configure.ac (target_thread_file): Determine thread model.
	* configure: Regenerate.
	* config.host (alpha*-dec-osf5.1*): Set tmake_file, extra_parts.
	* config/alpha/t-alpha: New file.
	* config/alpha/t-crtfm: Use $<.
	* config/alpha/t-ieee: New file.
	* config/alpha/t-osf-pthread: New file.
	* config/alpha/t-slibgcc-osf: New file.
	* config/alpha/libgcc-osf5.ver: New file.

From-SVN: r174603
2011-06-03 13:23:35 +00:00
Rainer Orth
0699e415bc crtfastmath.c: Include <signal.h>, <ucontext.h>.
gcc:
	* config/i386/crtfastmath.c [!__x86_64__ && __sun__ && __svr4__]:
	Include <signal.h>, <ucontext.h>.
	(sigill_caught): Define.
	(sigill_hdlr): New function.
	(set_fast_math) [!__x86_64__ && __sun__ && __svr4__]: Check if SSE
	insns can be executed.
	* config/sol2.h (ENDFILE_SPEC): Use crtfastmath.o if -ffast-math
	etc.
	* config/sparc/sol2.h (ENDFILE_SPEC): Remove.

	libgcc:
	* config.host (i[34567]86-*-solaris2*): Add i386/t-crtfm to
	tmake_file.
	Add crtfastmath.o to extra_parts.

From-SVN: r174532
2011-06-01 14:49:21 +00:00
Rainer Orth
ca24c5ad73 t-slibgcc-darwin: Move to ...
gcc:
	* config/t-slibgcc-darwin: Move to ...
	* config/t-slibgcc-dummy: .. this.
	Clarify comments.
	* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*,
	powerpc-*-darwin*, powerpc64-*-darwin*): Reflect this.
	(i[3456x]86-*-netware*): Add t-slibgcc-dummy to tmake_file.
	(i[34567]86-*-rtems*): Remove extra_parts.
	Use i386/t-rtems.
	Remove i386/t-crtstuff from tmake_file.
	(i[34567]86-*-solaris2*): Remove t-svr4,
	t-slibgcc-elf-ver, t-slibgcc-sld from tmake_file, add
	t-slibgcc-dummy.
	(sparc-*-elf*, sparc64-*-elf*): Remove tmake_file, extra_parts.
	(sparc-*-rtems*, sparc64-*-rtems*): Remove sparc/t-crtin,
	sparc/t-crtfm from tmake_file.
	(sparc*-*-solaris2*): Remove sparc/t-sol2, sparc/t-crtfm,
	t-slibgcc-elf-ver, t-slibgcc-sld, add t-slibgcc-dummy.
	Remove extra_parts.
	* config/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define.
	* config/i386/t-nwld (SHLIB_LINK): Remove.
	* config/i386/t-rtems-i386: Rename to ...
	* config/i386/t-rtems: ... this.
	($(T)crti.o, $(T)crtn.o): Remove.
	(FPBIT, DPBIT, LIB2FUNCS_EXTRA): Remove.
	(dp-bit.c, fp-bit.c, xp-bit.c): Remove.
	(EXTRA_MULTILIB_PARTS, LIBGCC, INSTALL_LIBGCC): Remove.
	* config/i386/t-sol2-10 (LIBGCC, INSTALL_LIBGCC,
	EXTRA_MULTILIB_PARTS): Remove.
	* config/sparc/t-sol2-64: Likewise.
	* config/sparc/t-sol2: Remove.
	* config/sparc/t-crtin: Remove.
	* config/sparc/gmon-sol2.c: Move to ../libgcc/config.
	* config/i386/gmon-sol2.c: Remove.
	* config/i386/sol2-c1.asm: Move to ../libgcc/config/i386/sol2-c1.S.
	* config/i386/sol2-ci.asm: Move to ../libgcc/config/i386/sol2-ci.S.
	* config/i386/sol2-cn.asm: Move to ../libgcc/config/i386/sol2-cn.S.
	* config/i386/sol2-gc1.asm: Remove.
	* config/sparc/sol2-c1.asm: Move to ../libgcc/config/sparc/sol2-c1.S.
	* config/sparc/sol2-ci.asm: Move to ../libgcc/config/sparc/sol2-ci.S.
	* config/sparc/sol2-cn.asm: Move to ../libgcc/config/sparc/sol2-cn.S.
	* config/t-slibgcc-sld: Remove.

	libgcc:
	* Makefile.in (cpu_type): Define.
	* config.host (i[34567]86-*-rtems*): Handle it.
	(i[34567]86-*-solaris2*): Move body ...
	(*-*-solaris2*): ... here.
	New case, generalize.
	(sparc-*-elf*): Handle it.
	(sparc-*-linux*, sparc64-*-linux*): Replace sparc/t-crtfm by t-crtfm.
	(sparc-*-rtems*, sparc64-*-rtems*); Handle it.
	(sparc64-*-solaris2*, sparcv9-*-solaris2*, sparc-*-solaris2*):
	Fold into ...
	(sparc*-*-solaris2*): ... this.
	New case.
	(sparc64-*-elf*): Handle it.
	* config/gmon-sol2.c: Move from ../gcc/config/sparc.
	Merge ../gcc/config/i386/gmon-sol2.c.
	* config/i386/sol2-c1.S: Move from ../gcc/config/i386/sol2-c1.asm.
	Use C comments.
	Merge ../gcc/config/i386/sol2-gc1.asm.
	* config/i386/sol2-ci.S: Move from ../gcc/config/i386/sol2-ci.asm.
	Use C comments.
	* config/i386/sol2-cn.S: Move from ../gcc/config/i386/sol2-cn.asm.
	Use C comments.
	* config/i386/t-crtfm (crtfastmath.o): Use $<.
	* config/i386/t-crtstuff: New file.
	* config/i386/t-softfp: New file.
	* config/i386/t-sol2 ($(T)gmon.o, $(T)gcrt1.o, $(T)crt1.o),
	$(T)crti.o, $(T)crtn.o): Remove.
	(gcrt1.o): New rule.
	(TARGET_LIBGCC2_CFLAGS): Remove.
	* config/sparc/sol2-c1.S: Move from ../gcc/config/sparc/sol2-c1.asm.
	* config/sparc/sol2-ci.S: Move from ../gcc/config/sparc/sol2-ci.asm.
	* config/sparc/sol2-cn.S: Move from ../gcc/config/sparc/sol2-cn.asm.
	* config/sparc/t-sol2: New file.
	* config/sparc/t-crtfm: Move to ...
	* config/t-crtfm: ... this.
	Use $(cpu_type), $<.
	* config/t-crtin: New file.
	* config/sparc/t-softfp: New file.
	* config/sparc/t-softmul: New file.
	* config/t-rtems: New file.
	* config/t-slibgcc: New file.
	* config/t-slibgcc-elf-ver: New file.
	* config/t-slibgcc-gld: New file.
	* config/t-slibgcc-sld: New file.
	* config/t-sol2: New file.
	* configure.ac: Include ../config/lib-ld.m4.
	Call AC_LIB_PROG_LD_GNU.
	Substitute cpu_type.
	* configure: Regenerate.

From-SVN: r174529
2011-06-01 14:39:17 +00:00
Joseph Myers
ebb9f8b03b MAINTAINERS (crx port, [...]): Remove.
* MAINTAINERS (crx port, m68hc11 port): Remove.  Move maintainers
	to Write After Approval.
	* config-ml.in: Don't handle arc-*-elf*.
	* configure.ac (arc-*-*, crx-*-*, i[[3456789]]86-*-pe,
	m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*, mcore-*-pe*): Don't
	handle GCC libraries.
	* configure: Regenerate.

contrib:
	* compare-all-tests (all_targets): Remove crx and m68hc11.

fixincludes:
	* mkfixinc.sh: Don't handle i?86-moss-msdos* or i?86-*-pe.

gcc:
	* config/alpha/gnu.h: Remove.
	* config/arc: Remove directory.
	* config/arm/netbsd.h: Remove.
	* config/arm/t-pe: Remove.
	* config/crx: Remove directory.
	* config/i386/netbsd.h: Remove.
	* config/m68hc11: Remove directory.
	* config/m68k/uclinux-oldabi.h: Remove.
	* config/mcore/mcore-pe.h: Remove.
	* config/mcore/t-mcore-pe: Remove.
	* config/netbsd-aout.h: Remove.
	* config/rs6000/gnu.h: Remove.
	* config/sh/sh-symbian.h: Remove.
	* config/sh/symbian-base.c: Remove.
	* config/sh/symbian-c.c: Remove.
	* config/sh/symbian-cxx.c: Remove.
	* config/sh/symbian-post.h: Remove.
	* config/sh/symbian-pre.h: Remove.
	* config/sh/t-symbian: Remove.
	* config/svr3.h: Remove.
	* config/vax/netbsd.h: Remove.
	* config.build: Don't handle i[34567]86-*-pe.
	* config.gcc: Remove handling of deprecations for most deprecated
	targets.
	(m68k-*-uclinuxoldabi*): Add to second deprecated list.
	(alpha*-*-gnu*, arc-*-elf*, arm*-*-netbsd*, arm-*-pe*, crx-*-elf,
	i[34567]86-*-netbsd*, i[34567]86-*-pe, m68hc11-*-*|m6811-*-*,
	m68hc12-*-*|m6812-*-*, m68k-*-uclinuxoldabi*, mcore-*-pe*,
	powerpc64-*-gnu*, powerpc-*-gnu-gnualtivec*, powerpc-*-gnu*,
	sh-*-symbianelf* | sh[12346l]*-*-symbianelf*, vax-*-netbsd*):
	Remove cases.
	* config.host: Don't handle i[34567]86-*-pe.
	* config/rs6000/linux64.h (LINK_OS_GNU_SPEC): Remove.
	(ASM_SPEC32): Don't handle -mcall-gnu.
	* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Don't handle
	-mcall-gnu.
	(ASM_SPEC, CC1_SPEC, LINK_START_SPEC, LINK_OS_SPEC, CPP_SPEC,
	STARTFILE_SPEC, LIB_SPEC, ENDFILE_SPEC): Don't handle -mcall-gnu.
	(LIB_GNU_SPEC, STARTFILE_GNU_SPEC, ENDFILE_GNU_SPEC,
	LINK_START_GNU_SPEC, LINK_OS_GNU_SPEC, CPP_OS_GNU_SPEC): Remove.
	(SUBTARGET_EXTRA_SPECS): Remove *_gnu specs.
	* config/sh/sh-protos.h, config/sh/sh.c: Remove all code
	conditional on SYMBIAN.
	* configure.ac: Don't handle powerpc*-*-gnu*.
	* configure: Regenerate.
	* doc/extend.texi (interrupt attribute): Don't mention CRX.
	* doc/install-old.texi (m6811, m6812): Don't mention.
	* doc/install.texi (arc-*-elf*): Don't document multilib option.
	(arc-*-elf, CRX, m6811-elf, m6812-elf): Remove.
	(m68k-uclinuxoldabi): Don't mention.
	* doc/invoke.texi (ARC Options, CRX Options, M68hc1x Options):
	Remove.
	(-mcall-gnu): Remove.
	* doc/md.texi (CRX Architecture, Motorola 68HC11 & 68HC12
	families): Remove constraint documentation.

gcc/testsuite:
	* gcc.c-torture/execute/920501-8.x: Remove.
	* gcc.c-torture/execute/930513-1.x: Remove.
	* gcc.c-torture/execute/960312-1.x: Remove.
	* gcc.c-torture/compile/20000804-1.c,
	gcc.c-torture/compile/20001205-1.c,
	gcc.c-torture/compile/20001226-1.c,
	gcc.c-torture/compile/20010518-2.c,
	gcc.c-torture/compile/20020312-1.c,
	gcc.c-torture/compile/20020604-1.c,
	gcc.c-torture/compile/920501-12.c,
	gcc.c-torture/compile/920501-4.c,
	gcc.c-torture/compile/920520-1.c,
	gcc.c-torture/compile/980506-1.c,
	gcc.c-torture/execute/980709-1.x,
	gcc.c-torture/execute/990826-0.x: Don't XFAIL or use special
	options for m68hc11.
	* gcc.dg/cpp/assert4.c: Don't handle ARC.
	* gcc.dg/sibcall-3.c, gcc.dg/sibcall-4.c: Don't XFAIL for arc or
	m68hc11.

libgcc:
	* config.host (alpha*-*-gnu*, arc-*-elf*, arm*-*-netbsd*,
	arm-*-pe*, crx-*-elf, i[34567]86-*-netbsd*, i[34567]86-*-pe,
	m68hc11-*-*|m6811-*-*, m68hc12-*-*|m6812-*-*, mcore-*-pe*,
	powerpc64-*-gnu*, powerpc-*-gnu-gnualtivec*, powerpc-*-gnu*,
	sh-*-symbianelf* | sh[12346l]*-*-symbianelf*, vax-*-netbsd*):
	Remove cases.

libstdc++-v3:
	* configure.ac: Don't handle powerpc*-*-gnu*.
	* configure: Regenerate.

From-SVN: r171302
2011-03-22 19:58:18 +00:00
Andreas Tobler
9cfa14995f config.host (cpu_type): Add FreeBSD PowerPC specific parts.
2011-03-14  Andreas Tobler  <andreast@fgznet.ch>

	* config.host (cpu_type): Add FreeBSD PowerPC specific parts.
	Adjust copyright year.

From-SVN: r170931
2011-03-14 07:06:23 +01:00
H.J. Lu
ca007d11d6 Remove the extra `$'.
From-SVN: r164878
2010-10-01 04:57:44 -07:00
H.J. Lu
ef7c141c38 Add the missing `$'.
2010-10-01  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/45858
	* config.host: Add the missing `$'.

From-SVN: r164876
2010-10-01 04:31:26 -07:00
Michael Eager
809201325a Check in support for Xilinx MicroBlaze processor.
From-SVN: r164756
2010-09-30 18:21:57 +00:00
Ian Lance Taylor
b6110d6d19 i386.c (ix86_supports_split_stack): -fsplit-stack requires assembler support for CFI directives.
gcc/:
	* config/i386/i386.c (ix86_supports_split_stack): -fsplit-stack
	requires assembler support for CFI directives.
libgcc/:
	* configure.ac: Test whether assembler supports CFI directives.
	* config.host: Only add t-stack and i386/t-stack-i386 to
	tmake_file if libgcc_cv_cfi is "yes".
	* configure: Rebuild.

From-SVN: r164671
2010-09-28 00:07:12 +00:00
Ian Lance Taylor
7458026b01 common.opt (fsplit-stack): New option.
gcc/:
	* common.opt (fsplit-stack): New option.
	* opts.c (decode_options): Set flag_split_stack to final value.
	* target.def (supports_split_stack): New hook.
	* gcc.c (STACK_SPLIT_SPEC): Define.
	(LINK_COMMAND_SPEC): Use STACK_SPLIT_SPEC.
	* doc/invoke.texi (Option Summary): Mention -fsplit-stack.
	(Code Gen Options): Document -fsplit-stack.
	* doc/extend.texi (Function Attributes): Mention no_split_stack.
	(Function Attributes): Document no_split_stack.
	* doc/tm.texi.in (Stack Smashing Protection): Add @hook
	TARGET_SUPPORTS_SPLIT_STACK.
	* doc/tm.texi: Rebuild.
	* function.c (thread_prologue_and_epilogue_insns): If
	flag_split_stack, add split stack prologue.
	* explow.c (allocate_dynamic_stack_space): Support -fsplit-stack.
	* varasm.c (saw_no_split_stack): New static variable.
	(assemble_start_function): Set saw_no_split_stack if the function
	has the no_split_stack attribute.
	(file_end_indicate_split_stack): New function.
	* output.h (file_end_indicate_split_stack): Declare.
	* libgcc-std.ver (GCC_4.6.0): Add -fsplit-stack support variables
	and function.
	* doc/libgcc.texi (Miscellaneous routines): Document -fsplit-stack
	routines.
	* config/i386/i386.c (ix86_option_override_internal): Don't set
	expand_builtin_va_start to NULL if -fsplit-stack.
	(ix86_function_regparm): Reduce local regparm by 1 for 32-bit
	-fsplit-stack.
	(ix86_va_start): If -fsplit-stack, get overflow pointer	from
	scratch register set by prologue.
	(ix86_code_end): If -fsplit-stack, call
	file_end_indicate_split_stack.
	(ix86_supports_split_stack): New static function.
	(SPLIT_STACK_AVAILABLE): Define.
	(split_stack_prologue_scratch_regno): New static function.
	(split_stack_fn): New static variable.
	(ix86_expand_split_stack_prologue): New function.
	(ix86_live_on_entry): New static function.
	(ix86_legitimate_address_p): Handle UNSPEC_STACK_CHECK.
	(output_pic_addr_const): Likewise.
	(i386_asm_output_addr_const_extra): Likewise.
	(ix86_expand_call): Change return type to rtx.  Return the new
	call instruction.
	(TARGET_SUPPORTS_SPLIT_STACK): Define.
	(TARGET_EXTRA_LIVE_ON_ENTRY): Define.
	* config/i386/i386.md (UNSPEC_STACK_CHECK): Define.
	(split_stack_prologue, split_stack_return): New insns.
	(split_stack_space_check): New insn.
	* config/i386/i386.h (struct machine_function): Add
	split_stack_varargs_pointer field.
	* config/i386/linux.h (TARGET_CAN_SPLIT_STACK): Define.
	(TARGET_THREAD_SPLIT_STACK_OFFSET): Define.
	* config/i386/linux64.h (TARGET_CAN_SPLIT_STACK): Define.
	(TARGET_THREAD_SPLIT_STACK_OFFSET): Define.
	* config/i386/i386-protos.h (ix86_expand_split_stack_prologue):
	Declare.
	(ix86_expand_call): Update declaration.
gcc/c-family/:
	* c-common.c (c_common_attribute_table): Add no_split_stack.
	(handle_no_split_stack_attribute): New static function.
gcc/testsuite/:
	* lib/target-supports.exp (check_effective_target_split_stack):
	New procedure.
	* gcc.dg/split-1.c: New test.
	* gcc.dg/split-2.c: New test.
	* gcc.dg/split-3.c: New test.
	* gcc.dg/split-4.c: New test.
libgcc/:
	* generic-morestack.h: New file.
	* generic-morestack.c: New file.
	* generic-morestack-thread.c: New file.
	* config/i386/morestack.S: New file.
	* config/t-stack: New file.
	* config/i386/t-stack-i386: New file.
	* config.host (i[34567]86-*-linux* and friends): Add t-stack and
	i386/t-stack-i386 to tmake_file.

From-SVN: r164661
2010-09-27 19:48:20 +00:00
Gerald Pfeifer
be1c764ef4 re PR target/40959 (FreeBSD/ia64 build fails: No rule to make target /usr/ports/lang/gcc43/work/build/ia64-portbld-freebsd8.0/libgcc/crtfastmath.o', needed by T_TARGET'.)
2010-09-09  Gerald Pfeifer  <gerald@pfeifer.com>
	    Andrew Pinski  <pinskia@gmail.com>

	PR target/40959
	* config.host (ia64*-*-freebsd*): Set extra_parts.  Set tmake_file.

Co-Authored-By: Andrew Pinski <pinskia@gmail.com>

From-SVN: r164132
2010-09-09 22:19:33 +00:00
Uros Bizjak
d78552bd0f config.gcc (i[34567]86-*-freebsd*, [...]): Add i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file.
gcc/ChangeLog:

	* config.gcc (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add
	i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file.

	* libgcc-std.ver (GCC_4.6.0): Define version.

libgcc/ChangeLog:

	* config.host (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add
	i386/t-freebsd to tmake_file.
	* config/i386/t-freebsd: New file.
	* config/i386/libgcc-bsd.ver: New file.

From-SVN: r163718
2010-09-01 08:42:53 +02:00
Nathan Froyd
c5b79d4eb8 config.host (powerpc*-eabispe*): Set tmake_file.
* config.host (powerpc*-eabispe*): Set tmake_file.
	(powerpc*-eabi*): Likewise.
	* config/rs6000/t-ppccomm (EXTRA_PARTS): Add crtbegin, crtend,
	crtbeginS, crtendS, crtbeginT.

From-SVN: r162474
2010-07-23 16:53:48 +00:00
Kazu Hirata
48b09a925e config.gcc (mips64*-*-linux*, [...]): Add crtfastmath.o to extra_parts.
gcc/
	* config.gcc (mips64*-*-linux*, mipsisa64*-*-linux*,
	mips*-*-linux*): Add crtfastmath.o to extra_parts.
	* config/mips/crtfastmath.c: New.
	* config/mips/linux.h (ENDFILE_SPEC): New.

libgcc/
	* config.host (mips64*-*-linux*, mips*-*-linux*): Add mips/t-crtfm
	to tmake_file.  Add crtfastmath.o to extra_parts.
	* config/mips/t-crtfm: New.

From-SVN: r160655
2010-06-12 07:44:51 +00:00
Joel Sherrill
1b64cc3e5c config.host (sparc64-*-rtems*): New target.
2010-05-19  Joel Sherrill <joel.sherrill@oarcorp.com>

	* config.host (sparc64-*-rtems*): New target.

From-SVN: r159669
2010-05-21 14:56:39 +00:00
Thomas Schwinge
3f56ef8b60 config.gcc: Handle softfp as for Linux.
2010-04-15 Thomas Schwinge <tschwinge@gnu.org>

	gcc/
	* config.gcc <i[34567]86-*-gnu*>: Handle softfp as for Linux.

	libgcc/
	* config.host <i[34567]86-*-gnu*>: Handle softfp as for Linux.

From-SVN: r158375
2010-04-15 15:29:07 +02:00
Rainer Orth
8c2003509e config.build (alpha*-dec-osf4*): Remove.
gcc:
	* config.build (alpha*-dec-osf4*): Remove.
	* config.gcc: Remove alpha*-dec-osf4*, alpha-dec-osf5.0* from list
	of obsolete configurations.
	(alpha*-dec-osf[45]*): Remove alpha*-dec-osf4*, alpha-dec-osf5.0*
	support.
	* config/alpha/t-osf4: Renamed to ...
	* config/alpha/t-osf5: ... this.
	* config/alpha/osf.h: Renamed to ...
	* config/alpha/osf5.h: ... this.
	Merged old osf5.h contents.
	Update comments.
	(ASM_SPEC): Use ASM_OLDAS_SPEC directly.
	(EXTRA_SPECS): Removed.
	* doc/install.texi (Specific, alpha*-dec-osf5.1): Renamed to
	reflect removal of Tru64 UNIX V4.0/V5.0 support.
	Document that.

	fixincludes:
	* inclhack.def (alpha_wchar): Remove.
	* fixincl.x: Regenerate.
	* tests/base/wchar.h: Remove.

	libgcc:
	* config.host (alpha*-dec-osf[45]*): Removed alpha*-dec-osf4*,
	alpha-dec-osf5.0* support.

From-SVN: r158235
2010-04-12 18:36:30 +00:00
Ralf Corsepius
c1b14424c8 config.host: Add lm32-*-rtems*.
2010-04-01	Ralf Corsépius <ralf.corsepius@rtems.org>

	* config.host: Add lm32-*-rtems*.

From-SVN: r157939
2010-04-02 05:02:18 +02:00
Rainer Orth
f128db92ae re PR target/39048 (gcc 4.4.0 20090131 - Extra underscore hides libgcc's soft-fp functions from Testsuite causing FAILs + naming error in libgcc)
gcc:
	PR target/39048
	* config.gcc (i[34567]86-*-solaris2*): Add i386/t-fprules-softfp
	and soft-fp/t-softfp to tmake_file.
	* config/i386/sol2.h (LIBGCC2_HAS_TF_MODE): Redefine.
	(LIBGCC2_TF_CEXT): Define.
	(TF_SIZE): Define.

	libgcc:
	PR target/39048
	* config.host (i[34567]86-*-solaris2): Handle 32-bit Solaris 2/x86
	like other remaining 32-bit x86 OSes.
	* config/i386/32/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Support Sun
	assembler syntax.
	* config/i386/libgcc-sol2.ver: New file.
	* config/i386/t-sol2 (SHLIB_MAPFILES): Add it.

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>

From-SVN: r157854
2010-03-31 09:03:29 +00:00
Hans-Peter Nilsson
e7c914db61 Migrate from broken pre-libgcc legacy support to libgcc-centric rules.
* config/mmix/t-mmix: New file.
	* config.host <mmix-knuth-mmixware> (extra_parts, tmake_file): Set.

From-SVN: r156946
2010-02-22 00:37:30 +00:00
Anthony Green
e6e50811a7 Fix libgcc build for moxie.
From-SVN: r155609
2010-01-04 08:29:53 +00:00
Jon Beniston
aa4945c138 config.gcc: Add lm32 elf and uclinux targets.
gcc/
2009-11-11  Jon Beniston <jon@beniston.com>

        * config.gcc: Add lm32 elf and uclinux targets.
        * config/lm32: New directory.
        * config/lm32/lm32.c: New file.
        * config/lm32/lm32.h: New file.
        * config/lm32/lm32.md: New file.
        * config/lm32/lm32.opt: New file.
        * config/lm32/lm32-protos.h: New file.
        * config/lm32/constraints.md: New file.
        * config/lm32/predicates.md: New file.
        * config/lm32/sfp-machine.h: New file.
        * config/lm32/t-fprules-softfp: New file.
        * config/lm32/uclinux-elf.h: New file.
        * doc/invoke.texi: Document lm32 options. 
        * doc/contrib.texi: Document lm32 porter.
        * doc/install.texi: Document lm32 targets.

gcc/testsuite/
2009-11-11  Jon Beniston <jon@beniston.com>

        * lib/target-supports.exp (check_profiling_available): lm32 target 
          doesn't support profiling.
        * gcc.dg/20020312-2.c: Add lm32 support.
        * g++.dg/other/packed1.C: Expect to fail on lm32.        
        * g++.old-deja/g++.jason/thunk3.C: Likewise.                 

libgcc/
2009-11-11  Jon Beniston <jon@beniston.com>

        * config.host: Add lm32 targets.
        * config/lm32: New directory.
        * config/lm32/libgcc_lm32.h: New file.
        * config/lm32/_mulsi3.c: New file.
        * config/lm32/_udivmodsi4.c: New file.
        * config/lm32/_divsi3.c: New file.
        * config/lm32/_modsi3.c: New file.
        * config/lm32/_udivsi3.c: New file.
        * config/lm32/_umodsi3.c: New file.
        * config/lm32/_lshrsi3.S: New file.
        * config/lm32/_ashrsi3.S: New file.
        * config/lm32/_ashlsi3.S: New file.
        * config/lm32/crti.S: New file.
        * config/lm32/crtn.S: New file.
        * config/lm32/t-lm32: New file.
        * config/lm32/t-elf: New file.
        * config/lm32/t-uclinux: New file.

From-SVN: r154096
2009-11-11 16:43:06 +00:00
Nick Clifton
65a324b459 MAINTAINERS: Add myself as a maintainer for the RX port.
* MAINTAINERS: Add myself as a maintainer for the RX port.

gcc
        * config.gcc: Add support for RX target.
        * config/rx: New directory.
        * config/rx/constraints.md: New file.
        * config/rx/predicates.md: New file.
        * config/rx/rx.c: New file.
        * config/rx/rx.h: New file.
        * config/rx/rx.md: New file.
        * config/rx/rx.opt: New file.
        * config/rx/rx-protos.h: New file.
        * config/rx/t-rx: New file.
        * doc/extend.texi: Document RX function attributes.
        * doc/invoke.texi: Document RX specific command line options.
        * doc/contrib.texi: Document RX contribution.
        * doc/md.texi: Document RX constraints.
        * doc/install.texi: Document RX support.

libgcc
        * config.host: Add support for RX target.
        * config/rx: New directory.
        * config/rx/rx-abi-functions.c: New file. Supplementary
        functions for libgcc to support the RX ABI.
        * config/rx/rx-abi.h: New file.  Supplementary header file for
        libgcc RX ABI functions.
        * config/rx/t-rx: New file: Makefile fragment for building
        libgcc for the RX.

gcc/testsuite
        * lib/target-supports.exp (check_profiling_available):
        Profiling is not, currently, available for the RX port.
        (check_effective_target_hard_float): Add support for RX
        target.
        * gcc.target/rx: New directory.
        * gcc.target/rx/builtins.c: New test file.
        * gcc.target/rx/interrupts.c: New test file.
        * gcc.target/rx/rx-abi-function-tests.c: New test file.
        * gcc.target/rx/zero-width-bitfield.c: New test file.
        * gcc.target/rx/i272091.c: New test file.
        * gcc.target/rx/packed-struct.c: New test file.
        * gcc.target/rx/rx.exp: New file: Drives RX tests.

From-SVN: r153557
2009-10-26 16:30:15 +00:00