summaryrefslogtreecommitdiffstats
path: root/gcc/config.gcc
Commit message (Collapse)AuthorAgeFilesLines
...
* ChangeLogtsmigiel2006-11-211-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.in (skipdirs) : Don't build target-libiberty for SPU. * configure : Rebuilt. gcc/ChangeLog * config.gcc : Add target for SPU. * config/spu/constraints.md : New file. * config/spu/crt0.c : New file. * config/spu/crtend.c : New file. * config/spu/crti.asm : New file. * config/spu/crtn.asm : New file. * config/spu/float_unsdidf.c : New file. * config/spu/float_unssidf.c : New file. * config/spu/predicates.md : New file. * config/spu/spu-builtins.def : New file. * config/spu/spu-builtins.h : New file. * config/spu/spu-builtins.md : New file. * config/spu/spu-c.c : New file. * config/spu/spu-elf.h : New file. * config/spu/spu-modes.def : New file. * config/spu/spu-protos.h : New file. * config/spu/spu.c : New file. * config/spu/spu.h : New file. * config/spu/spu.md : New file. * config/spu/spu.opt : New file. * config/spu/spu_internals.h : New file. * config/spu/spu_intrinsics.h : New file. * config/spu/spu_mfcio.h : New file. * config/spu/t-spu-elf : New file. * config/spu/vec_types.h : New file. * config/spu/vmx2spu.h : New file. * doc/contrib.texi : Document SPU contributor. * doc/extend.texi : Document SPU extensions. * doc/invoke.texi : Document SPU options. * doc/md.texi : Document SPU constraints. libcpp/ChangeLog * configure.ac (need_64bit_hwint): Need 64bit hwint for SPU. * configure : Rebuilt. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119041 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (sh*-superh-elf): Add t-superh to tmake_file.amylaar2006-11-201-1/+2
| | | | | | | Add sh/superh.h to tm_file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119018 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/darwin.h (LINK_COMMAND_SPEC): Don't do dwarf stuff onmrs2006-11-171-1/+7
| | | | | | | | | | | | pre-darwin9 system, unless the user asks for it directly. (PREFERRED_DEBUGGING_TYPE): Likewise. * config/i386/darwin.h (PREFERRED_DEBUGGING_TYPE): Likewise. * config.gcc: Add suppport for darwin9.h. * config/darwin9.h: Add. * doc/install.texi (Specific): Clarify darwin documentation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118917 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-11-09 Eric Christopher <echristo@apple.com>echristo2006-11-091-0/+6
| | | | | | | | | | | | | | | PR bootstrap/26892 PR bootstrap/27814 PR other/28994 * configure.ac: Match powerpc*-*-darwin* for powerpc darwin checks. * config.gcc (powerpc64-*-darwin*): New target. * config.host: Ditto. * config/rs6000/darwin64.h: New file. * config/rs6000/x-darwin64: Ditto. * config/rs6000/host-ppc64-darwin.c: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118633 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-11-06 Eric Christopher <echristo@apple.com>echristo2006-11-071-0/+6
| | | | | | | | | | * config.gcc: Add x86_64-darwin host support. * config.host: Ditto. * config/i386/darwin64.h: New file. * config/i386/t-darwin64: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118541 138bc75d-0d04-0410-961f-82ee72b054a4
* * doc/invoke.texi: Add cpu_type power6xbergner2006-11-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (RS/6000 and PowerPC Options): Add -mmfpgpr. * config.gcc: Add cpu_type power6x. * configure.ac: Add test for mf{t,f}gpr instructions. (HAVE_AS_MFPGPR): New. * config.in: Regenerate. * configure: Regenerate. * config/rs6000/aix52.h (ASM_CPU_SPEC): Add power6x. * config/rs6000/rs6000.md (define_attr "type"): Add insert_dword, shift,trap,var_shift_rotate,cntlz,exts, var_delayed_compare, mffgpr and mftgpr attributes. (define_attr "cpu"): Add power6. Change instruction sequences to use new attributes. (floatsidf2,fix_truncdfsi2): use TARGET_MFPGPR. (fix_truncdfsi2_mfpgpr): New. (floatsidf_ppc64_mfpgpr): New. (floatsidf_ppc64): Added !TARGET_MFPGPR condition. (movdf_hardfloat64_mfpgpr,movdi_mfpgpr): New. (movdf_hardfloat64): Added !TARGET_MFPGPR condition. (movdi_internal64): Added !TARGET_MFPGPR and related conditions. (fix_truncdfsi2): Use gpc_reg_operand constraint. * config/rs6000/{6xx.md,power4.md,8540.md,603.md,mpc.md, 7xx.md,rios2.md,7450.md,440.md,rios1.md,rs64.md,power5.md,40x.md}: Add descriptions for insert_dword, shift,trap,var_shift_rotate, cntlz,exts and var_delayed_compare. * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define _ARCH_PWR6X, if features enabled. * config/rs6000/rs6000.opt (mmfpgpr): New. * config/rs6000/rs6000.c (rs6000_align_branch_targets): New variable. (cached_can_issue_more): New variable. (processor_costs): Add power6_cost. (rs6000_sched_init): New function. (is_dispatch_slot_restricted): Deleted. (set_to_load_agen): New function. (is_load_insn,is_store_insn): New functions. (adjacent_mem_locations): New function. (insn_must_be_first_in_group): New function. (insn_must_be_last_in_group): New function. (rs6000_sched_reorder): New function. (rs6000_sched_reorder2): New function. (TARGET_SCHED_INIT,TARGET_SCHED_REORDER, TARGET_SCHED_REORDER2): Define. (processor_target_table): Use PROCESSOR_POWER6 for power6. Add power6x. Add MASK_MFPGPR for power6x. (POWERPC_MASKS): Add MASK_MFPGPR. (rs6000_override_options): Set rs6000_always_hint to false for power6. Set rs6000_align_branch_targets. Replace rs6000_sched_groups check with rs6000_align_branch_targets. Use PROCESSOR_POWER6. (last_scheduled_insn): New variable. (load_store_pendulum): New variable. (rs6000_variable_issue): Set last_scheduled_insn and cached_can_issue_more. (rs6000_adjust_cost): Add power6 cost adjustments. (rs6000_adjust_priority): Replace is_dispatch_slot_restricted with insn_must_be_first_in_group. Add power6 priority adjustments. (rs6000_issue_rate): Add CPU_POWER6. (insn_terminates_group_p): Use insn_must_be_{first,last}_in_group. * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER6. (TARGET_MFPGPR): New. (SECONDARY_MEMORY_NEEDED): Use TARGET_MFPGPR. (ASM_CPU_SPEC): Add power6x. (SECONDARY_MEMORY_NEEDED): Added mode!=DFmode and mode!=DImode conditions. * config/rs6000/power6.md: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118396 138bc75d-0d04-0410-961f-82ee72b054a4
* * target.h (targetm.cxx.use_atexit_for_cxa_atexit): New targetdannysmith2006-11-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | hook. * target-def.h: (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Define default. * config/i386/mingw32.h (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Override default. * doc/tm.texi (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Document. * configure.ac (use_cxa_atexit): As a special case, don't test for libc definition of __cxa_atexit on mingw32 * configure: Regenerate. * config.gcc (i[34567]86-pc-mingw32): Default to enable__cxa_atexit=yes. cp * decl.c (get_atexit_node): Reference atexit, not __cxa_exit. if targetm.cxx.use_atexit_for cxa_atexit. (start_cleanup_fn): Likewise. (register_dtor_fn): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118371 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:jsm282006-10-291-3/+27
| | | | | | | | | | | | | | | | | | | | | | | * config.gcc (i[34567]86-*-linux*): Handle --enable-targets=all. Handle tuning for bi-arch i[34567]86-*-linux* like that for i[34567]86-*-solaris2.1[0-9]*. * config/i386/linux64.h (TARGET_VERSION, MULTILIB_DEFAULTS): Define conditionally depending on TARGET_64BIT_DEFAULT. (SPEC_32, SPEC_64): Define. (LINK_SPEC): Use them. * doc/install.texi (--enable-targets=all): Document for x86-linux. libcpp: * configure.ac (need_64bit_hwint): Set for i[34567]86-*-linux* depending on --enable-targets=all. * configure: Regenerate. fixincludes: * inclhack.def (AAB_fd_zero_asm_posix_types_h): Bypass on x86_64. * fixincl.x: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118147 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-10-22 H.J. Lu <hongjiu.lu@intel.com>hjl2006-10-221-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config.gcc (i[34567]86-*-*): Add tmmintrin.h to extra_headers. (x86_64-*-*): Likewise. * config/i386/i386.c (pta_flags): Add PTA_SSSE3. (override_options): Check SSSE3. (ix86_builtins): Add IX86_BUILTIN_PHADDW, IX86_BUILTIN_PHADDD, IX86_BUILTIN_PHADDSW, IX86_BUILTIN_PHSUBW, IX86_BUILTIN_PHSUBD, IX86_BUILTIN_PHSUBSW, IX86_BUILTIN_PMADDUBSW, IX86_BUILTIN_PMULHRSW, IX86_BUILTIN_PSHUFB, IX86_BUILTIN_PSIGNB, IX86_BUILTIN_PSIGNW, IX86_BUILTIN_PSIGND, IX86_BUILTIN_PALIGNR, IX86_BUILTIN_PABSB, IX86_BUILTIN_PABSW, IX86_BUILTIN_PABSD, IX86_BUILTIN_PHADDW128, IX86_BUILTIN_PHADDD128, IX86_BUILTIN_PHADDSW128, IX86_BUILTIN_PHSUBW128, IX86_BUILTIN_PHSUBD128, IX86_BUILTIN_PHSUBSW128, IX86_BUILTIN_PMADDUBSW128, IX86_BUILTIN_PMULHRSW128, IX86_BUILTIN_PSHUFB128, IX86_BUILTIN_PSIGNB128, IX86_BUILTIN_PSIGNW128, IX86_BUILTIN_PSIGND128, IX86_BUILTIN_PALIGNR128, IX86_BUILTIN_PABSB128, IX86_BUILTIN_PABSW128 and IX86_BUILTIN_PABSD128. (bdesc_2arg): Add SSSE3. (bdesc_1arg): Likewise. (ix86_init_mmx_sse_builtins): Support SSSE3. (ix86_expand_builtin): Likewise. * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Likewise. * config/i386/i386.md (UNSPEC_PSHUFB): New. (UNSPEC_PSIGN): Likewise. (UNSPEC_PALIGNR): Likewise. Include mmx.md before sse.md. * config/i386/i386.opt: Add -mssse3. * config/i386/sse.md (ssse3_phaddwv8hi3): New pattern for SSSE3. (ssse3_phaddwv4hi3): Likewise. (ssse3_phadddv4si3): Likewise. (ssse3_phadddv2si3): Likewise. (ssse3_phaddswv8hi3): Likewise. (ssse3_phaddswv4hi3): Likewise. (ssse3_phsubwv8hi3): Likewise. (ssse3_phsubwv4hi3): Likewise. (ssse3_phsubdv4si3): Likewise. (ssse3_phsubdv2si3): Likewise. (ssse3_phsubswv8hi3): Likewise. (ssse3_phsubswv4hi3): Likewise. (ssse3_pmaddubswv8hi3): Likewise. (ssse3_pmaddubswv4hi3): Likewise. (ssse3_pmulhrswv8hi3): Likewise. (ssse3_pmulhrswv4hi3): Likewise. (ssse3_pshufbv16qi3): Likewise. (ssse3_pshufbv8qi3): Likewise. (ssse3_psign<mode>3): Likewise. (ssse3_psign<mode>3): Likewise. (ssse3_palignrti): Likewise. (ssse3_palignrdi): Likewise. (abs<mode>2): Likewise. (abs<mode>2): Likewise. * config/i386/tmmintrin.h: New file. * doc/extend.texi: Document SSSE3 built-in functions. * doc/invoke.texi: Document -mssse3/-mno-ssse3 switches. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117958 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (hppa*64*-*-hpux11*, hppa[12]*-*-hpux11*): Default todanglin2006-10-151-2/+2
| | | | | | | | posix thread support. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117756 138bc75d-0d04-0410-961f-82ee72b054a4
* * Add new port for score.liqin2006-10-101-0/+8
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117597 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (i[34567]86-*-darwin*): Set with_arch andgeoffk2006-09-121-0/+7
| | | | | | | with_cpu by default. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@116874 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-09-08 Eric Christopher <echristo@apple.com>echristo2006-09-091-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config.gcc (i?86-*-darwin): Add 64-bit HWI support. * config/t-slibgcc-darwin: Support x86_64 multilib. * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Return 1 for x86_64-darwin. * config/i386/t-darwin: Add m64 multilib. (LIB2_SIDITI_CONV_FUNCS): Use. (LIB2FUNCS_EXTRA): Ditto. * config/i386/darwin.h: Support x86_64. * config/i386/i386.c (override_options): Turn on flag_pic for x86_64-darwin. Disable flag_omit_pointer. (get_pc_thunk_name): Assert !TARGET_64BIT. (legitimate_address_p): Disable machopic addressing for x86_64. (legitimize_pic_address): Ditto. (ix86_expand_move): Ditto. (ix86_expand_call): Ditto. (machopic_output_stub): Ditto. * config/darwin.c (machopic_select_section): Support literal16. (machopic_select_rtx_section): Ditto. * config/darwin-sections.def: Ditto. * config/darwin-64.c: New. 2006-09-08 Eric Christopher <echristo@apple.com> * gcc.target/i386/20060512-3.c: Run test on ilp32 only. * gcc.target/i386/memcpy-1.c: Ditto. * gcc.target/i386/asm-1.c: Ditto. * gcc.target/i386/20060512-4.c: Ditto. * gcc.target/i386/compress-float-387.c: Ditto. * gcc.target/i386/20060512-1.c: Ditto. * gcc.target/i386/compress-float-sse.c: Ditto. * gcc.target/i386/20060512-2.c: Ditto. * gcc.target/i386/compress-float-sse-pic.c: Ditto. * gcc.target/i386/stack-prot-kernel.c: Ditto. * gcc.target/i386/compress-float-387-pic.c: Ditto. * gcc.dg/pr26449.c: Ditto. * gcc.dg/attr-ms_struct-2.c: Ditto. * gcc.dg/attr-ms_struct-1.c: Ditto. * gcc.misc-tests/linkage.exp: Fix 64-bit darwin support. 2006-09-08 Eric Christopher <echristo@apple.com> * configure.ac: Add 64-bit HWI support for i?86-darwin. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@116795 138bc75d-0d04-0410-961f-82ee72b054a4
* Oops - this should have been part of r116159, but I forgot to include it on ↵nickc2006-08-161-1/+4
| | | | | | the commit command line. Doh! git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@116180 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (i[34567]86-*-solaris2*): Add usegas.h to $tm_filesayle2006-07-211-0/+3
| | | | | | | | | | if the target assembler is GNU binutils' gas. * config/i386/sol2-10.h (ASM_SPEC): Check USE_GAS to determine whether to pass GNU gas or native as command line options. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115638 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-07-05 H.J. Lu <hongjiu.lu@intel.com>hjl2006-07-051-0/+14
| | | | | | | | PR target/26146 * config.gcc: Check with_cpu for i[34567]86--*-solaris2.1[0-9]*. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115206 138bc75d-0d04-0410-961f-82ee72b054a4
* Add SB-1 specific multilib support. Patch by Fred Fish.wilson2006-06-261-1/+1
| | | | | | | | | * config/mips/t-sb1: New file. * config.gcc (mipsisa64sb1-*-elf*): Add mips/t-sb1 to tmake_file list. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115024 138bc75d-0d04-0410-961f-82ee72b054a4
* * doc/invoke.texi: Add cpu_type power6.dje2006-06-011-2/+2
| | | | | | | | | | | * config.gcc: Add cpu_type power6. * config/rs6000/rs6000.c (rs6000_override_options): Alias power6 to power5+ with Altivec. * config/rs6000/aix52.h (ASM_CPU_SPEC): Add power6. * config/rs6000/rs6000.h (ASM_CPU_SPEC): Add power6. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@114309 138bc75d-0d04-0410-961f-82ee72b054a4
* PR bootstrap/26872sje2006-05-091-10/+6
| | | | | | | | | * config.gcc (hppa[12]*-*-hpux10*): Set gas to yes. (hppa*64*-*-hpux11*): Ditto. (hppa[12]*-*-hpux11*): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113661 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/soft-fp: New directory. From glibc.jsm282006-04-181-26/+26
| | | | | | | | | | | | | | | | | | | | | | | * config/soft-fp/t-softfp: New. * config/soft-fp/README: New. * mklibgcc.in: Handle LIB2FUNCS_EXCLUDE. * Makefile.in (LIB2FUNCS_EXCLUDE, SFP_MACHINE): New. (libgcc.mk): Pass LIB2FUNCS_EXCLUDE. (LIBGCC_DEPS): Add $(SFP_MACHINE). * config.gcc: Use rs6000/t-fprules-fpbit or rs6000/t-fprules-softfp and soft-fp/t-softfp together with rs6000/t-fprules. * config/rs6000/sfp-machine.h: New. Based on glibc. * config/rs6000/t-fprules-fpbit, config/rs6000/t-fprules-softfp: New. * config/rs6000/t-fprules: Remove fp-bit rules. * config/rs6000/t-ppccomm (LIB2FUNCS_EXTRA): Use +=. * config/rs6000/t-linux64: Likewise. Remove duplicates from LIB2FUNCS_EXTRA. Remove fp-bit rules. (softfp_wrap_start, softfp_wrap_end): New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113056 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/27034danglin2006-04-091-1/+2
| | | | | | | | | | | | | | | | | | | | | PR target/26508 * config.gcc (hppa*64*-*-hpux11*): Add 'libgcc_stub.a' to extra_parts. * pa64-hpux.h (LIB_SPEC): Correct typo. Don't append milli.a. (LINK_GCC_C_SEQUENCE_SPEC): Define. Append milli.a here. (PA_CXA_FINALIZE_STUB, PA_JV_REGISTERCLASSES_STUB): Delete defines. (PA_INIT_FINI_HACK): Rename to PA_CRTBEGIN_HACK. (PA_CRTBEGIN_HACK): Ensure __do_global_ctors_aux is placed in text section. Delete PA_CXA_FINALIZE_STUB and PA_JV_REGISTERCLASSES_STUB stubs. Add ".align 8" directives before all ".dword" directives. (GTHREAD_USE_WEAK): Revise comment. (TARGET_ATTRIBUTE_WEAK): Define. * pa/t-pa64 (LIBGCCSTUB_OBJS): Add new rules for stublib.c, rfi-stub.o, dfi-stub.o, cxaf-stub.o and jvrc-stub.o. * stublib.c: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112807 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-29 Andreas Krebbel <krebbel1@de.ibm.com>krebbel2006-03-291-2/+2
| | | | | | | | | | | | | | | | | | * config.gcc (s390-*-linux-*, s390x-*-linux*): Add t-dfprules to tmake_file. * config/s390/s390.c (S390_scalar_mode_supported_p): New function. (NR_C_MODES): Add TDmode, DDmode and SDmode. (s390_output_pool_entry, ): Accept MODE_DECIMAL_FLOAT. (s390_hard_regno_mode_ok): Disallow TDmode in integer regs. (s390_function_arg_float): Allow SDmode and DDmode values to be passed in floating point registers. (s390_function_arg_integer, s390_function_value): Replace MODE_FLOAT check with SCALAR_FLOAT_MODE_P. (TARGET_SCALAR_MODE_SUPPORTED_P): Define target macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112491 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-27 Andrew Stubbs <andrew.stubbs@st.com>amylaar2006-03-271-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | J"orn Rennecke <joern.rennecke@st.com> * superh.opt: New file. * sh.c (boardtype, osruntime): Remove. * superh.h (SUBTARGET_OPTIONS): Remove. * config.gcc (sh*-superh-elf): Add sh/superh.opt to extra_options. * config.gcc (sh*-*-*): Don't use c-c ranges for tr. Quote sed arguments with ^ and/or []. * config.gcc (sh-*-*): Add quoting to account for quirk of Solaris /bin/sh. Replace == with = in enable_incomplete_targets test. * config/sh/superh.h (SUBTARGET_LINK_SPEC): Replace LITTLE_ENDIAN_BIT with MASK_LITTLE_ENDIAN. * config.gcc (sh*-superh-elf): Add sh/superh.h to tm_file. * config/sh/sh.opt: Added to some comments. * config/sh/superh.h: Removed some chaff. * config/sh/sh.opt: Add m4-[1234]00* options. * config/sh/sh.c (sh_handle_option): Likewise. * config/sh/t-sh (IC_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Define. (ic_invalidate_array_4-100.o): New rule. ($(T)libic_invalidate_array_4-100.a): Likewise. (ic_invalidate_array_4-200.o): Likewise. ($(T)libic_invalidate_array_4-200.a): Likewise. (ic_invalidate_array_4a.o): Likewise. ($(T)libic_invalidate_array_4a.a): Likewise. * config/sh/t-elf (EXTRA_MULTILIB_PARTS): Add IC_EXTRA_PARTS. * config/sh/embed-elf.h (LIBGCC_SPEC): Add clauses for m4-100*, m4-200*, and m4a*. * config/sh/crt1.asm: Merged in profiling code. * config/sh/superh.h (STARTFILE_SPEC): Override. * config/sh/t-superh: Override EXTRA_MULTILIB_PARTS. Add rules for $(T)crt1-mmu.o, $(T)gcrt1-mmu.o and $(T)gcrt1.o. * config.gcc (sh*-superh-elf): Add t-superh to tmake_file. * t-sh (MULTILIB_MATCHES): Add sh4-[1245]00* variants. * config/sh/t-superh: Removed now-redundant MULTILIB_OPTIONS / MULTILIB_DIRNAMES / MULTILIB_MATCHES settings. * sh.opt (mpretend-cmove): New option. * sh.h (OPERRIDE_OPTIONS): Switch it off if not TARGET_SH1. * sh.md (movsicc_t_false, movsicc_t_tru): New patterns. (movsicc): Add TARGET_PRETEND_CMOVE code. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112421 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-21 Eric Botcazou <ebotcazou@libertysurf.fr>ebotcazou2006-03-211-3/+17
| | | | | | | | | | | | | | | | | | | | | | | * config.gcc (i[34567]86-*-solaris2*): Add config/sol2-10.h to tm_file on Solaris 10 and later. (sparc64-*-solaris2*): Likewise. (sparc-*-solaris2*): Likewise. * config/sol26.h: Rename to config/sol2-6.h. * config/sol2-10.h: New file. testsuite/ * gcc.dg/builtins-config.h (Solaris case): Define HAVE_C99_RUNTIME if _STDC_C99 is defined. * gcc.dg/builtins-18.c: Pass -std=c99 on Solaris. * gcc.dg/builtins-20.c: Likewise. * gcc.dg/builtins-53.c: Likewise. * gcc.dg/single-precision-constant.c: Likewise. Also pass -mmacosx-version-min=10.3 on PowerPC/Darwin. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112255 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (sparc-*-solaris2*): Change the default CPU settingebotcazou2006-03-211-0/+1
| | | | | | | | from V7 to V9 for Solaris 7 and above. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112246 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-17 Paul Brook <paul@codesourcery.com>pbrook2006-03-171-1/+12
| | | | | | | | | | * doc/install.texi: Docuemnt --with-mode. * config.gcc: Add --with-mode for arm*-*-*. * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "mode". git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112174 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (tm_defines): Always add to previous value ratherjsm282006-03-161-19/+19
| | | | | | | than replacing it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112160 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (mips64*-*-linux*): Keep existing tm_defines.rsandifo2006-03-161-2/+2
| | | | | | | (mips*-*-linux*): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112149 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-03-15 Geoffrey Keating <geoffk@apple.com>geoffk2006-03-161-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | * config.gcc (*-*-darwin*): Don't build crt2.o for all Darwin ports. Do switch on default_use_cxa_atexit. (powerpc*-*-darwin*): Build crt2.o on powerpc. * config/darwin-crt3.o: New. * config/darwin.h (LINK_SPEC): If -shared-libgcc, make linker default to 10.3. Pass '-multiply_defined suppress' if crt3.o is in use. (STARTFILE_SPEC): Add crt3.o when -shared-libgcc and appropriate OS version. * config/rs6000/t-darwin: Move crt2.o building to here. * config/rs6000/darwin.h (C_COMMON_OVERRIDE_OPTIONS): Update Mac OS version for using __cxa_get_exception_ptr. Don't test versions of __cxa_atexit. 2006-03-15 Geoffrey Keating <geoffk@apple.com> * g++.old-deja/g++.other/init18.C: New. * g++.old-deja/g++.other/init5.C: Remove xfail. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112121 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (default with_cpu setting) <sparc*-*-*>: Do not modifyebotcazou2006-03-151-3/+0
| | | | | | | | the default setting here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112080 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (sh*-superh-elf, sh*elf (newlib)): Use newlib.hamylaar2006-03-101-1/+28
| | | | | | | | | when building with libgloss. (sh*elf): Implement --without-fp option. (sh64-superh-linux*): Don't multilib. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111933 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc: Add t-dfprules to $tmake_file for i*86-*-linux* andbje2006-03-061-2/+2
| | | | | | | x86_64-*-linux* configurations. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111751 138bc75d-0d04-0410-961f-82ee72b054a4
* Sun Niagara specific optimizations.davem2006-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config.gcc: Recognize niagara as target. * config/sparc/sparc.h (SPARC_RELAXED_ORDERING): Mention Niagara. (TARGET_CPU_niagara): Define. (CPP_CPU64_DEFAULT_SPEC): Define __sparc_v9__ for Niagara. (ASM_CPU64_DEFAULT_SPEC): Pass -Av9b for Niagara. (CPP_CPU_SPEC): Handle -mcpu=niagara. (ASM_CPU_SPEC): Likewise. (PROCESSOR_NIAGARA): New enum entry. (REGISTER_MOVE_COST): Handle Niagara. (BRANCH_COST, PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES): Likewise. * config/sparc/sparc.c (niagara_costs): New processor_costs entry. (sparc_override_options): Recognize "niagara", set appropriate default MASK_* values for it, and align functions to 32-bytes by default just like ULTRASPARC/ULTRASPARC3. (sparc_initialize_trampoline): Handle niagara like ultrasparc. (sparc64_initialize_trampoline): Likewise. (sparc_use_sched_lookahead): Use zero for niagara. (sparc_issue_rate): Use one for niagara. * config/sparc/niagara.md: New file. * config/sparc/sparc.md: Include it. * config/sparc/sol2-bi.h (CPP_CPU64_DEFAULT_SPEC, ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC): Set appropriately when default cpu is niagara. (CPP_CPU_SPEC): Handle -mcpu=niagara. (ASM_CPU_SPEC): Likewise. * config/sparc/sol2.h (ASM_CPU_DEFAULT_SPEC): Set appropriately when default cpu is niagara. (ASM_CPU_SPEC): Handle -mcpu=niagara. * config/sparc/linux64.h: Handle a default of TARGET_CPU_niagara just like v9/ultrasparc/ultrasparc3. * doc/invoke.texi: Add documentation for "niagara" and improve existing documentation for ultrasparc variants. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111648 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (default_use_cxa_atexit): Extend the description ofnickc2006-03-021-3/+16
| | | | | | | | | this configure variable. Set its default value to "yes" for Linux, NetBSD and ELF targets on the assumption that they will use C libraries with the __cxa_atexit function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111636 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc: Add t-dfprules to $tmake_file for powerpc-*-linux*bje2006-03-011-2/+2
| | | | | | | | and powerpc64-*-linux* configurations. * config/t-dfprules: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111596 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/24837jsm282006-02-181-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config.gcc: Define UCLIBC_DEFAULT to 0 or 1. * opth-gen.awk: Handle Var and InverseMask together. * config/linux.opt (muclibc, mglibc): Use Var(linux_uclibc). * config/linux.h: Use #if not #ifdef for testing UCLIBC_DEFAULT. (TARGET_C99_FUNCTIONS): Test OPTION_GLIBC not TARGET_GLIBC. (CHOOSE_DYNAMIC_LINKER): Give an error for -mglibc and -muclibc used together. (UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. * config/alpha/linux-elf.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (ELF_DYNAMIC_LINKER): Define to LINUX_DYNAMIC_LINKER. * config/alpha/linux.h (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/cris/linux.h (GLIBC_DYNAMIC_LINKER): Define. (CRIS_LINK_SUBTARGET_SPEC): Pass a -dynamic-linker option. * config/frv/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. (TARGET_C99_FUNCTIONS): Don't define. * config/i386/linux.h (DYNAMIC_LINKER): Rename to GLIBC_DYNAMIC_LINKER. (SUBTARGET_EXTRA_SPECS): Use LINUX_DYNAMIC_LINKER. * config/i386/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER32 and LINUX_DYNAMIC_LINKER64. * config/ia64/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/m32r/linux.h (GLIBC_DYNAMIC_LINKE): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/m68k/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/mips/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, LINUX_DYNAMIC_LINKERN32): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKERN32, LINUX_DYNAMIC_LINKER64 and LINUX_DYNAMIC_LINKER32. * config/mn10300/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/pa/pa-linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/rs6000/linux.h (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/rs6000/linux64.h (TARGET_C99_FUNCTIONS): Likewise. (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, CHOOSE_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. (LINK_OS_LINUX_SPEC32): Use LINUX_DYNAMIC_LINKER32. (LINK_OS_LINUX_SPEC64): Use LINUX_DYNAMIC_LINKER64. * config/rs6000/sysv4.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (LINK_OS_LINUX_SPEC): Use LINUX_DYNAMIC_LINKE. * config/s390/linux.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER32 and LINUX_DYNAMIC_LINKER64. * config/sh/linux.h (GLIBC_DYNAMIC_LINKER): Define. (SUBTARGET_LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/sparc/linux.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/sparc/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. (LINK_ARCH32_SPEC): Use LINUX_DYNAMIC_LINKER32. (LINK_ARCH64_SPEC, LINK_SPEC): Use LINUX_DYNAMIC_LINKER64. (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/xtensa/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * doc/invoke.texi (-muclibc): Remove caveat about supported targets. testsuite: * gcc.dg/glibc-uclibc-1.c, gcc.dg/glibc-uclibc-2.c: New tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111235 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:jsm282006-02-161-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR target/20353 PR target/24578 PR target/24837 * config/linux.opt: New file. * config/linux.h (CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (TARGET_C99_FUNCTIONS): Define depending on TARGET_GLIBC. * config.gcc (*-*-linux*): Define extra_options. (*-*-*uclibc*): Define UCLIBC_DEFAULT. (arm*-*-linux-gnueabi): Change to arm*-*-linux-*eabi. * config/arm/linux-eabi.h (LINUX_TARGET_INTERPRETER): Change to GLIBC_DYNAMIC_LINKER. * config/arm/linux-elf.h (LINUX_TARGET_INTERPRETER): Likewise. (LINUX_TARGET_LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/mips/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * doc/invoke.texi (GNU/Linux Options): New section. gcc/testsuite: * gcc.dg/builtins-config.h (HAVE_C99_RUNTIME): Don't define if __UCLIBC__ is defined. libstdc++-v3: PR libstdc++/14939 * config/os/uclibc/ctype_base.h, config/os/uclibc/ctype_inline.h, config/os/uclibc/ctype_noninline.h, config/os/uclibc/os_defines.h: New. * acinclude.m4 (GLIBCXX_CONFIGURE): Test whether using uClibc. * configure.host: Use os/uclibc for uClibc. * crossconfig.m4 (*-linux*): Use link tests. Don't hardcode presence of math functions. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111160 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (sparc-*-linux*): Add sparc/t-linux to tmake_file.jakub2006-02-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | (sparc64-*-linux*): Likewise. * config/sparc/t-linux64 (SHLIB_MAPFILES): Removed. * config/sparc/t-linux: New file. * config/sparc/libgcc-sparc-glibc.ver (__fixtfdi, __fixunstfdi, __floatditf): Export at GCC_LDBL_3.0 if -m32 -mlong-double-128. (__divtc3, __multc3, __powitf2): Export at GCC_LDBL_4.0.0 if -m32 -mlong-double-128. * config.gcc (alpha*-*-linux*): Add alpha/t-linux to tmake_file. * config/alpha/t-linux: New file. * config/alpha/libgcc-alpha-ldbl.ver: New file. * config/sparc/linux.h (TARGET_OS_CPP_BUILTINS): Define __LONG_DOUBLE_128__ if TARGET_LONG_DOUBLE_128. (CPP_SUBTARGET_SPEC): Don't add -D__LONG_DOUBLE_128__ here. * config/sparc/linux64.h (TARGET_OS_CPP_BUILTINS): Define __LONG_DOUBLE_128__ if TARGET_LONG_DOUBLE_128 and TARGET_ARCH32. (CPP_ARCH32_SPEC): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@110741 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (s390-*-linux*): Add s390/t-linux to tmake_file.jakub2006-02-061-2/+2
| | | | | | | | | (s390x-*-linux*): Likewise. * config/s390/t-linux64 (SHLIB_MAPFILES): Removed. * config/s390/t-linux: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@110654 138bc75d-0d04-0410-961f-82ee72b054a4
* * pa/x-ada-hpux10, pa/t-pa-hpux10, pa/t-pa-hpux11: New files.danglin2006-02-051-2/+2
| | | | | | | | | | | | | | | | | * config.gcc (hppa[12]*-*-hpux10*): Use pa/t-pa-hpux10 instead of pa/t-pa. * config.gcc (hppa[12]*-*-hpux11*): Use pa/t-pa-hpux11 instead of pa/t-pa. * config.host (hppa*-*-hpux10*): Use pa/x-ada-hpux10 instead of pa/x-ada. * pa/t-pa-hpux: Add lib2funcs.asm and quadlib.c rules. * pa/t-pa64: Delete quadlib.c rule. * pa/x-ada: Revert last change. * pa/t-pa: Revert last change. Delete quadlib.c rule. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@110615 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/14798:amylaar2006-01-301-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc: * sh.c (pragma_interrupt, trap_exit, sp_switch): Remove variable. (pragma_trap, pragma_nosave_low_regs): Likewise. (current_function_anonymous_args): Likewise. (sh_deferred_function_attributes): New variable. (sh_deferred_function_attributes_tail): Likewise. (print_operand): For '@', look up trap_exit attribute. (calc_live_regs): Look up trapa_handler attribute. For trapa handlers, save/restore fpscr, but don't do any other interrupt-specific saves. Don't save r0..r7 if the nosave_low_regs attribute is in effect. Fix check for partially saved registers to check for SHmedia. (sh_expand_prologue, sh_expand_epilogue): Look up sp_switch attribute. (sh_output_function_epilogue): Don't clear any of the removed variables. (sh_insert_attributes): Don't check pragma_interrupt. Insert deferred attributes. Check that interrupt attribute is present for other attributes that require its presence. (sh_attribute_table): Add new attributes trapa_handler and nosave_low_regs. (sh_handle_sp_switch_attribute, sh_handle_trap_exit_attribute): Don't check for pragma_interrupt. Don't store argument. * sh.h (pragma_interrupt, sp_switch): Don't declare. (sh_deferred_function_attributes): Declare. (sh_deferred_function_attributes_tail): Likewise. * sh.md (sp_switch_1): Add operand. Change generator caller. (sh_pr_interrupt, sh_pr_trapa, sh_pr_nosave_low_regs): Remove. (*return_i): Don't use when trap_exit attribute is in effect. (*return_trapa): New insn pattern. * sh-c.c: New file. * config.gcc (sh[123456ble]*-* | sh-*-*): New trailer stanza, setting c_target_objs and cxx_target_objs. * t-sh: Add rule for sh-c.o. gcc/testsuite: * gcc.dg/pragma-isr.c: Added target sh[1234ble]*-*-*. * gcc.dg/pragma-isr2.c, gcc.dg/pragma-isr-trapa.c: New tests. * gcc.dg/pragma-isr-trapa2.c: Likewise. * gcc.dg/pragma-isr-nosave_low_regs.c: Likewise. * gcc.dg/pragma-isr-trap_exit.c: Likewise. * gcc.dg/attr-isr.c, gcc.dg/attr-isr-trapa.c: Likewise. * gcc.dg/attr-isr-trap_exit.c: Likewise. * gcc.dg/attr-isr-nosave_low_regs.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@110398 138bc75d-0d04-0410-961f-82ee72b054a4
* * invoke.texi (generic): Documenthubicka2006-01-191-6/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (i686) Update. * config.gcc: Make x86_64-* and i686-* default to generic tunning. * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. (x86_use_incdec, x86_pad_returns): New variables (TARGET_CPU_DEFAULT_generic): New constant (TARGET_CPU_DEFAULT_NAMES): Add generic. (enum processor_type): Add generic32 and generic64. * i386.md (cpu attribute): Add generic32/generic64 (movhi splitter): Behave sanely when both partial_reg_dependency and partial_reg_stall are set. (K8 splitters): Enable for generic as well. * predicates.md (incdec_operand): Use TARGET_INCDEC (aligned_operand): Avoid memory mismatch stalls. * athlon.md: Enable for generic64, new patterns for 128bit moves. * ppro.md: Enable for generic32 * i386.c (generic64_cost, generic32_cost): New. (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. (x86_use_leave): Enable for generic64. (x86_use_sahf, x86_ext_80387_constants): Enable for generic32. (x86_push_memory, x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_prologue_using_move, x86_epilogue_using_move, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): Enable for generic. (x86_use_incdec, x86_pad_returns): New. (override_options): Add generic32 and generic64, translate "generic" to generic32/generic64 and "i686" to "generic32", refuse "generic32"/"generic64" as arch target. (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. (ix86_reorg): Honor PAD_RETURNS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109971 138bc75d-0d04-0410-961f-82ee72b054a4
* 2006-01-18 Paul Brook <paul@codesourcery.com>pbrook2006-01-181-1/+1
| | | | | | | | | | | | | | | | | | | | Merge from csl-arm-branch. 2005-03-14 Julian Brown <julian@codesourcery.com> * config/arm/lib1funcs.asm (ashldi3): Don't define on SymbianOS. (aeabi_llsl): Likewise. (ashrdi3): Likewise. (aeabi_lasr): Likewise. (lshrdi3): Likewise. (aeabi_llsr): Likewise. 2005-03-10 Julian Brown <julian@codesourcery.com> * config.gcc: Disable shared libgcc for SymbianOS. * config/arm/t-symbian (LIB2ADDEH): Include config/arm/pr-support.c. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109911 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/25731danglin2006-01-181-10/+20
| | | | | | | | | | | | | | | | | | | * config.gcc (hppa*-*-linux*, hppa[12]*-*-hpux10*, hppa*64*-*-hpux11*, hppa[12]*-*-hpux11*): Override default shared libgcc version for both sjlj and dwarf2 exception handling. * pa/t-hpux-shlib (SHLIB_SOVERSION): New make variable. Rework to allow overriding SHLIB_EXT and SHLIB_SOVERSION. * pa/pa.c (function_value): Treat complex and vector types as aggregates. (function_arg): Likewise. Only pass scalar floats in the floating point argument registers. * pa/t-slibgcc-dwarf-ver: New file. * pa/t-slibgcc-sjlj-ver: New file. * pa/t-slibgcc-elf-ver: Delete file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109894 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (mt-*-*): Add --with-arch support.nathan2005-12-281-0/+20
| | | | | | | | | | | (--with): Print accepted options on error. * config/mt/mt.h (OPTION_DEFAULT_SPECS): Define. * config/mt/mt.c (DEF_VEC_P(basic_block), DEF_VEC_ALLOC_P(basic_bloc,heap)): Remove from here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109124 138bc75d-0d04-0410-961f-82ee72b054a4
* Checkin missing parts of my 2005-12-12 patchnathan2005-12-161-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108636 138bc75d-0d04-0410-961f-82ee72b054a4
* PR driver/20425amodra2005-12-161-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gcc.c (for_each_path): New function. (add_to_obstack, file_at_path): New functions. (struct file_at_path_info, struct add_to_obstack_info): New. (build_search_list): Rewrite using for_each_path. Constify struct path_prefix pointer. Add do_multi param. Adjust all callers. (find_a_file): Similarly, but just change existing param to bool. (putenv_from_prefixes): Add do_multi param, make "paths" const. (do_spec_path): Delete. (struct spec_path_info): New. (spec_path): New function. (do_spec_1): Use for_each_path for %D and %I. (find_file): Adjust for find_a_file changes. (main): Search multilibs for specs. Print multilib lib path for -print-search-dirs. Likewise add multilibs to LIBRARY_PATH_ENV. (read_specs): Search multilibs for %include and %include_noerr. (is_directory): Remove second string param. Change last param to a bool. Don't use concat. Remove SMALL_ARG_MAX test, always check path is a dir. Update all callers. * doc/hostconfig.texi (SMALL_ARG_MAX): Remove mention. * system.h (SMALL_ARG_MAX): Poison. * config.gcc: Don't define SMALL_ARG_MAX. * config.host: Likewise. * config.build: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108635 138bc75d-0d04-0410-961f-82ee72b054a4
* 2005-11-29 Paul Brook <paul@codesourcery.com>pbrook2005-11-291-1/+0
| | | | | | | | * config.gcc: Do not use fixproto on m68k-elf. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@107644 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/24348danglin2005-11-181-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config.gcc (hppa*-*-hpux*): Add pa/t-slibgcc-elf-ver to tmake config when not using sjlj exceptions. * config/pa/pa64-hpux.h (LIB_SPEC): Add -lpthread in static links. * config/pa/pa-hpux11.h (LIB_SPEC): Likewise. * config/pa/som.h (ASM_PREFERRED_EH_DATA_FORMAT): Delete define. * config/pa/linux-unwind.h (pa32_fallback_frame_state): Use DWARF_ALT_FRAME_RETURN_COLUMN instead of column 0 as return column. * config/pa/pa-hpux.h (MD_UNWIND_SUPPORT): New define. * config/pa/pa-linux.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_RETURN_COLUMN, ASM_PREFERRED_EH_DATA_FORMAT, ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Delete defines. * config/pa/pa.h (ARG_POINTER_CFA_OFFSET): Delete. (FRAME_POINTER_CFA_OFFSET, INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_RETURN_COLUMN, DWARF_ALT_FRAME_RETURN_COLUMN, ASM_PREFERRED_EH_DATA_FORMAT, ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New defines. * config/pa/hpux-unwind.h: New file. * testsuite/gcc.dg/cleanup-8.c: Enable test on hppa*-*-hpux*. * testsuite/gcc.dg/cleanup-9.c: Likewise. * testsuite/gcc.dg/cleanup-10.c: Likewise. * testsuite/gcc.dg/cleanup-11.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@107157 138bc75d-0d04-0410-961f-82ee72b054a4
* PR middle-end/21275dannysmith2005-10-121-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR middle-end/21766 * target.h (struct gcc_target): Add valid_dllimport_attribute_p target hook. (struct cxx): Add adjust_class_at_definition target hook. * target-def.h: (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): New define, defaulting to hook_bool_tree_true. Add to TARGET_INITIALIZER (TARGET_CXX_ADJUST_CLASS_AT_DEFINITION): New define, defaulting to hook_void_tree. Add to TARGET_CXX. * tree.h (struct decl_with_vis): Rename non_addr_const_p field to dllimport_flag. (DECL_NON_ADDR_CONSTANT_P): Replace with DECL_DLLIMPORT_P macro. * tree.c (merge_dllimport_decl_attributes): Check DECL_DLLIMPORT_P instead of attribute. Check for dllexport override. Warn if inconsistent dll linkage. Don't lose old dllimport if decl has had address referenced. Tweak lookup of dllimport atribute. (handle_dll_attribute): Check targetm.valid_dllimport_attribute_p for target specific rules. Don't add dllimport attribute if DECL_DECLARED_INLINE_P. Set DECL_DLLIMPORT_P when adding dllimport attribute. (staticp): Replace DECL_NON_ADDR_CONSTANT_P with DECL_DLLIMPORT_P. * varasm.c (initializer_constant_valid_p): Replace DECL_NON_ADDR_CONSTANT_P with DECL_DLLIMPORT_P PR target/21801 PR target/23589 * config.gcc (i[34567]86-*-cygwin*): Add winnt-cxx.o to 'cxx_target_objs', winnt-stubs,o to 'extra_objs'. (i[34567]86-*-mingw32*): Likewise. * doc/tm.texi (TARGET_CXX_ADJUST_CLASS_AT_DEFINITION): Document. (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Document. * config/i386/winnt.c (i386_pe_dllimport_p): Factor out C++-specific code. Change return value to bool. (i386_pe_dllimport_p): Likewise. (associated_type): Simplify and make language-independent (i386_pe_encode_section_info): Replace override of ambiguous dllimport symbol refs with a gcc_assert. (i386_pe_valid_dllimport_attribute_p): Define. * config/i386/winnt-cxx.c: New file. Define C++ versions of i386_pe_type_dllimport_p, i386_pe_type_dllexport_p, i386_pe_adjust_class_at_definition. * config/i386/winnt-stubs.c: New file. Define stub versions of lang-specific functions. * config/i386/i386-protos.h: Declare winnt-[cxx|stubs].c functions i386_pe_type_dllimport_p, i386_pe_type_dllexport_p, i386_pe_adjust_class_at_definition. (i386_pe_valid_dllimport_attribute_p): Declare. * config/i386/cygming.h (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Define. (TARGET_CXX_ADJUST_CLASS_AT_DEFINITION): Define. * config/i386/t-cygming: Add rules for winnt-cxx.o, winnt-stubs.o. PR target/19704 * config/i386/i386.c (ix86_function_ok_for_sibcall): Replace test for dllimport attribute with test of DECL_DLLIMPORT_P. cp PR target/21801 PR target/23589 * class.c (finish_struct_1): Call targetm.cxx.adjust_class_at_definition. testsuite * gcc.dg/dll-2.c: Add tests for warnings. * gcc.dg/dll-3.c: Likewise. * gcc.dg/dll-4.c: Likewise. * g++.dg/ext/dllimport1.C: Adjust tests for warnings. * g++.dg/ext/dllimport2.C: Likewise. * g++.dg/ext/dllimport3.C: Likewise. * g++.dg/ext/dllimport7.C: Likewise. * g++.dg/ext/dllimport8.C: Likewise. * g++.dg/ext/dllimport9.C: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@105332 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud