1. 05 Jul, 2010 30 commits
    • io.c (resolve_tag): Check EXIST tag is a default logical. · 92336ae1
      2010-07-05  Steven G. Kargl  <kargl@gcc.gnu.org>
      
          fortran/44797
          * fortran/io.c (resolve_tag): Check EXIST tag is a default logical.
      
      From-SVN: r161852
      Steven G. Kargl committed
    • i386.c (ix86_gen_allocate_stack_worker): New. · 71b2fd74
      	* config/i386/i386.c (ix86_gen_allocate_stack_worker): New.
      	(override_options): Initialize it.
      	(ix86_expand_prologue): Use it.
      
      From-SVN: r161851
      Uros Bizjak committed
    • ChangeLog: Fix whitespace. · 94dbbc81
      	* ChangeLog: Fix whitespace.
      	* testsuite/ChangeLog: Ditto.
      
      From-SVN: r161850
      Uros Bizjak committed
    • tree-nrv.c (tree_nrv): Set DECL_VALUE_EXPR on found to result. · 938650d8
      	* tree-nrv.c (tree_nrv): Set DECL_VALUE_EXPR on found to result.
      
      	* gcc.dg/guality/nrv-1.c: New test.
      
      From-SVN: r161849
      Jakub Jelinek committed
    • re PR fortran/44596 ([OOP] Dynamic dispatch uses broken types) · 0a8c9a13
      2010-07-05  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/44596
      	* trans-types.c (gfc_get_derived_type): Derived type fields
      	with the vtype attribute must have TYPE_REF_CAN_ALIAS_ALL set
      	but build_pointer_type_for_mode must be used for this.
      
      From-SVN: r161848
      Paul Thomas committed
    • double-int.h (fit_double_type): Remove declaration. · 88e06841
      	* double-int.h (fit_double_type): Remove declaration.
      	* double-int.c (fit_double_type): Remove function.
      	* tree.h (int_fits_type_p): Adjust prototype.
      	* tree.c (int_fits_type_p): Return bool. Use double_int_fits_to_tree_p
      	instead of fit_double_type.
      	(build_int_cst_type): Use double_int_to_tree and shwi_to_double_int
      	instead of fit_double_type and build_int_cst_wide.
      	* builtins.c (): Use double_int_fits_to_tree_p and double_int_to_tree
      	instead of fit_double_type and build_int_cst_wide.
      	(fold_builtin_object_size): Use double_int_fits_to_tree_p instead
      	of fit_double_type.
      
      From-SVN: r161847
      Anatoly Sokolov committed
    • cgraph.h (cgraph_node, [...]): Update docmentation of in_other_partition. · 92eb4438
      
      	* cgraph.h (cgraph_node, cgraph_varpool_node): Update docmentation of
      	in_other_partition.
      	* lto-cgraph.c (referenced_from_other_partition_p,
      	reachable_from_other_partition_p): Use in_other_partition flags.
      	(output_node, output_varpool_node): COMDAT nodes always have private
      	copies and thus are never used from other partition.
      
      	* lto.c (add_cgraph_node_to_partition): Forward declare; walk also
      	nodes from same comdat group as well as all comdat functions referenced
      	here.
      	(add_varpool_node_to_partition, add_references_to_partition): New function.
      	(lto_1_1_map): Skip COMDAT fnctions/variables; use add_varpool_node_to_partition;
      	clear aux flags when done.
      	(lto_promote_cross_file_statics): Do not promote stuff that gets duplicated to
      	each ltrans.
      
      From-SVN: r161846
      Jan Hubicka committed
    • ia64.h (MEMORY_MOVE_COST): Remove macro. · 69e18c09
      	* config/ia64/ia64.h (MEMORY_MOVE_COST): Remove macro.
      	* config/ia64/t-ia64 (ia64.o): Depend on reload.h.
      	* config/ia64/ia64.c Include reload.h.
      	(ia64_memory_move_cost): New function.
      	(TARGET_MEMORY_MOVE_COST): Define.
      	(ia64_register_move_cost): Replace MEMORY_MOVE_COST with
      	memory_move_cost.
      
      From-SVN: r161845
      Anatoly Sokolov committed
    • re PR middle-end/42505 (loop canonicalization causes a lot of unnecessary temporary variables) · 16ad8025
      2010-07-05  Sandra Loosemore  <sandra@codesourcery.com>
      
      	PR middle-end/42505
      
      	gcc/
      	* tree-ssa-loop-ivopts.c (determine_set_costs): Delete obsolete
      	comments about cost model.
      	(try_add_cand_for):  Add second strategy for choosing initial set
      	based on original IVs, controlled by ORIGINALP argument.
      	(get_initial_solution): Add ORIGINALP argument.
      	(find_optimal_iv_set_1): New function, split from find_optimal_iv_set.
      	(find_optimal_iv_set): Try two different strategies for choosing
      	the IV set, and return the one with lower cost.
      
      	gcc/testsuite/
      	* gcc.target/arm/pr42505.c: New test case.
      
      From-SVN: r161844
      Sandra Loosemore committed
    • configure.ac (ANONVERSCRIPT): Handle sun style. · 22a4778a
      	* configure.ac (ANONVERSCRIPT): Handle sun style.
      	Define ANONVERSCRIPT_GNU, ANONVERSCRIPT_SUN automake conditionals.
      	* configure: Regenerate.
      
      	* Makefile.am [ANONVERSCRIPT]: Protect GNU section with
      	ANONVERSCRIPT_GNU.
      	Introduce per-library $(lib)_la_version_arg, $(lib)_la_version_dep
      	variables.
      	[ANONVERSCRIPT_GNU] (version_arg): Default ld arg for version map.
      	(version_dep): Likewise for dependency.
      	Use them to set the per-library variables.
      	[!ANONVERSCRIPT]: Provide them vor the unversioned case.
      	[ANONVERSCRIPT_SUN]: Handle Sun symbol versioning.
      	(libgcj_la_DEPENDENCIES): Unconditionally use
      	$(libgcj_la_version_dep).
      	(libgcj_la_LINK): Add $(libgcj_la_version_arg).
      	(libgcj_noncore_la_DEPENDENCIES): Unconditionally use
      	$(libgcj_la_version_dep).
      	(libgcj_tools_la_LIBADD): Move -lm ...
      	(libgcj_tools_la_LDFLAGS): ... here.
      	(libgcj_tools_la_DEPENDENCIES): Add
      	$(libgcj_tools_la_version_dep).
      	(libgcj_tools_la_LINK): Add $(libgcj_tools_la_version_arg).
      	(lib_gnu_awt_xlib_la_DEPENDENCIES): Add
      	$(lib_gnu_awt_xlib_la_version_dep).
      	(lib_gnu_awt_xlib_la_LINK): Add
      	$(lib_gnu_awt_xlib_la_version_arg).
      	(libgcj_bc_la_DEPENDENCIES): Add $(libgcj_bc_la_version_dep).
      	(libgcj_bc_la_LINK): $(libgcj_bc_la_version_arg).
      	[ANONVERSCRIPT && ANONVERSCRIPT_SUN] (%.ver-sun): New pattern rule.
      	* Makefile.in: Regenerate.
      
      	* libgcj.ver: Reformat.
      
      From-SVN: r161843
      Rainer Orth committed
    • acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style. · 6d28b933
      	* acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
      	Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
      	LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
      	(HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
      	targetting solaris2*.
      	* configure: Regenerate.
      	* config.h.in: Regenerate.
      
      	* Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
      	libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
      	Add libgomp_version_dep.
      	[LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
      	versioning.
      	[!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
      	(libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
      	* Makefile.in: Regenerate.
      
      	* libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
      	HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
      	* libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
      	to common block, protected by
      	HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
      
      From-SVN: r161842
      Rainer Orth committed
    • tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Copy alias info. · bdf0f819
      2010-07-05  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Copy
      	alias info.
      
      From-SVN: r161841
      Richard Guenther committed
    • tree.c (reference_alias_ptr_type): New function. · a41e5e86
      2010-07-05  Richard Guenther  <rguenther@suse.de>
      
      	* tree.c (reference_alias_ptr_type): New function.
      	* tree.h (reference_alias_ptr_type): Declare.
      	* tree-ssa-loop-ivopts.c (copy_ref_info): Restructure to
      	allow non-TARGET_MEM_REF new refs.
      	(rewrite_use_address): Pass old alias pointer type to
      	create_mem_ref.
      	* tree-ssa-address.c (create_mem_ref_raw): Get alias pointer type.
      	Build a MEM_REF instead of a TARGET_MEM_REF if possible.
      	(create_mem_ref): Get alias pointer type.  Adjust calls to
      	create_mem_ref_raw.
      	(maybe_fold_tmr): Likewise.
      	* tree-flow.h (create_mem_ref): Adjust prototype.
      
      From-SVN: r161840
      Richard Guenther committed
    • constants.c (build_constants_constructor): Use build_constructor instead of… · 5c144a5f
      constants.c (build_constants_constructor): Use build_constructor instead of build_constructor_from_list.
      
      	* constants.c (build_constants_constructor): Use build_constructor
      	instead of build_constructor_from_list.
      	* class.c (make_method_value): Likewise.
      	(get_dispatch_table): Likewise.
      	(make_class_data): Likewise.
      	(emit_indirect_register_classes): Likewise.
      	(emit_symbol_table): Likewise.
      	(add_assertion_table_entry): Likewise.
      	(emit_assertion_table): Likewise.
      	(make_field_value): Use build_constructor_single instead of
      	build_constructor_from_list.
      
      From-SVN: r161839
      Nathan Froyd committed
    • re PR c++/44808 (ICE: tree check: expected var_decl, have result_decl in gimplify_modify_expr) · f2896bc9
      	PR c++/44808
      	* gimplify.c (gimplify_modify_expr): Only SET_DECL_DEBUG_EXPR if
      	*from_p is VAR_DECL.
      
      	* g++.dg/opt/nrv16.C: New test.
      
      From-SVN: r161838
      Jakub Jelinek committed
    • tree.h (build_call_list): Remove. · cfe6dea2
      	* tree.h (build_call_list): Remove.
      	* tree.c (build_call_list): Remove.
      
      From-SVN: r161837
      Nathan Froyd committed
    • double-int.h (double_int_sub): Declare. · e22f7f31
      2010-07-05  Richard Guenther  <rguenther@suse.de>
      
      	* double-int.h (double_int_sub): Declare.
      	* double-int.c (double_int_sub): New function.
      	* dwarf2out.c (field_byte_offset): Use it.
      	* fixed-value.c (do_fixed_add): Likewise.
      	(do_fixed_multiply): Likewise.
      	(do_fixed_divide): Likewise.
      	* tree-predcom.c (add_ref_to_chain): Likewise.
      	(determine_roots_comp): Likewise.
      	* tree-ssa-loop-niter.c (derive_constant_upper_bound_ops): Likewise.
      
      From-SVN: r161836
      Richard Biener committed
    • double-int.h (double_int_sub): Declare. · bdc45386
      2010-07-05  Richard Guenther  <rguenther@suse.de>
      
      	* double-int.h (double_int_sub): Declare.
      	* double-int.c (double_int_sub): New function.
      	* dwarf2out.c (field_byte_offset): Use it.
      	* fixed-value.c (do_fixed_add): Likewise.
      	(do_fixed_multiply): Likewise.
      	(do_fixed_divide): Likewise.
      	* tree-predcom.c (add_ref_to_chain): Likewise.
      	(determine_roots_comp): Likewise.
      	* tree-ssa-loop-niter.c (derive_constant_upper_bound_ops): Likewise.
      
      From-SVN: r161835
      Richard Biener committed
    • vec.h (VEC_splice, [...]): New macros. · 989ea525
      gcc/
      	* vec.h (VEC_splice, VEC_safe_splice): New macros.  Add function
      	implementations.
      
      gcc/fortran/
      	* trans.h (gfc_conv_procedure_call): Take a VEC instead of a tree.
      	* trans-intrinsic.c (gfc_conv_intrinsic_funcall): Adjust for new
      	type of gfc_conv_procedure_call.
      	(conv_generic_with_optional_char_arg): Likewise.
      	* trans-stmt.c (gfc_trans_call): Likewise.
      	* trans-expr.c (gfc_conv_function_expr): Likewise.
      	(gfc_conv_procedure_call): Use build_call_vec instead of
      	build_call_list.
      
      From-SVN: r161834
      Nathan Froyd committed
    • arm.c (get_arm_condition_code): Remove CC_NOTBmode case. · 7ec6356e
      	* config/arm/arm.c (get_arm_condition_code): Remove CC_NOTBmode case.
      	* arm-modes.def (CC_NOTB): Don't define.
      	* config/arm/arm.md (arm_adddi3): Generate canonical RTL.
      	(adddi_sesidi_di, adddi_zesidi_di): Likewise.
      	(LTUGEU): New code_iterator.
      	(cnb, optab): New corresponding code_attrs.
      	(addsi3_carryin_<optab>): Renamed from addsi3_carryin.  Change pattern
      	to canonical form.  Operands 1 and 2 are commutative.  Parametrize
      	using LTUGEU.
      	(addsi3_carryin_shift_<optab>): Likewise.
      	(addsi3_carryin_alt2_<optab>): Renamed from addsi3_carryin_alt2.
      	Operands 1 and 2 are commutative.  Parametrize using LTUGEU.
      	(addsi3_carryin_alt1, addsi3_carryin_alt3): Remove.
      	(subsi3_compare): Renamed from subsi3_compare0_c.  Change CC_NOTB to
      	CC.
      	(arm_subsi3_insn): Allow constants for operand 0.
      	(compare_scc peephole for eq case): New.
      	(compare_scc splitters): Change CC_NOTB to CC.
      
      From-SVN: r161831
      Bernd Schmidt committed
    • tree-ssa-loop-im.c (for_each_index): Do not handle ALIGN_INDIRECT_REF. · 75421dcd
      2010-07-05  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-loop-im.c (for_each_index): Do not handle
      	ALIGN_INDIRECT_REF.
      	(gen_lsm_tmp_name): Likewise.
      	* tree-dump.c (dequeue_and_dump): Likewise.
      	* tree-pretty-print.c (dump_generic_node): Likewise.
      	(op_code_prio): Likewise.
      	(op_symbol_code): Likewise.
      	* tree.c (staticp): Likewise.
      	(build1_stat): Likewise.
      	* tree.h (INDIRECT_REF_P): Likewise.
      	* fold-const.c (maybe_lvalue_p): Likewise.
      	(operand_equal_p): Likewise.
      	* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Likewise.
      	(ao_ref_init_from_vn_reference): Likewise.
      	* tree-ssa-loop-ivopts.c (idx_find_step): Likewise.
      	(find_interesting_uses_address): Likewise.
      	* dwarf2out.c (loc_list_from_tree): Likewise.
      	* gimplify.c (gimplify_expr): Likewise.
      	* tree-eh.c (tree_could_trap_p): Likewise.
      	* emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
      	* cfgexpand.c (expand_debug_expr): Likewise.
      	* tree-ssa-pre.c (create_component_ref_by_pieces_1): Likewise.
      	* tree-ssa-loop-prefetch.c (idx_analyze_ref): Likewise.
      	* tree-cfg.c (verify_types_in_gimple_min_lval): Likewise.
      	* config/rs6000/rs6000 (rs6000_check_sdmode): Likewise.
      	* tree-ssa-operands.c (get_expr_operands): Likewise.
      	* expr.c (safe_from_p): Likewise.
      	(expand_expr_real_1): Likewise.  TER BIT_AND_EXPRs into MEM_REFs.
      	* tree-vect-data-refs.c (vect_setup_realignment): Build
      	BIT_AND_EXPR and MEM_REF instead of ALIGN_INDIRECT_REF.
      	* tree-vect-stmts.c (vectorizable_load): Likewise.
      	* tree.def (ALIGN_INDIRECT_REF): Remove.
      
      From-SVN: r161830
      Richard Guenther committed
    • re PR middle-end/44784 (Failed to build 403.gcc in SPEC CPU 2006) · 5d657263
      2010-07-05  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/44784
      	* tree-ssa-pre.c (bitmap_find_leader): Fix dominance check
      	for inserted stmts.
      	(find_or_generate_expression): Fix SCCVN insertion check.
      
      	* gcc.c-torture/compile/pr44784.c: New testcase.
      
      From-SVN: r161829
      Richard Guenther committed
    • e500crtsavg64gprctr.asm: Correct done label name. · 3cd0d4fa
      	* config/rs6000/e500crtsavg64gprctr.asm: Correct done label name.
      	* config/rs6000/e500crtsav64gprctr.asm: Likewise.
      	* config/rs6000/e500crtres64gprctr.asm: Likewise. Add FUNC_END
      	directives.
      
      From-SVN: r161828
      Nathan Sidwell committed
    • tree-vect-loop.c (vect_get_single_scalar_iteraion_cost): Skip statements that are not vectorized. · 9940b13c
      
      	* tree-vect-loop.c (vect_get_single_scalar_iteraion_cost): Skip
      	statements that are not vectorized.
      	* tree-vect-stmts.c (vect_get_load_cost): Update the value stored
      	in INSIDE_COST.
      
      From-SVN: r161827
      Ira Rosen committed
    • pt.c (tsubst): Early declare code = TREE_CODE (t) and use it throughout. · 394473ab
      2010-07-05  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* pt.c (tsubst): Early declare code = TREE_CODE (t) and use it
      	throughout.
      
      From-SVN: r161825
      Paolo Carlini committed
    • re PR bootstrap/44820 (ARM bootstrap failure: regno set but unused in arm_attr_length_move_neon) · e4dde839
      2010-07-05  Mikael Pettersson  <mikpe@it.uu.se>
      
      	PR bootstrap/44820
      	* config/arm/arm.c (arm_attr_length_move_neon): Delete regno.
      
      From-SVN: r161822
      Mikael Pettersson committed
    • tree-cfg.c (verify_gimple_return): Handle DECL_BY_REFERENCE RESULT_DECLs properly. · e3061843
      2010-07-05  Richard Guenther  <rguenther@suse.de>
      
      	* tree-cfg.c (verify_gimple_return): Handle DECL_BY_REFERENCE
      	RESULT_DECLs properly.
      
      From-SVN: r161821
      Richard Biener committed
    • costmodel-vect-31d.c: Remove. · 5bb12090
      
      	* gcc.dg/vect/costmodel/ppc/costmodel-vect-31d.c: Remove.
      	* gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c: Increase loop bound.
      	* gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c: Likewise.
      	* gcc.dg/vect/costmodel/ppc/costmodel-vect-68d.c: Remove.
      	* gcc.dg/vect/pr35821-altivec.c, gcc.dg/vect/pr35821-spu.c: Likewise.
      
      From-SVN: r161819
      Ira Rosen committed
    • re PR c++/22138 (Better error message for rejecting local template declaration.) · 6698dd72
      gcc/cp/
      2010-07-05  Shujing Zhao  <pearly.zhao@oracle.com>
      
              PR c++/22138
              * parser.c (cp_parser_primary_expression): Error if local template is
              declared.
      
      gcc/testsuite/
      2010-07-05  Shujing Zhao  <pearly.zhao@oracle.com>
      
              PR c++/22138
              * g++.dg/parse/template25.C: New.
      
      From-SVN: r161818
      Shujing Zhao committed
    • Daily bump. · d42d62c8
      From-SVN: r161817
      GCC Administrator committed
  2. 04 Jul, 2010 10 commits
    • Change 8bit divmod to HImode. · c2a78352
      gcc/
      
      2010-07-04  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR rtl-optimization/44695
      	* config/i386/i386.md (extract_code): Removed.
      	(<u>divmodqi4): Likewise.
      	(divmodqi4): New.
      	(udivmodqi4): Likewise.
      	(divmodhiqi3): Change div/mod to HImode and extend operand 2 to
      	HImode.
      	(udivmodhiqi3): Likewise.
      
      gcc/testsuite/
      
      2010-07-04  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR rtl-optimization/44695
      	* gcc.dg/torture/pr44695.c: New.
      
      From-SVN: r161813
      H.J. Lu committed
    • cgraphunit.c (init_cgraph): Only initialize dump file if it is not already initialized. · a05541a9
      
              * cgraphunit.c (init_cgraph): Only initialize dump file if it is not already
              initialized.
              * lto.c (read_cgraph_and_symbols): Dump cgraph before merging.
      
      From-SVN: r161811
      Jan Hubicka committed
    • gcc/ · f9621cc4
      	* optabs.h (reload_in_optab, reload_out_optab, code_to_optab)
      	(vcond_gen_code, vcondu_gen_code, movmem_optab, setmem_optab)
      	(cmpstr_optab, cmpstrn_optab, cmpmem_optab, sync_add_optab)
      	(sync_sub_optab, sync_ior_optab, sync_and_optab, sync_xor_optab)
      	(sync_nand_optab, sync_old_add_optab, sync_old_sub_optab)
      	(sync_old_ior_optab, sync_old_and_optab, sync_old_xor_optab)
      	(sync_old_nand_optab, sync_new_add_optab, sync_new_sub_optab)
      	(sync_new_ior_optab, sync_new_and_optab, sync_new_xor_optab)
      	(sync_new_nand_optab): Redefine as macros.
      	(sync_compare_and_swap, sync_lock_test_and_set, sync_lock_release):
      	Delete.
      	(direct_optab_index): New enum.
      	(direct_optab_d): New structure.
      	(direct_optab): New typedef.
      	(direct_optab_table): Declare.
      	(direct_optab_handler, set_direct_optab_handler): New functions.
      	(sync_compare_and_swap_optab, sync_lock_test_and_set_optab)
      	(sync_lock_release_optab): New macros.
      	* optabs.c (direct_optab_table): New variable.
      	(movcc_gen_code, vcond_gen_code, vcondu_gen_code): Delete.
      	(prepare_cmp_insn): Use direct_optab_handler for cmpmem_optab,
      	cmpstr_optab and cmpstrn_optab.
      	(emit_conditional_move): Likewise for movcc_optab.
      	(can_conditionally_move_p): Likewise for movcc_gen_code.
      	(init_insn_codes): Clear direct_optab_table.
      	(init_optabs): Don't initialize the new "direct optabs" here.
      	(get_vcond_icode): Use direct_optab_handler for vcondu_gen_code and
      	vcond_gen_code.
      	(expand_val_compare_and_swap): Likewise sync_compare_and_swap_optab.
      	(expand_bool_compare_and_swap): Likewise sync_compare_and_swap_optab.
      	(expand_compare_and_swap_loop): Likewise sync_compare_and_swap_optab.
      	(expand_sync_operation): Likewise other sync_*_optabs.
      	(expand_sync_fetch_operation): Likewise.  Rename sync_compare_and_swap
      	to sync_compare_and_swap_optab.
      	(expand_sync_lock_test_and_set): Use direct_optab_handler for
      	sync_lock_test_and_set and sync_compare_and_swap, adding "_optab"
      	to the names of both.
      	* builtins.c (expand_builtin_strcmp): Use direct_optab_handler for
      	cmpstr_optab and cmpstrn_optab.
      	(expand_builtin_lock_release): Likewise sync_lock_release.
      	* expr.c (movmem_optab, setmem_optab, cmpstr_optab, cmpstrn_optab)
      	(cmpmem_optab, sync_add_optab, sync_sub_optab, sync_ior_optab)
      	(sync_and_optab, sync_xor_optab, sync_nand_optab, sync_old_add_optab)
      	(sync_old_sub_optab, sync_old_ior_optab, sync_old_and_optab)
      	(sync_old_xor_optab, sync_old_nand_optab, sync_new_add_optab)
      	(sync_new_sub_optab, sync_new_ior_optab, sync_new_and_optab)
      	(sync_new_xor_optab, sync_new_nand_optab, sync_compare_and_swap)
      	(sync_lock_test_and_set, sync_lock_release): Delete.
      	(emit_block_move_via_movmem): Use direct_optab_handler for movmem_optab.
      	(emit_block_move_via_setmem): Use direct_optab_handler for setmem_optab.
      	* genopinit.c (optabs): Use set_direct_optab_handler for the new
      	macro optabs.
      	* omp-low.c (expand_omp_atomic_fetch_op): Update the type of
      	the "optab" local variable.  Use direct_optab_handler for optab and
      	sync_compare_and_swap_optab.
      	* reload1.c (reload_in_optab, reload_out_optab): Delete.
      	* targhooks.c (default_secondary_reload): Use direct_optab_handler for
      	reload_in_optab and reload_out_optab.
      	* config/alpha/alpha.c (alpha_secondary_reload): Likewise.
      	* config/frv/frv.c (frv_alloc_temp_reg): Likewise.
      	* config/pa/pa.c (pa_secondary_reload): Likewise.
      	* java/builtins.c (compareAndSwapInt_builtin): Use direct_optab_handler
      	for sync_compare_and_swap, renaming it to sync_compare_and_swap_optab.
      	(compareAndSwapLong_builtin, compareAndSwapObject_builtin): Likewise.
      	(VMSupportsCS8_builtin): Likewise.
      
      From-SVN: r161810
      Richard Sandiford committed
    • optabs.h (optab_handlers): Change type of insn_code to int. · 596455ce
      gcc/
      	* optabs.h (optab_handlers): Change type of insn_code to int.
      	(optab_handler, set_optab_handler, convert_optab_handler)
      	(set_convert_optab_handler): Treat the insn_code field as "insn_code -
      	CODE_FOR_nothing".
      	* optabs.c (optab_table, convert_optab_table): Always zero-initialize.
      	(init_insn_codes): Zero both the above arrays.
      	(init_optabs): Never call init_insn_codes first time around.
      
      From-SVN: r161809
      Richard Sandiford committed
    • optabs.h (optab_handler, [...]): Turn into inline functions that return an insn code. · 947131ba
      gcc/
      	* optabs.h (optab_handler, convert_optab_handler): Turn into
      	inline functions that return an insn code.
      	(set_optab_handler, set_convert_optab_handler): New functions.
      	* builtins.c: Replace optab_handler(X)->insn_code with
      	optab_handler or set_optab_handler thoughout.  Likewise
      	convert_optab_handler(X)->insn_code with convert_optab_handler
      	and set_convert_optab_handler.
      	* expmed.c, expr.c, genopinit.c, ifcvt.c, optabs.c, reload.c,
      	reload1.c, stmt.c, targhooks.c, tree-ssa-loop-prefetch.c,
      	tree-ssa-math-opts.c, tree-vect-data-refs.c, tree-vect-generic.c,
      	tree-vect-loop.c, tree-vect-patterns.c, tree-vect-slp.c,
      	tree-vect-stmts.c, config/m32c/m32c.c, config/rs6000/rs6000.c,
      	config/spu/spu.c: Likewise.
      
      From-SVN: r161808
      Richard Sandiford committed
    • re PR target/44531 ([SH] Multilib configuration does not work as expected on darwin) · 47e5ff44
      	PR target/44531
      	* config.gcc (sh*-*-*): Use regular expressions instead of
      	the 'i' modifier for sed substitutions.
      
      From-SVN: r161807
      Kaz Kojima committed
    • gfc-internals.texi (gfc_code): Document BLOCK and ASSOCIATE. · b8e0aa85
      2010-07-04  Daniel Kraft  <d@domob.eu>
      
      	* gfc-internals.texi (gfc_code): Document BLOCK and ASSOCIATE.
      
      From-SVN: r161806
      Daniel Kraft committed
    • re PR c++/16630 (missing type name in __PRETTY_FUNCTION__) · de8e41bc
      2010-07-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c++/16630
      	* g++.dg/ext/pretty3.C: New.
      
      From-SVN: r161805
      Manuel López-Ibáñez committed
    • gimple.c (gimple_body): Comments added. · abbd64b9
      2010-07-04  Jeremie Salvucci  <jeremie.salvucci@free.fr>
      
      	* gimple.c (gimple_body): Comments added.
      
      From-SVN: r161804
      Jeremie Salvucci committed