aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
AgeCommit message (Collapse)AuthorFilesLines
2005-06-23re PR target/21760 (Powerpc atomic builtins missing PPC405 errata)David Edelsohn3-447/+501
PR target/21760 * config/rs6000/rs6000.h (PPC405_ERRATUM77): New. * config/rs6000/rs6000.md: Move atomic instructions to ... * config/rs6000/sync.md: Here. Change sync_compare_and_swap<mode> to define_expand. All stwcx patterns test PPC405_ERRATUM77. From-SVN: r101268
2005-06-23* config/rs6000/sysv4.h (TARGET_ASM_EXCEPTION_SECTION): Delete.Alan Modra1-2/+0
From-SVN: r101260
2005-06-21genopinit.c (vec_shl_optab, [...]): Initialize new optabs.Dorit Nuzman1-126/+69
* genopinit.c (vec_shl_optab, vec_shr_optab): Initialize new optabs. (reduc_plus_optab): Removed. Replcaed with... (reduc_splus_optab, reduc_uplus_optab): Initialize new optabs. * optabs.c (optab_for_tree_code): Return reduc_splus_optab or reduc_uplus_optab instead of reduc_plus_optab. (expand_vec_shift_expr): New function. (init_optabs): Initialize new optabs. Remove initialization of reduc_plus_optab. (optab_for_tree_code): Return vec_shl_optab/vec_shr_optab for VEC_LSHIFT_EXPR/VEC_RSHIFT_EXPR. * optabs.h (OTI_reduc_plus): Removed. Replaced with... (OTI_reduc_splus, OTI_reduc_uplus): New. (reduc_plus_optab): Removed. Replcaed with... (reduc_splus_optab, reduc_uplus_optab): New optabs. (vec_shl_optab, vec_shr_optab): New optabs. (expand_vec_shift_expr): New function declaration. * tree.def (VEC_LSHIFT_EXPR, VEC_RSHIFT_EXPR): New tree-codes. * tree-inline.c (estimate_num_insns_1): Handle new tree-codes. * expr.c (expand_expr_real_1): Handle new tree-codes. * tree-pretty-print.c (dump_generic_node, op_symbol, op_prio): Likewise. * tree-vect-generic.c (expand_vector_operations_1): Add assert. * tree-vect-transform.c (vect_create_epilog_for_reduction): Add two alternatives for generating reduction epilog code. (vectorizable_reduction): Don't fail of direct reduction support is not available. (vectorizable_target_reduction_pattern): Likewise. * config/rs6000/altivec.md (reduc_smax_v4si, reduc_smax_v4sf, reduc_umax_v4si, reduc_smin_v4si, reduc_smin_v4sf, reduc_umin_v4si, reduc_plus_v4si, reduc_plus_v4sf): Removed. (vec_shl_<mode>, vec_shr_<mode>, altivec_vsumsws_nomode, reduc_splus_<mode>, reduc_uplus_v16qi): New. From-SVN: r101231
2005-06-21config/sh/linux.h (FUNCTION_PROFILER): Constify a char*.Kaz Kojima1-1/+1
From-SVN: r101225
2005-06-20netware-libgcc.def: Update copyright.Jan Beulich4-105/+99
gcc/ 2005-06-20 Jan Beulich <jbeulich@novell.com> * config/i386/netware-libgcc.def: Update copyright. * config/i386/netware-libgcc.exp (__divdc3, __divsc3, __divxc3, __muldc3, __mulsc3, __mulxc3, __powidf2, __powisf2, __powixf2): Add. * config/i386/netware.c (gen_stdcall_decoration, gen_fastd_decoration): Merge into ... (gen_stdcall_or_fastcall_decoration): ... this. Adjust to match WinNT's changes. (gen_regparm_prefix): Adjust to match i386_nlm_encode_section_info. (i386_nlm_encode_section_info): Adjust to match WinNT's changes. * config/i386/t-nwld (SHLIB_LINK): Also create libgcc.imp alias of libgcc_s.imp. Use 'expr' rather than $(()) shell expressions. * gthr-nks.h (__gthread_objc_mutex_allocate): Kill another dubious use of NX_MUTEX_RECURSIVE. gcc/testsuite/ 2005-06-20 Jan Beulich <jbeulich@novell.com> * g++.old-deja/g++.jason/thunk2.C: On NetWare, also account for unsupportable relocations. * g++.old-deja/g++.other/store-expr1.C: Likewise. * gcc.dg/20050321-2.c: xfail for NetWare. From-SVN: r101203
2005-06-19i386.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Define.Joseph Myers2-0/+43
* config/i386/i386.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Define. (ix86_mangle_fundamental_type): New. * config/ia64/ia64.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Define. (ia64_mangle_fundamental_type): New. testsuite: * g++.dg/abi/mangle24.C, g++.dg/abi/mangle25.C: New tests. From-SVN: r101191
2005-06-19vect.md (vec_extractv2sf_1): Fix cut-and-paste error; the shift is always ↵Richard Henderson1-12/+4
required. * config/ia64/vect.md (vec_extractv2sf_1): Fix cut-and-paste error; the shift is always required. From-SVN: r101186
2005-06-19ia64-modes.def (V4SF): Add.Richard Henderson5-11/+188
* config/ia64/ia64-modes.def (V4SF): Add. * config/ia64/ia64.c (ia64_legitimate_constant_p): Handle CONST_VECTOR. * config/ia64/ia64.h (CANNOT_CHANGE_MODE_CLASS): Allow vector to integer mode changes in fp regs. * config/ia64/ia64.md (UNSPEC_VECT_EXTR): New. * config/ia64/vect.md (smaxv2sf3, sminv2sf3): Fix typos in names. (reduc_plus_v2sf, reduc_smax_v2sf, reduc_smin_v2sf): New. (vcondv2sf): Use gen_fpack (fpack): Remove * from name. (fswap, fmix_l, fmix_r, fmix_lr): New. (vec_setv2sf, vec_extractv2sf_0_le, vec_extractv2sf_0_be): New. (vec_extractv2sf_1, vec_extractv2sf): New. From-SVN: r101185
2005-06-19i386.md (*cmpfp_0_sf, [...]): Remove instruction patterns.Uros Bizjak3-33/+57
2005-06-19 Uros Bizjak <uros@kss-loka.si> * config/i386/i386.md (*cmpfp_0_sf, *cmpfp_0_df, cmpfp_0_xf): Remove instruction patterns. (*cmpfp_0): New instruction pattern. Set "unit" attribute to "i387". (*cmpfp_sf, *cmpfp_df, *cmpfp_xf, *cmpfp_u, *_cmpfp_<mode>): Set "unit" attribute to "i387". (*pushsf, *pushsf_rex64, *pushdf_nointeger, *pushdf_integer) (*pushxf_nointeger, *pushxf_integer): Set "unit" attribute to "i387" for alternative 0. (*truncdfsf_mixed, *truncdfsf_i387, *truncxfsf2_mixed) (*truncxfsf2_i387, *truncxfdf2_mixed, *truncxfdf2_i387): Set "unit" attribute to "i387" when "type" attribute equals "multi". (*floathisf2_i387, *floatsisf2_mixed, *floatsisf2_i387) (*floatdisf2_mixed, *floatdisf2_i387, *floathidf2_i387) (*floatsidf2_mixed, *floatsidf2_i387, *floatdidf2_mixed) (*floatdidf2_i387, floathixf2, floatsixf2, floatdixf2): Set "unit" attribute to "i387" when "type" attribute equals "multi". * config/i386/mmx.md (*mov<mode>_internal_rex64) (*mov<mode>_internal, *movv2sf_internal_rex64, *movv2sf_internal): Set "unit" attribute to "mmx" when "type" attribute equals "ssecvt". (mmx_pmovmskb): Correct wrong "type" and "mode" attributes. * config/i386/sse.md (sse_cvtps2pi, sse_cvttps2pi, sse_cvtpd2di) (sse_cvttpd2pi): Set "unit" attribute to "mmx". (sse2_cvtpi2pd): Split register constraints. Set "unit" attribute to "mmx" for "y" operand 1. From-SVN: r101180
2005-06-19i386.c (ix86_function_arg_regno_p): Add MMX_REGNO_P for TARGET_MMX.Uros Bizjak1-12/+17
2005-06-16 Uros Bizjak <uros@kss-loka.si> * config/i386/i386.c (ix86_function_arg_regno_p): Add MMX_REGNO_P for TARGET_MMX. Use MMX_REGPARM_MAX and SSE_REGPARM_MAX for MMX and SSE registers to determine if regno is valid. (ix86_function_value_regno_p): Depend FIRST_FLOAT_REG on TARGET_FLOAT_RETURNS_IN_80387 also for TARGET_64BIT. Clean up. From-SVN: r101179
2005-06-18expr.c (store_constructor): Use store of 0 to indicate value death instead ↵Richard Henderson3-0/+56
of a clobber. * expr.c (store_constructor): Use store of 0 to indicate value death instead of a clobber. * config/i386/i386.c (ix86_expand_reduc_v4sf): New. * config/i386/i386-protos.h (ix86_expand_reduc_v4sf): Declare. * config/i386/sse.md (reduc_plus_v4sf): New. (reduc_smax_v4sf, reduc_smin_v4sf): New. From-SVN: r101169
2005-06-18re PR target/22083 (TARGET_C99_FUNCTIONS is wrongly defined on AIX 5.1)Roger Sayle1-4/+0
PR target/22083 * config/rs6000/aix51.h (TARGET_C99_FUNCTIONS): Remove definition. From-SVN: r101156
2005-06-18tree.def (REDUC_MAX_EXPR, [...]): New tree-codes.Dorit Nuzman1-0/+154
* tree.def (REDUC_MAX_EXPR, REDUC_MIN_EXPR, REDUC_PLUS_EXPR): New tree-codes. * optabs.h (OTI_reduc_smax, OTI_reduc_umax, OTI_reduc_smin, OTI_reduc_umin, OTI_reduc_plus): New optabs for reduction. (reduc_smax_optab, reduc_umax_optab, reduc_smin_optab, reduc_umin_optab, reduc_plus_optab): New optabs for reduction. * expr.c (expand_expr_real_1): Handle new tree-codes. * tree-inline.c (estimate_num_insns_1): Handle new tree-codes. * tree-pretty-print.c (dump_generic_node, op_prio, op_symbol): Handle new tree-codes. * optabs.c (optab_for_tree_code): Handle new tree-codes. (init_optabs): Initialize new optabs. * genopinit.c (optabs): Define handlers for new optabs. * tree-vect-analyze.c (vect_analyze_operations): Fail vectorization in case of a phi that is marked as relevant. Call vectorizable_reduction. (vect_mark_relevant): Phis may be marked as relevant. (vect_mark_stmts_to_be_vectorized): The use corresponding to the reduction variable in a reduction stmt does not mark its defining phi as relevant. Update documentation accordingly. (vect_can_advance_ivs_p): Skip reduction phis. * tree-vect-transform.c (vect_get_vec_def_for_operand): Takes additional argument. Handle reduction. (vect_create_destination_var): Update call to vect_get_new_vect_var. Handle non-vector argument. (get_initial_def_for_reduction): New function. (vect_create_epilog_for_reduction): New function. (vectorizable_reduction): New function. (vect_get_new_vect_var): Handle new vect_var_kind. (vectorizable_assignment, vectorizable_operation, vectorizable_store, vectorizable_condition): Update call to vect_get_new_vect_var. (vect_transform_stmt): Call vectorizable_reduction. (vect_update_ivs_after_vectorizer): Skip reduction phis. (vect_transform_loop): Skip if stmt is both not relevant and not live. * tree-vectorizer.c (reduction_code_for_scalar_code): New function. (vect_is_simple_reduction): Was empty - added implementation. * tree-vectorizer.h (vect_scalar_var): New enum vect_var_kind value. (reduc_vec_info_type): New enum vect_def_type value. * config/rs6000/altivec.md (reduc_smax_v4si, reduc_smax_v4sf, reduc_umax_v4si, reduc_smin_v4si, reduc_umin_v4sf, reduc_smin_v4sf, reduc_plus_v4si, reduc_plus_v4sf): New define_expands. * tree-vect-analyze.c (vect_determine_vectorization_factor): Remove ENABLE_CHECKING around gcc_assert. * tree-vect-transform.c (vect_do_peeling_for_loop_bound, (vect_do_peeling_for_alignment, vect_transform_loop, vect_get_vec_def_for_operand): Likewise. From-SVN: r101155
2005-06-18ia64.c (ia64_function_arg): Set up a PARALLEL for a big-endian unnamed ↵Joseph Myers1-0/+13
__float80 value. * config/ia64/ia64.c (ia64_function_arg): Set up a PARALLEL for a big-endian unnamed __float80 value. testsuite: * gcc.target/ia64/float80-varargs-1.c: New test. From-SVN: r101153
2005-06-17re PR target/19889 (g++.old-deja/g++.law/profile1.C execution test fails on ↵Steve Ellcey4-0/+62
ia64-hpux) PR target/19889 * config/ia64/hpux.h (FUNCTION_PROFILER): New (dummy). (PROFILE_HOOK): New. (PROFILE_BEFORE_PROLOGUE): Undef. (NO_PROFILE_COUNTERS): New. * config/ia64/ia64-protos.h (ia64_profile_hook): New. * config/ia64/ia64.c (ia64_compute_frame_size): Add ifdef. (gen_mcount_func_rtx): New. (ia64_profile_hook): New. * config/ia64/ia64.md (ip_value): New. From-SVN: r101134
2005-06-17predicates.md (s5bit_cint_operand, [...]): New.Devang Patel3-7/+17
* config/rs6000/predicates.md (s5bit_cint_operand, u5bit_cint_operand): New. * config/rs6000/altivec.md (altivec_vspltb, altivec_vsplth, altivec_vspltisw_v4sf): Use new 5 bit constant operand predicates. * config/rs6000/rs6000.c (rs6000_expand_unop_builtin): Fix signed 5 bit constant check. From-SVN: r101133
2005-06-16t-slibgcc-darwin (SHLIB_SOVERSION): Rename from SHLIB_MINOR.Geoffrey Keating1-4/+3
* config/t-slibgcc-darwin (SHLIB_SOVERSION): Rename from SHLIB_MINOR. (SHLIB_REVISION): Delete. (SHLIB_VERSTRING): Update to compensate. (SHLIB_SONAME): Just use one '.' in the name. From-SVN: r101098
2005-06-16extend.texi: Document sseregparm target attribute.Richard Guenther2-97/+150
2005-06-16 Richard Guenther <rguenth@gcc.gnu.org> * doc/extend.texi: Document sseregparm target attribute. Clarify fastcall and regparm documentation. * config/i386/i386.h: Adjust float_in_sse documentation. * config/i386/i386.c: Add new target attribute sseregparm. (ix86_handle_cdecl_attribute, ix86_handle_regparm_attribute): Merge into ... (ix86_handle_cconv_attribute): ... here. Also handle sseregparm attribute. (ix86_comp_type_attributes): Compare sseregparm attributes. (ix86_function_sseregparm): New function, split out from ... (init_cumulative_args): ... here. Use to decide use of SSE registers and error in case of missing support. (ix86_value_regno): Likewise. (function_arg_advance): Do not bail out for DFmode if we need to pass doubles in registers. (function_arg): Likewise. * gcc.target/i386/attributes-error.c: New testcase. * gcc.target/i386/fastcall-sseregparm.c: Likewise. * gcc.target/i386/regparm-stdcall.c: Likewise. * gcc.target/i386/sseregparm-1.c: Likewise. * gcc.target/i386/sseregparm-2.c: Likewise. From-SVN: r101085
2005-06-16basic-block.h (rtl_bb_info): Break out head_, end_, global_live_at_start, ↵Jan Hubicka3-9/+11
global_live_at_end from ... * basic-block.h (rtl_bb_info): Break out head_, end_, global_live_at_start, global_live_at_end from ... (basic_block_def): ... here; update all references (BB_RTL): New flag. (init_rtl_bb_info): Declare. * cfgexpand.c (expand_gimple_basic_block): Init bb info, set BB_RTL flag. * cfgrtl.c: Include ggc.h (create_basic_block_structure): Init bb info. (rtl_verify_flow_info_1): Check BB_RTL flag and rtl_bb_info pointer. (init_rtl_bb_info): New function. (rtl_merge_block, cfglayout_merge_block): Copy global_live_at_end here. * cfghooks.c (merge_block): Do not copy global_live_at_end here. * cfg.c (clear_bb_flags): Skip BB_RTL flag. (dump_flow_info): Gueard global_live_* dumping. From-SVN: r101082
2005-06-15mips.c (mips_rtx_cost_data): Add cost for 4kc, 4kp, 24k and 24kx.David Ung1-4/+36
* config/mips/mips.c (mips_rtx_cost_data): Add cost for 4kc, 4kp, 24k and 24kx. From-SVN: r100982
2005-06-15mips.h (GENERATE_MIPS16E): New definition.David Ung2-3/+24
* config/mips/mips.h (GENERATE_MIPS16E): New definition. * config/mips/mips.md (zero_extend<SHORT:mode><GPR:mode>2): Changed expand condition to exclude generating of "and" if GENERATE_MIPS16E is true. (*zero_extend<SHORT:mode><GPR:mode>2_mips16e): New pattern for matching mips16e zeb/zeh. (*extend<SHORT:mode><GPR:mode>2_mips16e): New pattern for matching mips16e seb/seh. (*extend<SHORT:mode><GPR:mode>2): Disable this pattern for GENERATE_MIPS16E. * doc/invoke.texi (MIPS Options): Add comment to -mips16 indicating MIPS16e ASE is used if targetting for MIPS32 or MIPS64. From-SVN: r100979
2005-06-14mips.c (machine_function): Add varargs_size field.Richard Sandiford1-115/+87
* config/mips/mips.c (machine_function): Add varargs_size field. (mips_setup_incoming_varargs): Store the amount of extra stack space there rather than in *pretend_size. When saving registers, always expect virtual_incoming_args_rtx to point to the start of the pretend arguments. (mips_va_start): Remove alignment hack. Handle all !EABI_FLOAT_VARARGS_P cases in the same way. (compute_frame_size): Handle varargs_size. Remove the redundant !TARGET_OLDABI condition in the handling of pretend_args_size. (mips_initial_elimination_offset): Remove the now-redundant check of TARGET_NEWABI. From-SVN: r100956
2005-06-14re PR target/20301 (Assembler labels have a leading "-")Eric Botcazou1-1/+1
PR target/20301 * config/sparc/sol2.h (ASM_GENERATE_INTERNAL_LABEL): Emit unsigned index numbers. From-SVN: r100933
2005-06-14Revert hunk accidentally commited.Eric Botcazou1-1/+1
From-SVN: r100932
2005-06-13x86-64.h (ASM_SPEC): Explicitly pass --64 to the assembler in 64-bit mode.Mark Mitchell1-1/+1
* config/i386/x86-64.h (ASM_SPEC): Explicitly pass --64 to the assembler in 64-bit mode. From-SVN: r100905
2005-06-13Revert scc_operand patch.David Edelsohn2-17/+6
* config/rs6000/predicates.md (scc_operand): Delete. * config/rs6000/rs6000.md (scc_operand): Change to scc_eq_operand. From-SVN: r100879
2005-06-12cgraphunit.c, [...]: Fix comment typos.Kazu Hirata1-1/+1
* cgraphunit.c, tree-ssa-loop-ivopts.c, tree-ssa-structalias.c, tree-vectorizer.c, tree-vectorizer.h, config/sparc/sparc.c: Fix comment typos. From-SVN: r100856
2005-06-12* arm/ieee754-df.s (aeabi_dcmpeq, aeabi_dcmplt, aeabi_dcmple)Richard Earnshaw2-11/+11
(aeabi_dcmpge, aeabi_dcmpgt): Maintain 8-byte stack alignment. * arm/ieee754-sf.s (aeabi_l2f, aeabi_fcmpeq, aeabi_fcmplt) (aeabi_fcmple, aeabi_fcmpge, aeabi_fcmpgt): Likewise. From-SVN: r100854
2005-06-12predicates.md (reg_or_arith_cint_operand): Delete.Geoffrey Keating4-803/+220
* config/rs6000/predicates.md (reg_or_arith_cint_operand): Delete. (reg_or_add_cint_operand): Rename from reg_or_add_cint64_operand. Handle SImode. (reg_or_sub_cint_operand): Likewise. (mask_operand): Handle DImode. (mask64_operand): Delete. (and64_operand): Delete. * config/rs6000/rs6000.c (num_insns_constant): Use mask_operand instead of mask64_operand. (print_operand): Likewise. (rs6000_rtx_costs): Use mask_operand and reg_or_add_cint_operand and reg_or_sub_cint_operand instead of *64_* variants. * config/rs6000/rs6000.h (EXTRA_CONSTRAINT): Use mask_operand instead of mask64_operand. * config/rs6000/rs6000.md: Use mask_operand and and_operand instead of *64_* variants. (FP): New. (add_op2): Delete. (add<mode>3): Use reg_or_add_cint_operand. (sub_op2): Delete. (sub<mode>3): Use reg_or_sub_cint_operand. (udiv<mode>3, div<mode>3, div<mode>3_no_mq, mod<mode>3, mov<mode>_internal2, mov<mode>, cmp<mode>, cmp<mode>, cmp<mode>_internal1, indirect_jump<mode>, ctr<mode>, ctr<mode>_internal1, ctr<mode>_internal2, ctr<mode>_internal5, ctr<mode>_internal6, save_fpregs_<mode>, return_internal_<mode>, return_and_restore_fpregs_<mode>, eh_set_lr_<mode>, various unnamed patterns): New. (udivsi3, divsi3, divsi3_no_mq, modsi3, movsi_internal2, movsi, cmpsi, cmpsi_internal1, indirect_jumpsi, ctrsi, ctrsi_internal1, ctrsi_internal2, ctrsi_internal5, ctrsi_internal6, save_fpregs_si, return_internal_si, return_and_restore_fpregs_si, eh_set_lr_si, udivdi3, divdi3, divdi3_no_mq, moddi3, movdi_internal2, movdi, cmpdi, cmpdi_internal1, indirect_jumpdi, ctrdi, ctrdi_internal1, ctrdi_internal2, ctrdi_internal5, ctrdi_internal6, save_fpregs_di, return_internal_di, return_and_restore_fpregs_di, eh_set_lr_di, movhi, movqi, cmpsf, cmpdf, cmptf, various unnamed patterns): Delete. From-SVN: r100852
2005-06-11* config/rs6000/rs6000.md (eq<mode>_compare): Restrict to Pmode.David Edelsohn1-9/+9
From-SVN: r100841
2005-06-10re PR target/21981 ([4.0 only] __m64 return value should be returned in %mm0)Uros Bizjak1-9/+29
PR target/21981 * config/i386/i386.c (ix86_function_value_regno_p): Return true for FIRST_MMX_REG if TARGET_MMX. (ix86_return_in_memory): Return 1 for MMX/3dNow vectors. Delete wrong comment. (ix86_struct_value_rtx): Emit warning for MMX ABI violations. (ix86_value_regno): Return FIRST_MMX_REG for MMX vector modes. From-SVN: r100832
2005-06-10re PR middle-end/17961 (ICE for operation on small vector with altivec enabled)Aldy Hernandez2-16/+5
PR 17961 * config/rs6000/sysv4.h (ROUND_TYPE_ALIGN): Remove. * config/rs6000/linux64.h (ROUND_TYPE_ALIGN): Remove vector check. * testsuite/gcc.dg/simd-3.c: New. From-SVN: r100820
2005-06-10Use scc_operand predicate for eq:SI in powerpc.Fariborz Jahanian2-6/+17
Oked by David Edelsohn. From-SVN: r100818
2005-06-10linux.h (NO_PROFILE_COUNTERS): Define.Alan Modra3-12/+30
* config/rs6000/linux.h (NO_PROFILE_COUNTERS): Define. * config/rs6000/linux64.h (NO_PROFILE_COUNTERS): Define as 1. * config/rs6000/rs6000.c (output_function_profiler): Obey NO_PROFILE_COUNTERS. Handle TARGET_SECURE_PLT. Use "bcl 20,31" for -fPIC. Delete save_lr and substitute its value into strings. From-SVN: r100814
2005-06-10i386.c (optimization_options): Make -fno-math-errno the default on Darwin.Dale Johannesen2-2/+11
2005-06-09 Dale Johannesen <dalej@apple.com> * config/i386/i386.c (optimization_options): Make -fno-math-errno the default on Darwin. * config/rs6000/rs6000.c (optimization_options): Ditto. * doc/invoke.texi (-fno-math-errno): Document. 2005-06-09 Dale Johannesen <dalej@apple.com> * config/rs6000/rs6000.c (TARGET_INSN_VALID_WITHIN_DOLOOP): Change to TARGET_INVALID_WITHIN_DOLOOP. From-SVN: r100813
2005-06-09rs6000.md (eq): Convert to define_insn_and_split.David Edelsohn2-134/+64
* config/rs6000/rs6000.md (eq): Convert to define_insn_and_split. * config/rs6000/predicates.md (scc_eq_operand): New. From-SVN: r100812
2005-06-09sh.md (mextr_rl): Set buffer size properly.Kaz Kojima1-2/+2
* config/sh/sh.md (mextr_rl): Set buffer size properly. (*mextr_lr): Likewise. From-SVN: r100808
2005-06-09ia64.c (update_set_flags): Just return for IF_THEN_ELSE.Richard Henderson2-41/+22
* config/ia64/ia64.c (update_set_flags): Just return for IF_THEN_ELSE. Use SCALAR_FLOAT_MODE_P. * config/ia64/vect.md (vcondv2sf): Remove code check on comparison. (fselect): Rename from fpcmp; use %F. (fpcmp): New. From-SVN: r100803
2005-06-09rs6000.c: (rs6000_insn_valid_within_doloop): Fix prototype.Daniel Berlin1-1/+1
2005-06-09 Daniel Berlin <dberlin@dberlin.org> * config/rs6000/rs6000.c: (rs6000_insn_valid_within_doloop): Fix prototype. From-SVN: r100801
2005-06-09bfin.c (enum bfin_builtins): Moved here from...Bernd Schmidt2-8/+8
* config/bfin/bfin.c (enum bfin_builtins): Moved here from... * config/bfin/bfin.h (enum bfin_builtins): ... here. From-SVN: r100798
2005-06-09target.h (insn_valid_within_doloop): Rename into "invalid_within_doloop".Adrian Straetling2-10/+11
2005-06-09 Adrian Straetling <straetling@de.ibm.com> * target.h (insn_valid_within_doloop): Rename into "invalid_within_doloop". Change return type to "const char *". Update Comment. * targhooks.h (default_insn_valid_within_doloop): Rename into "default_invalid_within_doloop". * targhooks.c (default_insn_valid_within_doloop): Likewise. Update Comment. * target-def.h (TARGET_INSN_VALID_WITHIN_DOLOOP): Rename target hook into "TARGET_INVALID_WITHIN_DOLOOP". Default it to "default_invalid_within_doloop". * hooks.c (hook_constcharptr_rtx_null): New function. (hook_bool_rtx_true): Remove. * hooks.h (hook_constcharptr_rtx_null): Declare. (hook_bool_rtx_true): Remove. * loop-doloop.c (doloop_valid_p): Temporarily store return value of "invalid_within_doloop" and print error message if non-null. Update Comment. * doc/tm.texi: Update documentation. * config/s390/s390.c: Adjust to new hook name and new default hook. * config/rs6000/rs6000.c: (rs6000_insn_valid_within_doloop): Rename into "rs6000_invalid_within_doloop". (rs6000_invalid_within_doloop): Change return type to "static const char *" and replace return values. Update Comment. From-SVN: r100797
2005-06-09bfin.opt (mlong-calls): New.Bernd Schmidt2-1/+5
* config/bfin/bfin.opt (mlong-calls): New. * config/bfin/predicates.md (call_insn_operand): Disallow SYMBOL_REF if TARGET_LONG_CALLS. From-SVN: r100796
2005-06-09darwin.c (darwin_binds_local_p): New.Dale Johannesen4-15/+16
2005-06-08 Dale Johannesen <dalej@apple.com> * config/darwin.c (darwin_binds_local_p): New. * config/darwin-protos.h (darwin_binds_local_p): Declare it. * config/i386/i386.c (TARGET_BINDS_LOCAL_P): Use it for TARGET_MACHO. * config/rs6000/rs6000.c (rs6000_binds_local_p): Remove. (TARGET_BINDS_LOCAL_P): Change it to darwin_binds_local_p. From-SVN: r100792
2005-06-08rs6000.h: Remove rs6000_long_double_size_string...Aldy Hernandez1-7/+0
* config/rs6000/rs6000.h: Remove rs6000_long_double_size_string, rs6000_isel, rs6000_spe, rs6000_alignment_string, rs6000_sched_restricted_insns_priority_str, rs6000_sched_restricted_insns_priority, rs6000_abi_string. From-SVN: r100784
2005-06-08ia64.h (NO_PROFILE_COUNTERS): New.Richard Henderson2-13/+23
* config/ia64/ia64.h (NO_PROFILE_COUNTERS): New. * config/ia64/ia64.c (ia64_output_function_profiler): Honor it. Emit out3 load right after alloc. From-SVN: r100781
2005-06-08linuxspe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Use rs6000_explicit_options.Aldy Hernandez1-5/+5
* config/rs6000/linuxspe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Use rs6000_explicit_options. From-SVN: r100775
2005-06-08ia64.h (FUNCTION_PROFILER): Move implementation ...Richard Henderson3-18/+30
* config/ia64/ia64.h (FUNCTION_PROFILER): Move implementation ... * config/ia64/ia64.c (ia64_output_function_profiler): ... here; add unwind markup. * config/ia64/ia64-protos.h (ia64_output_function_profiler): Declare. From-SVN: r100774
2005-06-08sol2-c.c (cmn_err_char_table): Allow width for %b formats.Joseph Myers1-1/+1
* config/sol2-c.c (cmn_err_char_table): Allow width for %b formats. testsuite: * gcc.dg/format/cmn_err-1.c: Update. From-SVN: r100763
2005-06-08re PR target/20666 (SPARC builtins should be folded if possible)James A. Morrison1-0/+203
2005-06-08 James A. Morrison <phython@gcc.gnu.org> PR target/20666 * config/sparc/sparc.c (sparc_fold_builtin): New function (sparc_vis_mul8x16): New function. (sparc_handle_vis_mul8x16): New function. (TARGET_FOLD_BUILTIN): Define to sparc_fold_builtin. From-SVN: r100762
2005-06-08re PR rtl-optimization/10588 ([PPC] i==0||j==0 should use cntlzw and srawi)David Edelsohn1-20/+55
* config/rs6000/rs6000.md (call_indirect_nonlocal_aix32): Prefer CTR to LR. (call_indirect_nonlocal_aix64): Same. (call_value_indirect_nonlocal_aix32): Same. (call_value_indirect_nonlocal_aix64): Same. PR target/10588 (eq): Use CLZ splitter for compare with zero. From-SVN: r100759