Commit Graph

858 Commits

Author SHA1 Message Date
Dave Korn 3bec79c52e re PR lto/42776 (LTO doesn't work on non-ELF platforms.)
ChangeLog:

	PR lto/42776
	* configure.ac (--enable-lto): Refactor handling so libelf tests
	are only performed inside then-clause of ACX_ELF_TARGET_IFELSE,
	and allow LTO to be explicitly enabled on non-ELF platforms that
	are known to support it inside else-clause.
	* configure: Regenerate.

gcc/ChangeLog:

	PR lto/42776
	* configure.ac (gcc_cv_as_section_has_align): Set if installed
	binutils supports extended .section directive needed by LTO, or
	warn if older binutils found.
	(LTO_BINARY_READER): New AC_SUBST'd variable.
	(LTO_USE_LIBELF): Likewise.
	* gcc/config.gcc (lto_binary_reader): New target-specific configure
	variable.
	* gcc/Makefile.in (LTO_BINARY_READER): Import AC_SUBST'd autoconf var.
	(LTO_USE_LIBELF): Likewise.
	* configure: Regenerate.

	* collect2.c (is_elf): Rename from this ...
	(is_elf_or_coff): ... to this, and recognize and allow i386 COFF
	 object files in addition to ELF-formatted ones.
	(scan_prog_file): Caller updated.  Also allow for LTO info marker
	symbol to be prefixed or not by an extra underscore.

	* config/i386/t-cygming (winnt.o): Also depend on LTO_STREAMER_H.
	* config/i386/winnt.c: Also #include lto-streamer.h
	(i386_pe_asm_named_section): Specify 1-byte section alignment for
	LTO named sections.
	(i386_pe_asm_output_aligned_decl_common): Add comment.
	(i386_pe_maybe_record_exported_symbol): Allow decl arg to be NULL.

gcc/lto/ChangeLog:

	PR lto/42776
	* Make-lang.in (LTO_OBJS): Use LTO_BINARY_READER instead of
	hardcoding 'lto-elf.o'.
	($(LTO_EXE)): Use LTO_USE_LIBELF instead of hardcoding '-lelf'.

	* lto-coff.h: New file.
	* lto-coff.c: Likewise.

gcc/testsuite/ChangeLog:

	PR lto/42776
	* lib/lto.exp (lto_prune_vis_warns): New function.
	(lto-link-and-maybe-run): Call it.

From-SVN: r158762
2010-04-27 02:22:40 +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 c7392d1130 config.gcc: Removed *-*-solaris2.7* from list of obsolete configurations.
gcc:
	* config.gcc: Removed *-*-solaris2.7* from list of obsolete
	configurations.
	Add to unsupported targets list.
	* configure.ac (gcc_cv_as_tls): Removed i[34567]86-*-solaris2.[567]*,
	sparc*-sun-solaris2.[567]* from target lists.
	* configure: Regenerate.
	* doc/install.texi (Specific, *-*-solaris2*): Document Solaris 7
	removal.
	Remove Solaris 7 patch references.
	(Specific, sparc-sun-solaris2.7): Removed.
	(sparc-sun-solaris2*): Update Solaris 7 example.
	(sparc64-*-solaris2*): Likewise.

	gcc/testsuite:
	* g++.dg/warn/miss-format-1.C: Removed *-*-solaris2.7 from
	dg-error, dg-warning.
	* gcc.dg/c99-stdint-6.c: Removed *-*-solaris2.7 from dg-options.

	libstdc++-v3:
	* configure.host (os_include_dir): Removed solaris2.7 support.
	* crossconfig.m4 (GLIBCXX_CROSSCONFIG): Likewise.
	* configure: Regenerate.

From-SVN: r158236
2010-04-12 19:01:36 +00: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
Rainer Orth 62e0852342 sol2-gld.h: Remove SPARC reference.
* config/sparc/sol2-gld.h: Remove SPARC reference.
	Rename ...
	* config/sol2-gld.h: ... here.
	* config.gcc (sparc*-*-solaris2*): Reflect this.
	(i[34567]86-*-solaris2*): Use it.

From-SVN: r158171
2010-04-09 17:02:52 +00:00
Rainer Orth 9d151aff95 Update comment for last commit.
From-SVN: r158051
2010-04-07 10:35:19 +00:00
Rainer Orth 9af272207f config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 to generic.
* config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 to
	generic.

From-SVN: r158049
2010-04-07 10:30:32 +00:00
Ralf Corsepius d7856dc71d [multiple changes]
2010-04-01  Ralf Corsépius <ralf.corsepius@rtems.org>

        * config.gcc (lm32-*-rtems*): Add t-lm32.

2010-04-01  Joel Sherrill <joel.sherrill@oarcorp.com>

        * config.gcc: Add lm32-*-rtems*.
        * config/lm32/rtems.h: New file.

From-SVN: r157937
2010-04-02 04:59:07 +02:00
Rainer Orth ddcc3550c2 config.guess (i[34567]86-*-solaris2*): Default with_arch_32, with_tune_32 to pentium4.
* config.guess (i[34567]86-*-solaris2*): Default with_arch_32,
	with_tune_32 to pentium4.

From-SVN: r157903
2010-04-01 10:32:10 +00: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
Tarik Graba 15baf7f802 t-lm32: New file.
2010-03-30  Tarik Graba  <tarik.graba@telecom-paristech.fr>

    gcc/
	* config/lm32/t-lm32: New file.
	* config.gcc: Use the above file when targetting lm32.

    libgcc/
	* config/lm32/t-lm32: Remove misplaced MULTILIB_OPTIONS.

From-SVN: r157817
2010-03-30 10:26:24 +00:00
Rainer Orth f1c26cad13 re PR target/38118 (gcc emits non-TLS data as TLS on Solaris 11/SPARC)
* configure.ac (i[34567]86-*-*): Handle Solaris 2/x86 TLS support
	and Sun as TLS syntax.
	(TLS_SECTION_ASM_FLAG) [on_solaris && !gas_flag]: Define.
	* configure: Regenerate.
	* config.in: Regenerate.
	* varasm.c (TLS_SECTION_ASM_FLAG): Define default.
	(default_elf_asm_named_section): Use it.
	* config/i386/i386.c (output_pic_addr_const): Lowercase @DTPOFF.
	(i386_output_dwarf_dtprel): Likewise.
	(output_addr_const_extra): Likewise.
	(output_pic_addr_const): Lowercase @GOTTPOFF.
	(output_addr_const_extra): Likewise.
	(output_pic_addr_const): Lowercase @GOTNTPOFF.
	(output_addr_const_extra): Likewise.
	(output_pic_addr_const): Lowercase @INDNTPOFF.
	(output_addr_const_extra): Likewise.
	(output_pic_addr_const): Lowercase @NTPOFF.
	(output_addr_const_extra): Likewise.
	(output_pic_addr_const): Lowercase @TPOFF.
	(output_addr_const_extra): Likewise.
	* config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase
	@TLSGD.
	(*tls_global_dynamic_64): Likewise.
	(*tls_local_dynamic_base_32_gnu): Lowercase @TLSLDM.
	(*tls_local_dynamic_base_64): Lowercase	@TLSLD.

	* defaults.h (TLS_COMMON_ASM_OP): Provide default.
	(ASM_OUTPUT_TLS_COMMON): Use it.
	* config/i386/sol2-gas.h (TLS_COMMON_ASM_OP): Undef.

	PR target/38118
	* config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to
	tm_file.
	* config/sparc/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Move ...
	* config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): ... here.
	* config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Redefine.
	* config/i386/sol2.h (TARGET_SUN_TLS): Redefine.

From-SVN: r157705
2010-03-24 18:49:49 +00:00
Eric Botcazou 2587aa3b36 config.gcc (sparc64-*-solaris2*, [...]): Merge into...
* config.gcc (sparc64-*-solaris2*, sparc-*-solaris2*): Merge into...
	(sparc*-*-solaris2*): ...this.

From-SVN: r157200
2010-03-03 18:14:50 +00:00
Eric Botcazou d1ced15560 config.gcc (sparc-*-linux*): Do not include sparc/gas.h.
* config.gcc (sparc-*-linux*): Do not include sparc/gas.h.
	(sparc64-*-linux*): Likewise.
	(sparc64-*-solaris2*): Include assembler files before linker ones.
	(sparc-*-solaris2*): Simplify and reorder to match previous case.
	* config/sparc/gas.h: Delete.
	* config/sparc/sol2-64.h: Add copyright notice.
	* config/sparc/sol2-gas-bi.h: Likewise.
	* config/sparc/sol2-gld.h: Likewise.
	* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Delete.
	* config/sparc/sol2.h (TARGET_ASM_NAMED_SECTION): Redefine.
	* config/sparc/sol2-gas.h (TARGET_ASM_NAMED_SECTION): Likewise.
	* config/sparc/sparc.c (TARGET_ASM_ALIGNED_SI_OP): Never redefine.
	(sparc_elf_asm_named_section): Rename into...
	(sparc_solaris_elf_asm_named_section): ...this.  Always define.

From-SVN: r157181
2010-03-02 23:35:12 +00:00
H.J. Lu 91ad7e13d1 Don't set the default arch for i[34567]86-*-darwin*|x86_64-*-darwin*.
2010-02-27  H.J. Lu  <hongjiu.lu@intel.com>

	PR bootstrap/43202
	* config.gcc: Don't enable SSE math for i[34567]86-*-darwin*
	by default.  Don't set the default arch for
	i[34567]86-*-darwin*|x86_64-*-darwin*.

From-SVN: r157119
2010-02-27 23:56:36 -08:00
H.J. Lu 55c4eeaa4c Restore i[34567]86-*-darwin* bootstrap.
2010-02-27  H.J. Lu  <hongjiu.lu@intel.com>

	PR bootstrap/43202
	* config.gcc: Enable SSE math for i[34567]86-*-darwin* by
	default.  Set the default 32bit/64bit archs with $with_arch
	instead of $arch for i[34567]86-*-*|x86_64-*-* targets.

From-SVN: r157118
2010-02-27 23:23:31 -08:00
H.J. Lu c6b9174f2e Set the default 32bit/64bit archs if needed.
2010-02-27  H.J. Lu  <hongjiu.lu@intel.com>

	* config.gcc: Set the default 32bit/64bit archs if 64bit ISA is
	required and i[34567]86-*-* targets don't support 64bit ISA.

From-SVN: r157110
2010-02-27 09:44:41 -08:00
H.J. Lu 4d16c0dc91 Set the default arch at least to Prescott/Pentium 4.
2010-02-26  H.J. Lu  <hongjiu.lu@intel.com>

	* config.gcc: Set the default arch at least to Prescott for
	i[34567]86-*-darwin* and Pentium 4 for i[34567]86-*-* targets
	if SSE math is enabled.

From-SVN: r157101
2010-02-26 14:35:34 -08:00
H.J. Lu a3af5e2615 Support --with-fpmath=sse for x86.
2010-02-26  H.J. Lu  <hongjiu.lu@intel.com>

	* config.gcc: Support --with-fpmath=sse for x86.

	* config/i386/ssemath.h: New.

	* doc/install.texi (--with-fpmath=sse): Documented.

From-SVN: r157090
2010-02-26 06:52:01 -08:00
Uros Bizjak 894b386f8e config.gcc (i[34567]86-*-* | x86_64-*-*): Split long line.
* config.gcc (i[34567]86-*-* | x86_64-*-*): Split long line.
	(arm*-*-*): Ditto.

From-SVN: r157082
2010-02-26 09:17:00 +01:00
H.J. Lu 3fd7763031 Set default arch/cpu for i[34567]86-*-*|x86_64-*-* targets.
2010-02-25  H.J. Lu  <hongjiu.lu@intel.com>

	* config.gcc: Set arch/cpu for i[34567]86-*-*|x86_64-*-*
	targets.  Set the default with_cpu/with_arch from arch/cpu.
	Allow x86-64 and native for with_cpu/with_arch.

From-SVN: r157081
2010-02-25 18:37:40 -08:00
Rainer Orth bef64e0fad * config.gcc: Fix typo in mips-sgi-irix6.[0-4]* obsoletion.
From-SVN: r157043
2010-02-24 14:40:32 +00:00
Rainer Orth 68ba2afe7c sol2.h (NO_DBX_BNSYM_ENSYM): Define.
* config/i386/sol2.h (NO_DBX_BNSYM_ENSYM): Define.
	* config/i386/sol2-gas.h: New file.
	* config.gcc (i[34567]86-*-solaris2*): Use it.

From-SVN: r157042
2010-02-24 13:57:20 +00:00
Mikael Pettersson ccb265d66e gas.h: New file.
2010-02-17  Mikael Pettersson  <mikpe@it.uu.se>

	* config/sparc/gas.h: New file.  Restore
	TARGET_ASM_NAMED_SECTION to its ELF default.
	* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Do not
	check !HAVE_GNU_AS.
	* config/sparc/sparc.c (sparc_elf_asm_named_section):
	Likewise.  Add ATTRIBUTE_UNUSED to prototype.
	* config.gcc (sparc*-*-linux*): Include sparc/gas.h
	after sparc/sysv4.h.

From-SVN: r156854
2010-02-17 19:28:52 -08:00
Rainer Orth bde17fdc4d config.gcc: Reenable check for obsolete targets.
* config.gcc: Reenable check for obsolete targets.
	Obsolete alpha*-dec-osf4*, alpha*-dec-osf5.0*, mips-sgi-irix5*,
	mips-sgi-irix6.[0-4]*.

From-SVN: r156462
2010-02-03 09:03:59 +00:00
Kai Tietz 8370a62af8 config.gcc: Adjust order of makefile fragments for mingw targets.
2010-01-31  Kai Tietz  <kai.tietz@onevision.com>

        * config.gcc: Adjust order of makefile fragments for mingw targets.

From-SVN: r156406
2010-01-31 18:05:08 +01:00
Rainer Orth dc4f0670e5 config.gcc (mips-sgi-irix[56]*): Set use_gcc_stdint.
gcc:
	* config.gcc (mips-sgi-irix[56]*): Set use_gcc_stdint.
	* config/mips/iris.h (INT8_TYPE, INT16_TYPE, INT32_TYPE,
	INT64_TYPE): Define.
	(UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
	(INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
	INT_LEAST64_TYPE): Define.
	(UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
	UINT_LEAST64_TYPE): Define.
	(INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE)
	INT_FAST64_TYPE): Define.
	(UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
	UINT_FAST64_TYPE): Define.
	(INTMAX_TYPE, UINTMAX_TYPE): Define.
	(INTPTR_TYPE, UINTPTR_TYPE): Define.
	(SIG_ATOMIC_TYPE): Define.

	fixincludes:
	* inclhack.def (aix_stdint_1): Add stdint-aix.h to files.
	(aix_stdint_2): Likewise.
	(aix_stdint_3): Likewise.
	(aix_stdint_4): Likewise.
	(aix_stdint_5): Likewise.
	(darwin_stdint_1): Add stdint-darwin.h to files.
	(darwin_stdint_2): Likewise.
	(darwin_stdint_3): Likewise.
	(darwin_stdint_4): Likewise.
	(darwin_stdint_5): Likewise.
	(darwin_stdint_6): Likewise.
	(darwin_stdint_7): Likewise.
	(hpux_c99_intptr): Add stdint-hpux11.h to files.
	(hpux_c99_inttypes): Likewise.
	(hpux_c99_inttypes2): Likewise.
	(hpux_stdint_least_fast): Likewise.
	(irix_stdint_c99): Renamed to irix_stdint_c99_mode.
	(irix_stdint_c99_types): New fix.
	(irix_stdint_c99_macros): New fix.
	(newlib_stdint_1): Add stdint-newlib.h to files.
	(newlib_stdint_2): Likewise.
	fixincl.x: Regenerate.
	tests/base/stdint-aix.h: New file.
	tests/base/stdint.h [AIX_STDINT_1_CHECK, AIX_STDINT_2_CHECK,
	AIX_STDINT_3_CHECK, AIX_STDINT_4_CHECK, AIX_STDINT_5_CHECK]: Moved ...
	tests/base/stdint-aix.h: ... here.
	[AIX_STDINT_3_CHECK]: Updated to match aix_stdint_3 fix.
	[AIX_STDINT_4_CHECK]: Updated to match aix_stdint_4 fix.
	[AIX_STDINT_5_CHECK]: Updated to match aix_stdint_5 fix.
	tests/base/stdint-darwin.h: New file.
	tests/base/stdint.h [DARWIN_STDINT_1_CHECK, DARWIN_STDINT_2_CHECK,
	DARWIN_STDINT_3_CHECK, DARWIN_STDINT_4_CHECK,
	DARWIN_STDINT_5_CHECK, DARWIN_STDINT_6_CHECK]: Moved ...
	tests/base/stdint-darwin.h: ... here.
	[DARWIN_STDINT_1_CHECK]: Updated to match darwin_stdint_1 fix.
	[DARWIN_STDINT_4_CHECK]: Updated to match darwin_stdint_4 fix.
	[DARWIN_STDINT_6_CHECK]: Updated to match darwin_stdint_6 fix.
	tests/base/stdint-hpux11.h: New file.
	tests/base/stdint.h [HPUX_C99_INTPTR_CHECK,
	HPUX_C99_INTTYPES2_CHECK, HPUX_STDINT_LEAST_FAST_CHECK]: Moved ...
	tests/base/stdint-hpux11.h: ... here.
	[HPUX_C99_INTPTR_CHECK]: Updated to match hpux_c99_intptr fix.
	[HPUX_C99_INTTYPES2_CHECK]: Updated to match hpux_c99_inttypes2 fix.
	tests/base/stdint.h [IRIX_STDINT_C99_CHECK]: Renamed guard to
	IRIX_STDINT_C99_MODE_CHECK.
	tests/base/stdint-irix65.h: New file.
	tests/base/stdint-newlib.h: New file.
	tests/base/stdint.h [NEWLIB_STDINT_1_CHECK,
	NEWLIB_STDINT_2_CHECK]: Moved ...
	tests/base/stdint-newlib.h: ... here.

