aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
AgeCommit message (Collapse)Author
2010-04-152010-04-15 Thomas Schwinge <tschwinge@gnu.org>tschwinge
gcc/ * config.gcc <i[34567]86-*-gnu*>: Handle softfp as for Linux. libgcc/ * config.host <i[34567]86-*-gnu*>: Handle softfp as for Linux. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158375 138bc75d-0d04-0410-961f-82ee72b054a4
2010-04-12 gcc:ro
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158236 138bc75d-0d04-0410-961f-82ee72b054a4
2010-04-12 gcc:ro
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158235 138bc75d-0d04-0410-961f-82ee72b054a4
2010-04-09 * config/sparc/sol2-gld.h: Remove SPARC reference.ro
Rename ... * config/sol2-gld.h: ... here. * config.gcc (sparc*-*-solaris2*): Reflect this. (i[34567]86-*-solaris2*): Use it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158171 138bc75d-0d04-0410-961f-82ee72b054a4
2010-04-07Update comment for last commit.ro
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158051 138bc75d-0d04-0410-961f-82ee72b054a4
2010-04-07 * config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 toro
generic. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158049 138bc75d-0d04-0410-961f-82ee72b054a4
2010-04-022010-04-01 Ralf Corsépius <ralf.corsepius@rtems.org>corsepiu
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157937 138bc75d-0d04-0410-961f-82ee72b054a4
2010-04-01 * config.guess (i[34567]86-*-solaris2*): Default with_arch_32,ro
with_tune_32 to pentium4. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157903 138bc75d-0d04-0410-961f-82ee72b054a4
2010-03-31 gcc:ro
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157854 138bc75d-0d04-0410-961f-82ee72b054a4
2010-03-302010-03-30 Tarik Graba <tarik.graba@telecom-paristech.fr>sam
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157817 138bc75d-0d04-0410-961f-82ee72b054a4
2010-03-24 * configure.ac (i[34567]86-*-*): Handle Solaris 2/x86 TLS supportro
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157705 138bc75d-0d04-0410-961f-82ee72b054a4
2010-03-03 * config.gcc (sparc64-*-solaris2*, sparc-*-solaris2*): Merge into...ebotcazou
(sparc*-*-solaris2*): ...this. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157200 138bc75d-0d04-0410-961f-82ee72b054a4
2010-03-02 * config.gcc (sparc-*-linux*): Do not include sparc/gas.h.ebotcazou
(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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157181 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-28Don't set the default arch for i[34567]86-*-darwin*|x86_64-*-darwin*.hjl
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*. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157119 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-28Restore i[34567]86-*-darwin* bootstrap.hjl
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157118 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-27Set the default 32bit/64bit archs if needed.hjl
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157110 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-26Set the default arch at least to Prescott/Pentium 4.hjl
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157101 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-26Support --with-fpmath=sse for x86.hjl
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157090 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-26 * config.gcc (i[34567]86-*-* | x86_64-*-*): Split long line.uros
(arm*-*-*): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157082 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-26Set default arch/cpu for i[34567]86-*-*|x86_64-*-* targets.hjl
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157081 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-24 * config.gcc: Fix typo in mips-sgi-irix6.[0-4]* obsoletion.ro
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157043 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-24 * config/i386/sol2.h (NO_DBX_BNSYM_ENSYM): Define.ro
* config/i386/sol2-gas.h: New file. * config.gcc (i[34567]86-*-solaris2*): Use it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157042 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-182010-02-17 Mikael Pettersson <mikpe@it.uu.se>davem
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156854 138bc75d-0d04-0410-961f-82ee72b054a4
2010-02-03 * config.gcc: Reenable check for obsolete targets.ro
Obsolete alpha*-dec-osf4*, alpha*-dec-osf5.0*, mips-sgi-irix5*, mips-sgi-irix6.[0-4]*. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156462 138bc75d-0d04-0410-961f-82ee72b054a4
2010-01-312010-01-31 Kai Tietz <kai.tietz@onevision.com>ktietz
* config.gcc: Adjust order of makefile fragments for mingw targets. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156406 138bc75d-0d04-0410-961f-82ee72b054a4
2010-01-26 gcc:ro
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156259 138bc75d-0d04-0410-961f-82ee72b054a4
2010-01-20 PR bootstrap/42786uros
* config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx cpu types. Add support for *-sse3 cpu types. (x86_64-*-*): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156071 138bc75d-0d04-0410-961f-82ee72b054a4
2009-12-242009-12-24 Andy Hutchinson <hutchinsonandy@gcc.gnu.org>hutchinsonandy
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@155460 138bc75d-0d04-0410-961f-82ee72b054a4
2009-12-07Fix ABM.spop
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@155059 138bc75d-0d04-0410-961f-82ee72b054a4
2009-12-07Fix _mm_popcnt* intrinsics.spop
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@155058 138bc75d-0d04-0410-961f-82ee72b054a4
2009-12-072009-12-07 Edmar Wienskoski <edmar@freescale.com>dje
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@155044 138bc75d-0d04-0410-961f-82ee72b054a4
2009-12-042009-12-04 Matthias Klose <doko@ubuntu.com>doko
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154973 138bc75d-0d04-0410-961f-82ee72b054a4
2009-11-20 gcc:ro
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154373 138bc75d-0d04-0410-961f-82ee72b054a4
2009-11-192009-11-19 Paul Brook <paul@codesourcery.com>pbrook
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154328 138bc75d-0d04-0410-961f-82ee72b054a4
2009-11-11gcc/jbeniston
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154096 138bc75d-0d04-0410-961f-82ee72b054a4
2009-11-092009-11-09 Paul Brook <paul@codesourcery.com>pbrook
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 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154034 138bc75d-0d04-0410-961f-82ee72b054a4
2009-11-042009-11-04 Harsha Jagasia <harsha.jagasia@amd.com>dwarak
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153917 138bc75d-0d04-0410-961f-82ee72b054a4
2009-11-042009-11-04 Harsha Jagasia <harsha.jagasia@amd.com>dwarak
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153901 138bc75d-0d04-0410-961f-82ee72b054a4
2009-11-04 * config.gcc (vax-*-linux*): Keep the original contents ofmacro
tmake_file while adding vax/t-linux. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153882 138bc75d-0d04-0410-961f-82ee72b054a4
2009-10-262009-10-26 Ben Elliston <bje@au.ibm.com>uweigand
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153575 138bc75d-0d04-0410-961f-82ee72b054a4
2009-10-26 * MAINTAINERS: Add myself as a maintainer for the RX port.nickc
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153557 138bc75d-0d04-0410-961f-82ee72b054a4
2009-10-192009-10-19 Matthias Klose <doko@ubuntu.com>doko
PR target/40134 * config.gcc (arm*-*-linux-*eabi): Use config/t-slibgcc-libgcc. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152975 138bc75d-0d04-0410-961f-82ee72b054a4
2009-10-10 * configure.ac: Add test for dci instruction.bergner
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152626 138bc75d-0d04-0410-961f-82ee72b054a4
2009-10-072009-10-07 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>krebbel
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152515 138bc75d-0d04-0410-961f-82ee72b054a4
2009-10-06 * config.gcc (powerpc*-*-*): Handle a2.bje
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152499 138bc75d-0d04-0410-961f-82ee72b054a4
2009-09-30 * config.gcc (sh-symbianelf): Replace definition of extra_objsnickc
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152323 138bc75d-0d04-0410-961f-82ee72b054a4
2009-09-302009-09-29 Harsha Jagasia <harsha.jagasia@amd.com>hjagasia
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152311 138bc75d-0d04-0410-961f-82ee72b054a4
2009-09-292009-09-29 Harsha Jagasia <harsha.jagasia@amd.com>hjagasia
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152280 138bc75d-0d04-0410-961f-82ee72b054a4
2009-09-27 * config.gcc: Update OpenBSD targets.gerald
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152218 138bc75d-0d04-0410-961f-82ee72b054a4
2009-09-22PR middle-end/41260pogma
* gcc/config.gcc: Use darwin9.h and darwin10.h on darwin10 and later. * gcc/config/darwin10.h: Add file to pass -no_compact_unwind on LIB_SPEC for darwin10 and later since it always uses the unwinder in libSystem which is derived from the gcc 4.2.1 unwinder. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151960 138bc75d-0d04-0410-961f-82ee72b054a4