From-SVN: r156259
2010-01-26 19:24:32 +00:00
Felyza Wishbringer 83a5ef25d3 re PR bootstrap/42786 (Athlon SSE3 and Fx processors not supported by configure)
PR bootstrap/42786
	* config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
	cpu types.  Add support for *-sse3 cpu types.
	(x86_64-*-*): Ditto.

From-SVN: r156071
2010-01-20 12:27:49 +01:00
Andy Hutchinson 17fad3611f re PR target/42457 (AVR fails to build with other than C family languages)
2009-12-24  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>

	PR target/42457
	* config/avr/avr.c (avr_extra_arch_macro): Remove static.
	(avr_cpu_cpp_builtins): Remove.
	* config/avr/avr.h (avr_extra_arch_macro): Add prototype.
	* config/avr/avr-c.c: New File.
	(avr_cpu_cpp_builtins) : Add.
	* config/avr/t-avr: Add make information for avr-c.
	* config.gcc (avr-*-*): Include avr-c.o as c and cpp object.

From-SVN: r155460
2009-12-24 20:32:38 +00:00
Jakub Jelinek 7fccdfcfb9 Fix ABM.
2009-12-04  Jakub Jelinek  <jakub@redhat.com>

	* config/i386/i386.c (bdesc_special_args): Move __builtin_clzs from
	this array ...
	(bdesc_args): ... here.
	* config.gcc (i[34567]86-*-*): Include abmintrin.h.
	(x86_64-*-*): Likewise.

	* gcc.target/i386/sse-12.c: Add -mabm to dg-options, mention
	abmintrin.h is also tested.
	* gcc.target/i386/sse-13.c: Likewise.

From-SVN: r155059
2009-12-07 22:23:01 +00:00
Sebastian Pop 3bccee0302 Fix _mm_popcnt* intrinsics.
* config.gcc (i[34567]86-*-*, x86_64-*-*): Add popcntintrin.h.
	* config/i386/abmintrin.h (_mm_popcnt_u32, _mm_popcnt_u64): Moved...
	* config/i386/i386-c.c (__POPCNT__): Defined.
	* config/i386/popcntintrin.h: ...here.  New file.
	* config/i386/smmintrin.h (_mm_popcnt_u32, _mm_popcnt_u64): Moved...
	Include popcntintrin.h.
	* config/i386/x86intrin.h: Include popcntintrin.h when __POPCNT__
	is defined.

From-SVN: r155058
2009-12-07 22:22:54 +00:00
Edmar Wienskoski b17f98b1c5 config.gcc (cpu_is_64bit): Add new core e500mc64.
2009-12-07  Edmar Wienskoski  <edmar@freescale.com>

        * config.gcc (cpu_is_64bit): Add new core e500mc64.
        (powerpc*-*-*): Add new core e500mc64.
        * config/rs6000/e500mc64.md: New file.
        * config/rs6000/rs6000.c (processor_costs): Add new costs for
        e500mc64.
        (rs6000_override_options): Add e500mc64 case to
        processor_target_table. Altivec and Spe options not allowed with
        e500mc64. Disable string instructions for e500mc64. Enable branch
        targets alignment for both e500mc and e500mc64. Initialize
        rs6000_cost for e500mc64.
        (rs6000_emit_sISEL): New function.
        (rs6000_emit_sCOND): Call rs6000_emit_sISEL for isel targets.
        (rs6000_emit_int_cmove): Fix mode of 64 bit isel pattern
        generation.
        (rs6000_issue_rate): Set issue rate for e500mc64.
        (rs6000_rtx_costs): Set more accurate cost for mfcr instruction
        on architectures with isel.
        * config/rs6000/rs6000-protos.h (rs6000_emit_sISEL): Declare.
        * config/rs6000/rs6000.h (processor_type): Add
        PROCESSOR_PPCE500MC64.
        (ASM_CPU_SPEC): Add e500mc64.
        * config/rs6000/rs6000.md (define_attr "cpu"): Add ppce500mc64.
        Include e500mc64.md.
        (abssi2_isel): Expand pattern to handle DImode.
        (nabs<mode>2_isel): New pattern.
        (absdi2): Change pattern to handle 64 bit isel targets.
        (absdi2_internal): Exclude ISEL targets.
        (nabsdi2): Exclude ISEL targets.
        * doc/invoke.texi: Add e500mc64 to list of cpus.

From-SVN: r155044
2009-12-07 10:34:21 -05:00
Matthias Klose a7004a7e0e re PR target/40134 (symbols not resolved when building shared libraries (link with -lgcc_s -lgcc?))
2009-12-04  Matthias Klose  <doko@ubuntu.com>
            John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

        PR target/40134
        * config.gcc (hppa*-*-linux*): Use config/t-slibgcc-libgcc.
        * config/pa/pa-linux.h (LIB_SPEC): Remove.

Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>

From-SVN: r154973
2009-12-04 07:47:51 +00:00
Rainer Orth 25bcd7ea32 config.gcc (alpha*-dec-osf[45]*): Set use_gcc_stdint.
gcc:
	* config.gcc (alpha*-dec-osf[45]*): Set use_gcc_stdint.
	* config/alpha/osf.h (SIG_ATOMIC_TYPE): Define.
	(INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE): Define.
	(UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
	(INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
	(INT_LEAST64_TYPE): Define.
	(UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
	UINT_LEAST64_TYPE): Define.
	(INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE,
	INT_FAST64_TYPE): Define.
	(UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
	UINT_FAST64_TYPE): Define.
	(INTPTR_TYPE, UINTPTR_TYPE): Define.

	gcc/testsuite:
	* gcc.dg/c99-stdint-6.c: Set dg-options for alpha*-dec-osf5*.
	Wrap *int_least*_t tests in !NO_LEAST_TYPES.
	Wrap *intmax_t tests in !NO_MAX_TYPES.

From-SVN: r154373
2009-11-20 16:55:19 +00:00
Paul Brook 1abed66bb0 config.gcc: Add new ARM --with-fpu options.
2009-11-19  Paul Brook  <paul@codesourcery.com>

	gcc/
	* config.gcc: Add new ARM --with-fpu options.
	* doc/invoke.texi: Docuent ARM -mfpu=fpv4-sp-d16.
	* config/arm/arm.c (all_fpus): Add fpv4-sp-d16.

From-SVN: r154328
2009-11-19 12:09:22 +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
Paul Brook e0dc3601d3 extend.texi (Half-Precision): Update wording to reflect that there are now multiple -mfpu options that enable...
2009-11-09  Paul Brook  <paul@codesourcery.com>
	Daniel Jacobowitz  <dan@codesourcery.com>
	Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/extend.texi (Half-Precision): Update wording to reflect
	that there are now multiple -mfpu options that enable fp16
	hardware support.
	* doc/invoke.texi: Update list of ARM -mfpu= options.
	* config.gcc: Update ARM --with-fpu option list.
	* config/arm/arm.c (all_fpus): Add vfpv3-fp16, vfpv3-d16-fp16,
	vfpv3xd and vfpv3xd-fp16.
	(use_vfp_abi): New function.
	(aapcs_vfp_is_call_or_return_candidate): Avoid double precision regs
	when undesirable.
	(aapcs_vfp_is_return_candidate, aapcs_vfp_is_call_candidate,
	aapcs_vfp_allocate_return_reg): Use use_vfp_abi.
        (arm_rtx_costs_1, arm_size_rtx_costs, arm_fastmul_rtx_costs,
        arm_9e_rtx_costs): Only expect double-precision operations if the FPU
        provides them.
	(coproc_secondary_reload_class): Reload HFmode via GENERAL_REGS if no
	NEON.
	(arm_print_operand): Handle 'p' modifier.
	(arm_hard_regno_mode_ok): : Allow HFmode in VFP registers if
	TARGET_FP16.
	* config/arm/arm.h (TARGET_VFP_SINGLE, TARGET_VFP_DOUBLE): Define.
	(TARGET_FP16): Define.
	* config/arm/vfp.md: Disable double-precision patterns if the FPU
	does not provide them.
	(arm_movdi_vfp, thumb2_movdi_vfp): Use fcpys to move
	double-precision values on a single-precision FPU.
        (movdf_vfp, thumb2_movdf_vfp): Likewise.  Use "Dy" for
        double-precision constants.
	(movhf_vfp_neon): New pattern (was movhf_vfp).
	(movhf_vfp): Remove NEON instructions.
	* config/arm/constraints.md: Add new "Dy" constraint for
	double-precision constants.  Update description of "Dv".
	* config/arm/arm.md: Disable double-precision patterns if the FPU
	does not provide them


Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>

From-SVN: r154034
2009-11-09 13:50:38 +00:00
Harsha Jagasia 3e901069e7 invoke.texi (-mlwp): Add documentation.
2009-11-04  Harsha Jagasia  <harsha.jagasia@amd.com>
            Dwarakanath Rajagopal  <dwarak.rajagopal@amd.com>

        * doc/invoke.texi (-mlwp): Add documentation.
        * doc/extend.texi (x86 intrinsics): Add LWP intrinsics.
        * config.gcc (i[34567]86-*-*): Include lwpintrin.h.
        (x86_64-*-*): Ditto.
        * config/i386/lwpintrin.h: New file, provide x86 compiler
        intrinisics for LWP.
        * config/i386/cpuid.h (bit_LWP): Define LWP bit.
        * config/i386/x86intrin.h: Add LWP check and lwpintrin.h.
        * config/i386/i386-c.c (ix86_target_macros_internal): Check
        ISA_FLAG for LWP. 
        * config/i386/i386.h (TARGET_LWP): New macro for LWP.
        * config/i386/i386.opt (-mlwp): New switch for LWP support.
        * config/i386/i386.c (OPTION_MASK_ISA_LWP_SET): New.
        (OPTION_MASK_ISA_LWP_UNSET): New.       
        (ix86_handle_option): Handle -mlwp.
        (isa_opts): Handle -mlwp.
        (enum pta_flags): Add PTA_LWP.
        (override_options): Add LWP support.
        (IX86_BUILTIN_LLWPCB16): New for LWP intrinsic.
        (IX86_BUILTIN_LLWPCB32): Ditto.
        (IX86_BUILTIN_LLWPCB64): Ditto.
        (IX86_BUILTIN_SLWPCB16): Ditto.
        (IX86_BUILTIN_SLWPCB32): Ditto.
        (IX86_BUILTIN_SLWPCB64): Ditto.
        (IX86_BUILTIN_LWPVAL16): Ditto.
        (IX86_BUILTIN_LWPVAL32): Ditto.
        (IX86_BUILTIN_LWPVAL64): Ditto.
        (IX86_BUILTIN_LWPINS16): Ditto.
        (IX86_BUILTIN_LWPINS32): Ditto.
        (IX86_BUILTIN_LWPINS64): Ditto.
        (enum  ix86_special_builtin_type): Add LWP intrinsic support.
        (builtin_description): Ditto.
        (ix86_init_mmx_sse_builtins): Ditto.
        (ix86_expand_special_args_builtin): Ditto.
        * config/i386/i386.md (UNSPEC_LLWP_INTRINSIC): Add new UNSPEC
        for LWP support.
        (UNSPEC_SLWP_INTRINSIC): Ditto.
        (UNSPECV_LWPVAL_INTRINSIC): Ditto.
        (UNSPECV_LWPINS_INTRINSIC): Ditto.
        (lwp_llwpcbhi1): New lwp pattern.
        (lwp_llwpcbsi1): Ditto.
        (lwp_llwpcbdi1): Ditto.
        (lwp_slwpcbhi1): Ditto.
        (lwp_slwpcbsi1): Ditto.
        (lwp_slwpcbdi1): Ditto.
        (lwp_lwpvalhi3): Ditto.
        (lwp_lwpvalsi3): Ditto.
        (lwp_lwpvaldi3): Ditto.
        (lwp_lwpinshi3): Ditto.
        (lwp_lwpinssi3): Ditto.
        (lwp_lwpinsdi3): Ditto.


Co-Authored-By: Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>

From-SVN: r153917
2009-11-04 21:15:42 +00:00
Harsha Jagasia 43a8b70590 config.gcc (i[34567]86-*-*): Include xopintrin.h.
2009-11-04  Harsha Jagasia  <harsha.jagasia@amd.com>
            Dwarakanath Rajagopal  <dwarak.rajagopal@amd.com>
        
        * config.gcc (i[34567]86-*-*): Include xopintrin.h.
        (x86_64-*-*): Ditto.
        * config/i386/xopintrin.h: New file, provide common x86 compiler
        intrinisics for XOP.
        * config/i386/cpuid.h (bit_XOP): Define XOP bit.
        * config/i386/x86intrin.h: Add XOP check and xopintrin.h.
        * config/i386/i386-c.c(ix86_target_macros_internal): Check
        ISA_FLAG for XOP. 
        * config/i386/i386.h(TARGET_XOP): New macro for XOP.
        * config/i386/i386.opt (-mxop): New switch for XOP support.
        * config/i386/i386.md (UNSPEC_XOP_UNSIGNED_CMP)
        (UNSPEC_XOP_TRUEFALSE)
        (UNSPEC_XOP_PERMUTE)
        (UNSPEC_FRCZ): Add new UNSPEC for XOP support.
        (PPERM_*): New constants for vpperm instruction.
        (xop_pcmov_<mode>): Add XOP conditional mov instructions.
        * config/i386/i386.c (OPTION_MASK_ISA_XOP_SET): New.
        (OPTION_MASK_ISA_XOP_UNSET): New.       
        (OPTION_MASK_ISA_XOP_UNSET): Change definition to
        depend on XOP.
        (ix86_handle_option): Handle -mxop.
        (isa_opts): Handle -mxop.
        (enum pta_flags): Add PTA_XOP.
        (override_options): Add XOP support.
        (print_operand): Add code for XOP compare instructions.
        (ix86_expand_sse_movcc): Extend for XOP conditional move
instruction.
        (ix86_expand_int_vcond): Extend for XOP compare instruction.

        (IX86_BUILTIN_VPCMOV): New for XOP intrinsic.
        (IX86_BUILTIN_VPCMOV_V2DI): Ditto.
        (IX86_BUILTIN_VPCMOV_V4SI): Ditto.
        (IX86_BUILTIN_VPCMOV_V8HI): Ditto.
        (IX86_BUILTIN_VPCMOV_V16QI): Ditto.
        (IX86_BUILTIN_VPCMOV_V4SF): Ditto.
        (IX86_BUILTIN_VPCMOV_V2DF): Ditto.

        (IX86_BUILTIN_VPCMOV256): Ditto.
        (IX86_BUILTIN_VPCMOV_V4DI256): Ditto.
        (IX86_BUILTIN_VPCMOV_V8SI256): Ditto.
        (IX86_BUILTIN_VPCMOV_V16HI256): Ditto.
        (IX86_BUILTIN_VPCMOV_V32QI256): Ditto.
        (IX86_BUILTIN_VPCMOV_V8SF256): Ditto.
        (IX86_BUILTIN_VPCMOV_V4DF256): Ditto.

        (IX86_BUILTIN_VPPERM): Ditto.

        (IX86_BUILTIN_VPMACSSWW): Ditto.
        (IX86_BUILTIN_VPMACSWW): Ditto.
        (IX86_BUILTIN_VPMACSSWD): Ditto.
        (IX86_BUILTIN_VPMACSWD): Ditto.
        (IX86_BUILTIN_VPMACSSDD): Ditto.
        (IX86_BUILTIN_VPMACSDD): Ditto.
        (IX86_BUILTIN_VPMACSSDQL): Ditto.
        (IX86_BUILTIN_VPMACSSDQH): Ditto.
        (IX86_BUILTIN_VPMACSDQL): Ditto.
        (IX86_BUILTIN_VPMACSDQH): Ditto.
        (IX86_BUILTIN_VPMADCSSWD): Ditto.
        (IX86_BUILTIN_VPMADCSWD): Ditto.

        (IX86_BUILTIN_VPHADDBW): Ditto.
        (IX86_BUILTIN_VPHADDBD): Ditto.
        (IX86_BUILTIN_VPHADDBQ): Ditto.
        (IX86_BUILTIN_VPHADDWD): Ditto.
        (IX86_BUILTIN_VPHADDWQ): Ditto.
        (IX86_BUILTIN_VPHADDDQ): Ditto.
        (IX86_BUILTIN_VPHADDUBW): Ditto.
        (IX86_BUILTIN_VPHADDUBD): Ditto.
        (IX86_BUILTIN_VPHADDUBQ): Ditto.
        (IX86_BUILTIN_VPHADDUWD): Ditto.
        (IX86_BUILTIN_VPHADDUWQ): Ditto.
        (IX86_BUILTIN_VPHADDUDQ): Ditto.
        (IX86_BUILTIN_VPHSUBBW): Ditto.
        (IX86_BUILTIN_VPHSUBWD): Ditto.
        (IX86_BUILTIN_VPHSUBDQ): Ditto.

        (IX86_BUILTIN_VPROTB): Ditto.
        (IX86_BUILTIN_VPROTW): Ditto.
        (IX86_BUILTIN_VPROTD): Ditto.
        (IX86_BUILTIN_VPROTQ): Ditto.
        (IX86_BUILTIN_VPROTB_IMM): Ditto.
        (IX86_BUILTIN_VPROTW_IMM): Ditto.
        (IX86_BUILTIN_VPROTD_IMM): Ditto.
        (IX86_BUILTIN_VPROTQ_IMM): Ditto.

        (IX86_BUILTIN_VPSHLB): Ditto.
        (IX86_BUILTIN_VPSHLW): Ditto.
        (IX86_BUILTIN_VPSHLD): Ditto.
        (IX86_BUILTIN_VPSHLQ): Ditto.
        (IX86_BUILTIN_VPSHAB): Ditto.
        (IX86_BUILTIN_VPSHAW): Ditto.
        (IX86_BUILTIN_VPSHAD): Ditto.
        (IX86_BUILTIN_VPSHAQ): Ditto.

        (IX86_BUILTIN_VFRCZSS): Ditto.
        (IX86_BUILTIN_VFRCZSD): Ditto.
        (IX86_BUILTIN_VFRCZPS): Ditto.
        (IX86_BUILTIN_VFRCZPD): Ditto.
        (IX86_BUILTIN_VFRCZPS256): Ditto.
        (IX86_BUILTIN_VFRCZPD256): Ditto.

        (IX86_BUILTIN_VPCOMEQUB): Ditto.
        (IX86_BUILTIN_VPCOMNEUB): Ditto.
        (IX86_BUILTIN_VPCOMLTUB): Ditto.
        (IX86_BUILTIN_VPCOMLEUB): Ditto.
        (IX86_BUILTIN_VPCOMGTUB): Ditto.
        (IX86_BUILTIN_VPCOMGEUB): Ditto.
        (IX86_BUILTIN_VPCOMFALSEUB): Ditto.
        (IX86_BUILTIN_VPCOMTRUEUB): Ditto.

        (IX86_BUILTIN_VPCOMEQUW): Ditto.
        (IX86_BUILTIN_VPCOMNEUW): Ditto.
        (IX86_BUILTIN_VPCOMLTUW): Ditto.
        (IX86_BUILTIN_VPCOMLEUW): Ditto.
        (IX86_BUILTIN_VPCOMGTUW): Ditto.
        (IX86_BUILTIN_VPCOMGEUW): Ditto.
        (IX86_BUILTIN_VPCOMFALSEUW): Ditto.
        (IX86_BUILTIN_VPCOMTRUEUW): Ditto.

        (IX86_BUILTIN_VPCOMEQUD): Ditto.
        (IX86_BUILTIN_VPCOMNEUD): Ditto.
        (IX86_BUILTIN_VPCOMLTUD): Ditto.
        (IX86_BUILTIN_VPCOMLEUD): Ditto.
        (IX86_BUILTIN_VPCOMGTUD): Ditto.
        (IX86_BUILTIN_VPCOMGEUD): Ditto.
        (IX86_BUILTIN_VPCOMFALSEUD): Ditto.
        (IX86_BUILTIN_VPCOMTRUEUD): Ditto.

        (IX86_BUILTIN_VPCOMEQUQ): Ditto.
        (IX86_BUILTIN_VPCOMNEUQ): Ditto.
        (IX86_BUILTIN_VPCOMLTUQ): Ditto.
        (IX86_BUILTIN_VPCOMLEUQ): Ditto.
        (IX86_BUILTIN_VPCOMGTUQ): Ditto.
        (IX86_BUILTIN_VPCOMGEUQ): Ditto.
        (IX86_BUILTIN_VPCOMFALSEUQ): Ditto.
        (IX86_BUILTIN_VPCOMTRUEUQ): Ditto.

        (IX86_BUILTIN_VPCOMEQB): Ditto.
        (IX86_BUILTIN_VPCOMNEB): Ditto.
        (IX86_BUILTIN_VPCOMLTB): Ditto.
        (IX86_BUILTIN_VPCOMLEB): Ditto.
        (IX86_BUILTIN_VPCOMGTB): Ditto.
        (IX86_BUILTIN_VPCOMGEB): Ditto.
        (IX86_BUILTIN_VPCOMFALSEB): Ditto.
        (IX86_BUILTIN_VPCOMTRUEB): Ditto.

        (IX86_BUILTIN_VPCOMEQW): Ditto.
        (IX86_BUILTIN_VPCOMNEW): Ditto.
        (IX86_BUILTIN_VPCOMLTW): Ditto.
        (IX86_BUILTIN_VPCOMLEW): Ditto.
        (IX86_BUILTIN_VPCOMGTW): Ditto.
        (IX86_BUILTIN_VPCOMGEW): Ditto.
        (IX86_BUILTIN_VPCOMFALSEW): Ditto.
        (IX86_BUILTIN_VPCOMTRUEW): Ditto.

        (IX86_BUILTIN_VPCOMEQD): Ditto.
        (IX86_BUILTIN_VPCOMNED): Ditto.
        (IX86_BUILTIN_VPCOMLTD): Ditto.
        (IX86_BUILTIN_VPCOMLED): Ditto.
        (IX86_BUILTIN_VPCOMGTD): Ditto.
        (IX86_BUILTIN_VPCOMGED): Ditto.
        (IX86_BUILTIN_VPCOMFALSED): Ditto.
        (IX86_BUILTIN_VPCOMTRUED): Ditto.

        (IX86_BUILTIN_VPCOMEQQ): Ditto.
        (IX86_BUILTIN_VPCOMNEQ): Ditto.
        (IX86_BUILTIN_VPCOMLTQ): Ditto.
        (IX86_BUILTIN_VPCOMLEQ): Ditto.
        (IX86_BUILTIN_VPCOMGTQ): Ditto.
        (IX86_BUILTIN_VPCOMGEQ): Ditto.
        (IX86_BUILTIN_VPCOMFALSEQ): Ditto.
        (IX86_BUILTIN_VPCOMTRUEQ): Ditto.

        (enum multi_arg_type): New enum for describing the various XOP
        intrinsic argument types.
        (bdesc_multi_arg): New table for XOP intrinsics.
        (ix86_init_mmx_sse_builtins): Add XOP intrinsic support.
        (ix86_expand_multi_arg_builtin): New function for creating XOP
        intrinsics.

        * config/i386/sse.md (sserotatemax): New mode attribute for XOP.
        (xop_pmacsww): Ditto.
        (xop_pmacssww): Ditto.
        (xop_pmacsdd): Ditto.
        (xop_pmacssdd): Ditto.
        (xop_pmacssdql): Ditto.
        (xop_pmacssdqh): Ditto.
        (xop_pmacsdql): Ditto.
        (xop_pmacsdql_mem): Ditto.
        (xop_mulv2div2di3_low): Ditto.
        (xop_pmacsdqh): Ditto.
        (xop_pmacsdqh_mem): Ditto.
        (xop_mulv2div2di3_high): Ditto.
        (xop_pmacsswd): Ditto.
        (xop_pmacswd): Ditto.
        (xop_pmadcsswd): Ditto.
        (xop_pmadcswd): Ditto.
        (xop_pcmov_<mode>): Ditto.
        (xop_pcmov_<mode>)256: Ditto.
        (xop_phaddbw): Ditto.
        (xop_phaddbd): Ditto.
        (xop_phaddbq): Ditto.
        (xop_phaddwd): Ditto.
        (xop_phaddwq): Ditto.
        (xop_phadddq): Ditto.
        (xop_phaddubw): Ditto.
        (xop_phaddubd): Ditto.
        (xop_phaddubq): Ditto.
        (xop_phadduwd): Ditto.
        (xop_phadduwq): Ditto.
        (xop_phaddudq): Ditto.
        (xop_phsubbw): Ditto.
        (xop_phsubwd): Ditto.
        (xop_phsubdq): Ditto.
        (xop_pperm): Ditto.
        (rotl<mode>3): Ditto.
        (rotr<mode>3): Ditto.
        (xop_rotl<mode>3): Ditto.
        (xop_rotr<mode>3): Ditto.
        (vrotr<mode>3): Ditto.
        (vrotl<mode>3): Ditto.
        (xop_vrotl<mode>3): Ditto.
        (vlshr<mode>3): Ditto.
        (vashr<mode>3): Ditto.
        (vashl<mode>3
        (xop_ashl<mode>3): Ditto.
        (xop_lshl<mode>3): Ditto.
        (ashlv16qi3): Ditto.
        (lshlv16qi3): Ditto.
        (ashrv16qi3): Ditto.
        (ashrv2di3): Ditto.
        (xop_frcz<mode>2): Ditto.
        (xop_vmfrcz<mode>2): Ditto.
        (xop_frcz<mode>2256): Ditto.    
        (xop_maskcmp<mode>3): Ditto.
        (xop_maskcmp_uns<mode>3): Ditto.
        (xop_maskcmp_uns2<mode>3): Ditto.
        (xop_pcom_tf<mode>3): Ditto.

        * doc/invoke.texi (-mxop): Add documentation.
        * doc/extend.texi (x86 intrinsics): Add XOP intrinsics.

        * gcc.target/i386/xop-check.h: New file.
        * gcc.target/i386/xop-hadduX.c: Ditto.
        * gcc.target/i386/xop-haddX.c: Ditto.
        * gcc.target/i386/xop-hsubX.c: Ditto.
        * gcc.target/i386/xop-imul32widen-vector.c: Ditto.
        * gcc.target/i386/xop-imul32widen-vector.c: Ditto.
        * gcc.target/i386/xop-pcmov2.c: Ditto.
        * gcc.target/i386/xop-pcmov.c: Ditto.
        * gcc.target/i386/xop-rotate1-vector.c: Ditto.
        * gcc.target/i386/xop-rotate2-vector.c: Ditto.
        * gcc.target/i386/xop-rotate3-vector.c: Ditto.
        * gcc.target/i386/xop-shift1-vector.c: Ditto.
        * gcc.target/i386/xop-shift2-vector.c: Ditto.
        * gcc.target/i386/xop-shift3-vector.c: Ditto.
        * gcc.target/i386/i386.exp:  Add check_effective_target_xop.
        * gcc.target/i386/sse-12.c: Update with new compile options to 
        activate and check xopintrin.h intrinsic file.
        * gcc.target/i386/sse-13.c: Ditto.
        * gcc.target/i386/sse-14.c: Ditto.
        * gcc.target/i386/sse-22.c: Ditto.
        * gcc.target/i386/sse-23.c: Ditto.
        * g++.dg/other/i386-2.C: Ditto.
        * g++.dg/other/i386-3.C: Ditto.
        * g++.dg/other/i386-5.C: Ditto.
        * g++.dg/other/i386-6.C: Ditto.
        


Co-Authored-By: Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>

From-SVN: r153901
2009-11-04 16:22:47 +00:00
Maciej W. Rozycki 45f681502f config.gcc (vax-*-linux*): Keep the original contents of tmake_file while adding vax/t-linux.
* config.gcc (vax-*-linux*): Keep the original contents of
	tmake_file while adding vax/t-linux.

From-SVN: r153882
2009-11-04 00:05:53 +00:00
Ben Elliston 299456f3c2 config.gcc (spu-*-elf*): Add spu_cache.h to extra_headers.
2009-10-26  Ben Elliston  <bje@au.ibm.com>
	    Michael Meissner  <meissner@linux.vnet.ibm.com>
	    Ulrich Weigand  <uweigand@de.ibm.com>

	* config.gcc (spu-*-elf*): Add spu_cache.h to extra_headers.
	* config/spu/spu_cache.h: New file.

	* config/spu/cachemgr.c: New file.
	* config/spu/cache.S: New file.

	* config/spu/spu.h (ASM_OUTPUT_SYMBOL_REF): Define.
	(ADDR_SPACE_EA): Define.
	(TARGET_ADDR_SPACE_KEYWORDS): Define.
	* config/spu/spu.c (EAmode): New macro.
	(TARGET_ADDR_SPACE_POINTER_MODE): Define.
	(TARGET_ADDR_SPACE_ADDRESS_MODE): Likewise.
	(TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Likewise.
	(TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Likewise.
	(TARGET_ADDR_SPACE_SUBSET_P): Likewise.
	(TARGET_ADDR_SPACE_CONVERT): Likewise.
	(TARGET_ASM_SELECT_SECTION): Likewise.
	(TARGET_ASM_UNIQUE_SECTION): Likewise.
	(TARGET_ASM_UNALIGNED_SI_OP): Likewise.
	(TARGET_ASM_ALIGNED_DI_OP): Likewise.
	(ea_symbol_ref): New function.
	(spu_legitimate_constant_p): Handle __ea qualified addresses.
	(spu_addr_space_legitimate_address_p): New function.
	(spu_addr_space_legitimize_address): Likewise.
	(cache_fetch): New global.
	(cache_fetch_dirty): Likewise.
	(ea_alias_set): Likewise.
	(ea_load_store): New function.
	(ea_load_store_inline): Likewise.
	(expand_ea_mem): Likewise.
	(spu_expand_mov): Handle __ea qualified memory references.
	(spu_addr_space_pointer_mode): New function.
	(spu_addr_space_address_mode): Likewise.
	(spu_addr_space_subset_p): Likewise.
	(spu_addr_space_convert): Likewise.
	(spu_section_type_flags): Handle "._ea" section.
	(spu_select_section): New function.
	(spu_unique_section): Likewise.
	* config/spu/spu-c.c (spu_cpu_cpp_builtins): Support __EA32__
	and __EA64__ predefined macros.
	* config/spu/spu-elf.h (LIB_SPEC): Handle -mcache-size= and
	-matomic-updates switches.

	* config/spu/t-spu-elf (MULTILIB_OPTIONS): Define.
	(EXTRA_MULTILIB_PARTS): Add libgcc_cachemgr.a,
	libgcc_cachemgr_nonatomic.a, libgcc_cache8k.a, libgcc_cache16k.a,
	libgcc_cache32k.a, libgcc_cache64k.a, libgcc_cache128k.a.
	($(T)cachemgr.o, $(T)cachemgr_nonatomic.o): New target.
	($(T)cache8k.o, $(T)cache16k.o, $(T)cache32k.o, $(T)cache64k.o,
	$(T)cache128k.o): Likewise.
	($(T)libgcc_%.a): Likewise.

	* config/spu/spu.h (TARGET_DEFAULT): Add MASK_ADDRESS_SPACE_CONVERSION.
	* config/spu/spu.opt (-mea32/-mea64): Add switches.
	(-maddress-space-conversion): Likewise.
	(-mcache-size=): Likewise.
	(-matomic-updates): Likewise.
	* doc/invoke.texi (-mea32/-mea64): Document.
	(-maddress-space-conversion): Likewise.
	(-mcache-size=): Likewise.
	(-matomic-updates): Likewise.

Co-Authored-By: Michael Meissner <meissner@linux.vnet.ibm.com>
Co-Authored-By: Ulrich Weigand <uweigand@de.ibm.com>

From-SVN: r153575
2009-10-26 21:59:17 +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
Matthias Klose d23a77342c re PR target/40134 (symbols not resolved when building shared libraries (link with -lgcc_s -lgcc?))
2009-10-19  Matthias Klose  <doko@ubuntu.com>

        PR target/40134
        * config.gcc (arm*-*-linux-*eabi): Use config/t-slibgcc-libgcc.

From-SVN: r152975
2009-10-19 14:26:28 +00:00
Peter Bergner 47f67e5156 configure.ac: Add test for dci instruction.
* configure.ac: Add test for dci instruction.
	* configure: Regenerate.
	* config.in: Likewise.
	* config.gcc: Handle --with-cpu=476 and --with-cpu=476fp.
	* doc/invoke.texi: Add cpu_type 476 and 476fp.
	(-mmulhw): Add 476 to description.
	(-mdlmzb): Likewise.
	* config/rs6000/t-fprules (MULTILIB_MATCHES_FLOAT): Include -mcpu=476.
	* config/rs6000/rs6000.c (processor_costs): Add ppc476_cost.
	(processor_target_table): Add 476 and 476fp entries.
	(rs6000_override_options): Use ppc476_cost for PROCESSOR_PPC476.
	(rs6000_issue_rate): Add CPU_PPC476.
	* config/rs6000/rs6000.h (ASM_CPU_476_SPEC): Define.
	(ASM_CPU_SPEC): Pass %(asm_cpu_476) for -mcpu=476 and -mcpu=476fp.
	(processor_type): Add PROCESSOR_PPC476.
	(EXTRA_SPECS): Add asm_cpu_476 string.
	* config/rs6000/rs6000.md: (define_attr "type"): Add isel attribute.
	(define_attr "cpu"): Add ppc476.
	Include 476.md.
	Update comments for 476.
	(isel_signed, isel_unsigned): Change to use "isel" type attribute.
	* config/rs6000/vxworks.h (CPP_SPEC): Handle 464 and 476.
	Update copyright year.
	* config/rs6000/476.md: New file.
	* config/rs6000/40x.md: Add description for "isel" attribute.
	Update copyright year.
	* config/rs6000/440.md: Likewise.
	* config/rs6000/603.md: Likewise.
	* config/rs6000/6xx.md: Likewise.
	* config/rs6000/7450.md: Likewise.
	* config/rs6000/7xx.md: Likewise.
	* config/rs6000/8540.md: Likewise.
	* config/rs6000/cell.md: Likewise.
	* config/rs6000/e300c2c3.md: Likewise.
	* config/rs6000/e500mc.md: Likewise.
	* config/rs6000/mpc.md: Likewise.
	* config/rs6000/power4.md: Likewise.
	* config/rs6000/power5.md: Likewise.
	* config/rs6000/power6.md: Likewise.
	* config/rs6000/power7.md: Likewise.
	* config/rs6000/rios1.md: Likewise.
	* config/rs6000/rios2.md: Likewise.
	* config/rs6000/rs64.md: Likewise.

From-SVN: r152626
2009-10-10 13:43:31 -05:00
Andreas Krebbel 81dd9fd798 config.gcc: Don't include the makefile fragments intended for libgcc.
2009-10-07  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config.gcc: Don't include the makefile fragments intended for
	libgcc.
	* config/s390/fixdfdi.h: File removed.
	* config/s390/libgcc-glibc.ver: File removed.
	* config/s390/s390.h: Remove the fixdfdi.h hack.
	* config/s390/t-crtstuff: File moved to libgcc dir.
	* config/s390/t-linux: Likewise.
	* config/s390/t-tpf: libgcc specific parts removed.
	* config/s390/t-linux64: Likewise.

2009-10-07  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config.host: Include the s390 makefile fragments.
	* config/s390/32/_fixdfdi.c: New file.
	* config/s390/32/_fixsfdi.c: New file.
	* config/s390/32/_fixtfdi.c: New file.
	* config/s390/32/_fixunsdfdi.c: New file.
	* config/s390/32/_fixunssfdi.c: New file.
	* config/s390/32/_fixunstfdi.c: New file.
	* config/s390/32/t-floattodi: New file.
	* config/s390/libgcc-glibc.ver: New file.
	* config/s390/t-crtstuff: New file.
	* config/s390/t-linux: New file.
	* config/s390/t-tpf: New file.

From-SVN: r152515
2009-10-07 08:26:47 +00:00
Ben Elliston ebde32fd24 config.gcc (powerpc*-*-*): Handle a2.
* config.gcc (powerpc*-*-*): Handle a2.
	* config/rs6000/rs6000.md (cpu): Add ppca2.  Include "a2.md".
	* config/rs6000/a2.md: New file.
	* config/rs6000/rs6000.opt (mno-update): New.
	(mupdate): Return to using a mask, not a var.
	* config/rs6000/rs6000.h (ASM_CPU_SPEC): Add support for a2.
	(enum processor_type): Add PROCESSOR_PPCA2.
	* config/rs6000/rs6000.c (ppca2_cost): New costs.
	(rs6000_override_options): Add "a2" to processor_target_table.
	Update rs6000_always_hint logic.  Correctly set rs6000_cost for
	a2.
	* doc/invoke.texi (RS/6000 and PowerPC Options): Document
	-mcpu=a2.

From-SVN: r152499
2009-10-07 06:37:40 +11:00
Nick Clifton 3c8348d376 config.gcc (sh-symbianelf): Replace definition of extra_objs with separate definitions of c_target_objs and...
* config.gcc (sh-symbianelf): Replace definition of extra_objs
        with separate definitions of c_target_objs and cxx_target_objs.
        * config/sh/t-sh: Add rules to build symbian-cxx.o, symbian-c.o
        and symbian-base.o.
        * config/sh/sh.c (TARGET_CXX_INPUT_EXPORT_CLASS): Use
        sh_symbian_import_export_class.
        * config/sh/sh-protos.h: Fix names of exported symbian functions.
        * config/sh/symbian.c: Delete, moving code into...
        * config/sh/symbian-base.c: ... here
        * config/sh/symbian-c.c: ... and here
        * config/sh/symbian-cxx.c: ... and here.

From-SVN: r152323
2009-09-30 07:27:28 +00:00
Harsha Jagasia cbf2e4d4f1 config.gcc (i[34567]86-*-*): Include fma4intrin.h.
2009-09-29  Harsha Jagasia  <harsha.jagasia@amd.com>

	* config.gcc (i[34567]86-*-*): Include fma4intrin.h.
	(x86_64-*-*): Ditto.	

	* config/i386/fma4intrin.h: New file, provide common x86 compiler
	intrinisics for FMA4.
	* config/i386/cpuid.h (bit_FMA4): Define FMA4 bit.
	* config/i386/x86intrin.h: Fix typo to SSE4A instead of SSE4a.
	Add FMA4 check and fma4intrin.h.
	* config/i386/i386-c.c(ix86_target_macros_internal): Check
	ISA_FLAG for FMA4. 
	* config/i386/i386.h(TARGET_FMA4): New macro for FMA4.
	* config/i386/i386.md (UNSPEC_FMA4_INTRINSIC): Add new UNSPEC
	constant for FMA4 support.
	(UNSPEC_FMA4_FMADDSUB): Ditto.
	(UNSPEC_FMA4_FMSUBADD): Ditto.
	* config/i386/i386.opt (-mfma4): New switch for FMA4 support.
	* config/i386/i386-protos.h (ix86_fma4_valid_op_p): Add
	declaration.
	(ix86_expand_fma4_multiple_memory): Ditto.
	* config/i386/i386.c (OPTION_MASK_ISA_FMA4_SET): New.
	(OPTION_MASK_ISA_FMA4_UNSET): New.	
	(OPTION_MASK_ISA_SSE4A_UNSET): Change definition to
	depend on FMA4.
	(OPTION_MASK_ISA_AVX_UNSET): Change definition to
	depend on FMA4.
	(ix86_handle_option): Handle -mfma4.
	(isa_opts): Handle -mfma4.
	(enum pta_flags): Add PTA_FMA4.
	(override_options): Add FMA4 support.	
	(IX86_BUILTIN_VFMADDSS): New for FMA4 intrinsic.
	(IX86_BUILTIN_VFMADDSD): Ditto.
	(IX86_BUILTIN_VFMADDPS): Ditto.
	(IX86_BUILTIN_VFMADDPD): Ditto.
	(IX86_BUILTIN_VFMSUBSS): Ditto.
	(IX86_BUILTIN_VFMSUBSD): Ditto.
	(IX86_BUILTIN_VFMSUBPS): Ditto.
	(IX86_BUILTIN_VFMSUBPD): Ditto.
	(IX86_BUILTIN_VFMADDSUBPS): Ditto.
	(IX86_BUILTIN_VFMADDSUBPD): Ditto.
	(IX86_BUILTIN_VFMSUBADDPS): Ditto.
	(IX86_BUILTIN_VFMSUBADDPD): Ditto.
	(IX86_BUILTIN_VFNMADDSS): Ditto.
	(IX86_BUILTIN_VFNMADDSD): Ditto.
	(IX86_BUILTIN_VFNMADDPS): Ditto.
	(IX86_BUILTIN_VFNMADDPD): Ditto.
	(IX86_BUILTIN_VFNMSUBSS): Ditto.
	(IX86_BUILTIN_VFNMSUBSD): Ditto.
	(IX86_BUILTIN_VFNMSUBPS): Ditto.
	(IX86_BUILTIN_VFNMSUBPD): Ditto.
	(IX86_BUILTIN_VFMADDPS256): Ditto.
	(IX86_BUILTIN_VFMADDPD256): Ditto.
	(IX86_BUILTIN_VFMSUBPS256): Ditto.
	(IX86_BUILTIN_VFMSUBPD256): Ditto.
	(IX86_BUILTIN_VFMADDSUBPS256): Ditto.
	(IX86_BUILTIN_VFMADDSUBPD256): Ditto.
	(IX86_BUILTIN_VFMSUBADDPS256): Ditto.
	(IX86_BUILTIN_VFMSUBADDPD256): Ditto.
	(IX86_BUILTIN_VFNMADDPS256): Ditto.
	(IX86_BUILTIN_VFNMADDPD256): Ditto.
	(IX86_BUILTIN_VFNMSUBPS256): Ditto.
	(IX86_BUILTIN_VFNMSUBPD256): Ditto.
	(enum multi_arg_type): New enum for describing the various FMA4
	intrinsic argument types.
	(bdesc_multi_arg): New table for FMA4 intrinsics.
	(ix86_init_mmx_sse_builtins): Add FMA4 intrinsic support.
	(ix86_expand_multi_arg_builtin): New function for creating FMA4
	intrinsics.
	(ix86_expand_builtin): Add FMA4 intrinsic support.
	(ix86_fma4_valid_op_p): New function to validate FMA4 3 and 4
	operand instructions.
	(ix86_expand_fma4_multiple_memory): New function to split the
	second memory reference from FMA4 instructions.
	* config/i386/sse.md (ssemodesuffixf4): New mode attribute for FMA4.
	(ssemodesuffixf2s): Ditto.
	(fma4_fmadd<mode>4): Add FMA4 floating point multiply/add
	instructions.
	(fma4_fmsub<mode>4): Ditto.
	(fma4_fnmadd<mode>4): Ditto.
	(fma4_fnmsub<mode>4): Ditto.
	(fma4_vmfmadd<mode>4): Ditto.
	(fma4_vmfmsub<mode>4): Ditto.
	(fma4_vmfnmadd<mode>4): Ditto.
	(fma4_vmfnmsub<mode>4): Ditto.
	(fma4_fmadd<mode>4256): Ditto.
	(fma4_fmsub<mode>4256): Ditto.
	(fma4_fnmadd<mode>4256): Ditto.
	(fma4_fnmsub<mode>4256): Ditto.
	(fma4_fmaddsubv8sf4): Ditto.
	(fma4_fmaddsubv4sf4): Ditto.
	(fma4_fmaddsubv4df4): Ditto.
	(fma4_fmaddsubv2df4): Ditto.
	(fma4_fmsubaddv8sf4): Ditto.
	(fma4_fmsubaddv4sf4): Ditto.
	(fma4_fmsubaddv4df4): Ditto.
	(fma4_fmsubaddv2df4): Ditto.
	(fma4i_fmadd<mode>4): Add FMA4 floating point multiply/add
	instructions for intrinsics.
	(fma4i_fmsub<mode>4): Ditto.
	(fma4i_fnmadd<mode>4): Ditto.
	(fma4i_fnmsub<mode>4): Ditto.
	(fma4i_vmfmadd<mode>4): Ditto.
	(fma4i_vmfmsub<mode>4): Ditto.
	(fma4i_vmfnmadd<mode>4): Ditto.
	(fma4i_vmfnmsub<mode>4): Ditto.
	(fma4i_fmadd<mode>4256): Ditto.
	(fma4i_fmsub<mode>4256): Ditto.
	(fma4i_fnmadd<mode>4256): Ditto.
	(fma4i_fnmsub<mode>4256): Ditto.
	(fma4i_fmaddsubv8sf4): Ditto.
	(fma4i_fmaddsubv4sf4): Ditto.
	(fma4i_fmaddsubv4df4): Ditto.
	(fma4i_fmaddsubv2df4): Ditto.
	(fma4i_fmsubaddv8sf4): Ditto.
	(fma4i_fmsubaddv4sf4): Ditto.
	(fma4i_fmsubaddv4df4): Ditto.
	(fma4i_fmsubaddv2df4): Ditto.

	* doc/invoke.texi (-mfma4): Add documentation.
	* doc/extend.texi (x86 intrinsics): Add FMA4 intrinsics.

	* gcc.target/i386/fma4-check.h
	* gcc.target/i386/fma4-fma.c
	* gcc.target/i386/fma4-maccXX.c
	* gcc.target/i386/fma4-msubXX.c
	* gcc.target/i386/fma4-nmaccXX.c
	* gcc.target/i386/fma4-nmsubXX.c
	* gcc.target/i386/fma4-vector.c
	* gcc.target/i386/fma4-256-maccXX.c
	* gcc.target/i386/fma4-256-msubXX.c
	* gcc.target/i386/fma4-256-nmaccXX.c
	* gcc.target/i386/fma4-256-nmsubXX.c
	* gcc.target/i386/fma4-256-vector.c
	* gcc.target/i386/funcspec-2.c: New file.
	* gcc.target/i386/funcspec-4.c: Test error conditions
	related to FMA4.
	* gcc.target/i386/funcspec-5.c
	* gcc.target/i386/funcspec-6.c
	* gcc.target/i386/funcspec-8.c: Add FMA4.
	* gcc.target/i386/funcspec-9.c: New file.
	* gcc.target/i386/i386.exp: Add check_effective_target_fma4.
	* gcc.target/i386/isa-10.c
	* gcc.target/i386/isa-11.c
	* gcc.target/i386/isa-12.c
	* gcc.target/i386/isa-13.c
	* gcc.target/i386/isa-2.c
	* gcc.target/i386/isa-3.c
	* gcc.target/i386/isa-4.c
	* gcc.target/i386/isa-7.c
	* gcc.target/i386/isa-8.c
	* gcc.target/i386/isa-9.c: New file.
	* gcc.target/i386/isa-14.c
	* gcc.target/i386/isa-1.c
	* gcc.target/i386/isa-5.c
	* gcc.target/i386/isa-6.c: Add FMA4.
	* gcc.target/i386/sse-12.c
	* gcc.target/i386/sse-13.c
	* gcc.target/i386/sse-14.c
	* gcc.target/i386/sse-22.c: New file.
	* g++.dg/other/i386-2.C
	* g++.dg/other/i386-3.C
	* g++.dg/other/i386-5.C
	* g++.dg/other/i386-6.C: Add -mfma4 in dg-options.

From-SVN: r152311
2009-09-30 00:00:45 +00:00
Harsha Jagasia a795ca6e59 config.gcc (i[34567]86-*-*): Remove mmintrin-common.h.
2009-09-29  Harsha Jagasia  <harsha.jagasia@amd.com>

	* config.gcc (i[34567]86-*-*): Remove mmintrin-common.h.
	(x86_64-*-*): Ditto.
	* config/i386/smmintrin.h: Move instructions in mmintrin-common.h
	back to smmintrin.h.
	* config/i386/cpuid.h: (bit_SSE5): Remove SSE5 bit.
	* config/i386/x86intrin.h: Remove SSE5.
	* config/i386/mmintrin-common.h: Delete file.	
	* doc/extend.texi (x86 intrinsics): Remove SSE5 flags
	and builtins.
	
	* gcc.target/i386/i386.exp: Remove check_effective_target_sse5.
	* gcc.target/i386/isa-1.c
	* gcc.target/i386/isa-5.c
	* gcc.target/i386/isa-6.c: Remove SSE5.
	* gcc.target/i386/funcspec-4.c: Remove error conditions related to SSE5.
	* gcc.target/i386/avx-1.c
	* gcc.target/i386/avx-2.c
	* gcc.target/i386/sse-23.c: Remove comments to mmintrin-common.h.
	* gcc.target/i386/funcspec-9.c: Delete.

From-SVN: r152280
2009-09-29 17:15:32 +00:00
Jonathan Gray aa58f943d8 config.gcc: Update OpenBSD targets.
* config.gcc: Update OpenBSD targets.
	* config/openbsd-stdint.h: New file.
	* config/openbsd-libpthread.h: New file.
	* config/openbsd.h: Update and break out LIB_SPEC definition.
	* config/alpha/openbsd.h: Overhaul to reflect ELF migration.
	* config/i386/openbsdelf.h: Correct types.
	* config/m68k/openbsd.h: Likewise.
	* config/mips/openbsd.h: Likewise.
	* config/vax/openbsd.h: Likewise.

From-SVN: r152218
2009-09-27 13:20:23 +00:00