1. 06 Jul, 2010 14 commits
    • re PR c++/44778 (? Behaviour change with pointers to members) · 627bc938
      	PR c++/44778
      	* init.c (build_offset_ref): If scope isn't dependent,
      	don't exit early.  Look at TYPE_MAIN_VARIANT.
      	* pt.c (tsubst_copy) [OFFSET_REF]: Do substitution.
      
      From-SVN: r161879
      Jason Merrill committed
    • lto-symtab.c (lto_cgraph_replace_node): Handle aliases. · e10aaec0
      
      	* lto-symtab.c (lto_cgraph_replace_node): Handle aliases.
      	(lto_symtab_resolve_can_prevail_p): Also alias of cgraph node
      	with body can prevail.
      	(lto_symtab_resolve_symbols): Use cgraph_get_node_or_alias.
      	(lto_symtab_merge_cgraph_nodes_1): Do not remove nodes from aliases.
      	* cgraph.c (cgraph_get_node_or_alias): New function.
      	* cgraph.h (cgraph_get_node_or_alias): Declare.
      
      From-SVN: r161877
      Jan Hubicka committed
    • i386.c (ix86_function_ms_hook_prologue): Enable x64 support. · 4bbf141c
      2010-07-06  Kai Tietz  <kai.tietz@onevision.com>
      
              * config/i386/i386.c (ix86_function_ms_hook_prologue): Enable x64
              support.
              (ix86_expand_prologue): Likewise.
              (ix86_handle_fndecl_attribute): Likewise.
              (ix86_asm_declare_function_name): New function for
              ASM_DECLARE_FUNCTION_NAME.
              * config/i386/i386.h (ASM_DECLARE_FUNCTION_NAME): New macro.
              * config/i386/cygming.h (ASM_DECLARE_FUNCTION_NAME): Removed.
              (SUBTARGET_ASM_DECLARE_FUNCTION_NAME): New macro.
              * config/i386/i386-protos.h (ix86_asm_declare_function_name): New.
              * doc/extend.texi: Adjust documentation about ms_hook_prologue
              attribute.
      
      From-SVN: r161876
      Kai Tietz committed
    • ms_hook_prologue.c: Add x64 ms_hook_prologue support. · 15a1f8c5
      2010-07-06  Kai Tietz  <kai.tietz@onevision.com>
      
              * gcc.target/i386/ms_hook_prologue.c: Add x64 ms_hook_prologue
              support.
              * gcc.target/i386/i386.exp: Likewise.
      
      From-SVN: r161875
      Kai Tietz committed
    • re PR lto/44195 (gcc.dg/lto/20100518 c_lto_20100518_0.o) · 6b0bcc9b
      	PR testsuite/44195
      	* gcc.dg/lto/20100518_0.c: Limit to x86.
      
      From-SVN: r161872
      Peter Bergner committed
    • i386.md (immediate_operand): New mode attribute. · 9aa5922d
      2010-07-06  Uros Bizjak  <ubizjak@gmail.com>
      
      	* config/i386/i386.md (immediate_operand): New mode attribute.
      	
      	(pro_epilogue_adjust_stack_<mode>_1): Macroize insn from
      	pro_epilogue_adjust_stack  and pro_epilogue_adjust_stack_rex64
      	using P mode iterator.
      	(pro_epilogue_adjust_stack_di_2): Rename from
      	pro_epilogue_adjust_stack_rex64_2.
      
      	* config/i386/i386.c (pro_epilogue_adjust_stack): Update for rename.
      
      2010-07-06  Uros Bizjak  <ubizjak@gmail.com>
      
      	* config/i386/i386.md (insv): Call gen_movdi_insv1 or gen_movsi_insv1
      	through gen_mov_insv_1 function pointer.
      	(fmod<mode>3): Call gen_truncxf<mode>2_i387_noop_unspec or
      	gen_truncxf<mode>2 through gen_truncxf function pointer.
      	(remainder<mode>3): Ditto.
      	(cmpstrnsi): Rename cmp_insn function pointer to gen_cmp.
      	(allocate_stack): Call gen_allocate_stack_worker_64 or
      	gen_allocate_stack_worker_32 through gen_allocate_stack_worker
      	function pointer.
      	(probe_stack): Call gen_iordi3 or gen_iorsi3 through gen_ior3
      	function pointer.
      
      2010-07-06  Uros Bizjak  <ubizjak@gmail.com>
      
      	* config/i386/i386.md (*add<mode>3_cconly_overflow): Use <g>
      	operand constraint instead of <r><i>m.
      
      From-SVN: r161870
      Uros Bizjak committed
    • re PR c/44828 (possible integer wrong code bug) · dfb88126
      2010-07-06  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/44828
      	* convert.c (convert_to_integer): Watch out for overflowing
      	MULT_EXPR as well.
      
      	* gcc.c-torture/execute/pr44828.c: New testcase.
      
      From-SVN: r161869
      Richard Guenther committed
    • lto-streamer.c (write_symbol_vec): Rename to ... · c5d1f058
      
      	* lto-streamer.c (write_symbol_vec): Rename to ...
      	(write_symbol) ... this one; write only symbol given and when
      	present in cache. Sanity check that what is defined is present
      	in cgraph/varpool with body/finalized decl.
      	(write_symbols_of_kind): Remove.
      	(produce_symtab): Take outputblock and sets; use cgraph/varpool/alias
      	pairs to produce symtab.
      	(produce_asm_for_decls): Update call of produce_symtab; don't do so
      	when doing WPA streaming.
      
      From-SVN: r161868
      Jan Hubicka committed
    • floatformat.h (floatformat_ieee_half_big): Add declaration. · d414dde9
      include/ChangeLog:
      
      2010-07-06  Ken Werner  <ken.werner@de.ibm.com>
      
      	* floatformat.h (floatformat_ieee_half_big): Add declaration.
      	(floatformat_ieee_half_little): Likewise.
      
      libiberty/ChangeLog:
      
      2010-07-06  Ken Werner  <ken.werner@de.ibm.com>
      
      	* floatformat.c (floatformat_ieee_half_big): New variable.
      	(floatformat_ieee_half_little): Likewise.
      
      From-SVN: r161867
      Ken Werner committed
    • gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Check that function is… · 6e4da084
      gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Check that function is still available to fold into.
      
      	* gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Check that
      	function is still available to fold into.
      
      From-SVN: r161866
      Jan Hubicka committed
    • cp-tree.h (impl_conv_void): New type. · ebeb2c24
      /cp
      2010-07-06  Shujing Zhao  <pearly.zhao@oracle.com>
      
              * cp-tree.h (impl_conv_void): New type.
              (convert_to_void): Adjust prototype.
              * cvt.c (convert_to_void): Use impl_conv_void, emit and adjust the
              diagnostic for easy translation. Change caller.
              * typeck.c: Update call to convert_to_void.
              * semantics.c: Likewise.
              * init.c: Likewise.
      
      /testsuite
      2010-07-06  Shujing Zhao  <pearly.zhao@oracle.com>
      
              * g++.dg/warn/noeffect2.C: Adjust expected warning.
              * g++.dg/warn/volatile1.C: Likewise.
              * g++.dg/template/warn1.C: Likewise.
      
      From-SVN: r161863
      Shujing Zhao committed
    • vec.h (FOR_EACH_VEC_ELT_REVERSE): New macro. · c021f10b
      gcc/
      	* vec.h (FOR_EACH_VEC_ELT_REVERSE): New macro.
      	* function.h (struct_function): Change type of local_decls field
      	to a VEC.
      	(add_local_decl): New function.
      	(FOR_EACH_LOCAL_DECL): New macro.
      	* cfgexpand.c (init_vars_expansion): Adjust for new type of
      	cfun->local_decls.
      	(estimated_stack_frame_size): Likewise.
      	(expand_used_vars): Likewise.
      	* cgraphbuild.c (build_cgraph_edges): Likewise.
      	* function.c (instantiate_decls_1): Likewise.
      	* ipa-struct-reorg.c (build_data_structure): Likewise.
      	* ipa-type-escape.c (analyze_function): Likewise.
      	* lto-streamer-in.c (input_function): Likewise.
      	* lto-streamer-out.c (output_function): Likewise.
      	* tree-ssa-live.c (remove_unused_locals): Likewise.
      	* tree.c (free_lang_data_in_decl): Likewise.
      	(find_decls_types_in_node): Likewise.
      	* omp-low.c (remove_exit_barrier): Likewise.
      	(expand_omp_taskreg): Likewise.
      	(list2chain): Rename to...
      	(vec2chain): ...this.  Adjust.
      	* cgraphunit.c (assemble_thunk): Call add_local_decl.
      	* tree-cfg.c (replace_by_duplicate_decl): Likewise.
      	* gimple-low.c (record_vars_into): Likewise.
      	* tree-inline.c (remap_decls): Likewise.
      	(declare_return_variable): Likewise.
      	(declare_inline_vars): Likewise.
      	(copy_forbidden): Adjust for new type of cfun->local_decls.
      	(add_local_variables): New function.
      	(expand_call_inline): Call it.
      	(tree_function_versioning): Likewise.
      
      gcc/cp/
      	* decl.c (cp_finish_decl): Call add_local_decl.
      	* optimize.c (clone_body): Adjust for new type of cfun->local_decls.
      
      From-SVN: r161862
      Nathan Froyd committed
    • Daily bump. · 979cc399
      From-SVN: r161861
      GCC Administrator committed
  2. 05 Jul, 2010 26 commits
    • re PR bootstrap/44825 (Failed to bootstrap) · 77641ca3
      	PR bootstrap/44825
      	* class.c (make_class_data): Cast result of VEC_length calls to int.
      
      From-SVN: r161856
      Nathan Froyd committed
    • Support AVX Programming Reference (June, 2010). · 4ee89d5f
      gcc/
      
      2010-07-05  H.J. Lu  <hongjiu.lu@intel.com>
      
      	AVX Programming Reference (June, 2010)
      	* config/i386/cpuid.h (bit_F16C): New.
      	(bit_RDRND): Likewise.
      	(bit_FSGSBASE): Likewise.
      
      	* config/i386/i386-builtin-types.def: Add
      	"DEF_FUNCTION_TYPE (UINT16)", function types for
      	float16 <-> float conversions and
      	"DEF_FUNCTION_TYPE (VOID, UINT64)".
      
      	* config/i386/i386-c.c (ix86_target_macros_internal): Support
      	OPTION_MASK_ISA_FSGSBASE, OPTION_MASK_ISA_RDRND and
      	OPTION_MASK_ISA_F16C.
      
      	* config/i386/i386.c (OPTION_MASK_ISA_FSGSBASE_SET): New.
      	(OPTION_MASK_ISA_RDRND_SET): Likewise.
      	(OPTION_MASK_ISA_F16C_SET): Likewise.
      	(OPTION_MASK_ISA_FSGSBASE_UNSET): Likewise.
      	(OPTION_MASK_ISA_RDRND_UNSET): Likewise.
      	(OPTION_MASK_ISA_F16C_UNSET): Likewise.
      	(OPTION_MASK_ISA_AVX_UNSET): Add OPTION_MASK_ISA_F16C_UNSET.
      	(ix86_handle_option): Handle OPT_mfsgsbase, OPT_mrdrnd and
      	OPT_mf16c.
      	(ix86_target_string): Support -mfsgsbase, -mrdrnd and -mf16c.
      	(pta_flags): Add PTA_FSGSBASE, PTA_RDRND and PTA_F16C.
      	(override_options): Handle them.
      	(ix86_valid_target_attribute_inner_p): Handle fsgsbase, rdrnd
      	and f16c.
      	(ix86_builtins): Add IX86_BUILTIN_RDFSBASE32,
      	IX86_BUILTIN_RDFSBASE64, IX86_BUILTIN_RDGSBASE32,
      	IX86_BUILTIN_RDGSBASE64, IX86_BUILTIN_WRFSBASE32,
      	IX86_BUILTIN_WRFSBASE64, IX86_BUILTIN_WRGSBASE32,
      	IX86_BUILTIN_WRGSBASE64, IX86_BUILTIN_RDRAND16,
      	IX86_BUILTIN_RDRAND32, IX86_BUILTIN_RDRAND64,
      	IX86_BUILTIN_CVTPH2PS, IX86_BUILTIN_CVTPH2PS256,
      	IX86_BUILTIN_CVTPS2PH and IX86_BUILTIN_CVTPS2PH256.
      	(bdesc_args): Likewise.
      	(ix86_expand_args_builtin): Handle V8SF_FTYPE_V8HI,
      	V4SF_FTYPE_V8HI, V8HI_FTYPE_V8SF_INT and V8HI_FTYPE_V4SF_INT.
      	(ix86_expand_special_args_builtin): Handle VOID_FTYPE_UINT64,
      	VOID_FTYPE_UNSIGNED, UNSIGNED_FTYPE_VOID and UINT16_FTYPE_VOID.
      	Handle non-memory store.
      
      	* config/i386/i386.h (TARGET_FSGSBASE): New.
      	(TARGET_RDRND): Likewise.
      	(TARGET_F12C): Likewise.
      
      	* config/i386/i386.md (UNSPEC_VCVTPH2PS): New.
      	(UNSPEC_VCVTPS2PH): Likewise.
      	(UNSPECV_RDFSBASE): Likewise.
      	(UNSPECV_RDGSBASE): Likewise.
      	(UNSPECV_WRFSBASE): Likewise.
      	(UNSPECV_WRGSBASE): Likewise.
      	(UNSPECV_RDRAND): Likewise.
      	(rdfsbase<mode>): Likewise.
      	(rdgsbase<mode>): Likewise.
      	(wrfsbase<mode>): Likewise.
      	(wrgsbase<mode>): Likewise.
      	(rdrand<mode>): Likewise.
      
      	* config/i386/i386.opt: Add -mfsgsbase, -mrdrnd and -mf16c.
      
      	* config/i386/immintrin.h (_rdrand_u16): New.
      	(_rdrand_u32): Likewise.
      	(_readfsbase_u32): Likewise.
      	(_readfsbase_u64): Likewise.
      	(_readgsbase_u32): Likewise.
      	(_readgsbase_u64): Likewise.
      	(_writefsbase_u32): Likewise.
      	(_writefsbase_u64): Likewise.
      	(_writegsbase_u32): Likewise.
      	(_writegsbase_u64): Likewise.
      	(_rdrand_u64): Likewise.
      	(_cvtsh_ss): Likewise.
      	(_mm_cvtph_ps): Likewise.
      	(_mm256_cvtph_ps): Likewise.
      	(_cvtss_sh): Likewise.
      	(_mm_cvtps_ph): Likewise.
      	(_mm256_cvtps_ph): Likewise.
      
      	* config/i386/sse.md (vcvtph2ps): New.
      	(*vcvtph2ps_load): Likewise.
      	(vcvtph2ps256): Likewise.
      	(vcvtps2ph): Likewise.
      	(*vcvtps2ph): Likewise.
      	(*vcvtps2ph_store): Likewise.
      	(vcvtps2ph256): Likewise.
      
      	* doc/extend.texi: Document FSGSBASE and RDRND built-in functions.
      
      	* doc/invoke.texi: Document -mfsgsbase, -mrdrnd and -mf16c.
      
      gcc/testsuite/
      
      2010-07-05  H.J. Lu  <hongjiu.lu@intel.com>
      
      	AVX Programming Reference (June, 2010)
      	* g++.dg/other/i386-2.C: Add -mfsgsbase -mrdrnd -mf16c.
      	* g++.dg/other/i386-3.C: Likewise.
      	* gcc.target/i386/sse-12.c: Likewise.
      
      	* gcc.target/i386/f16c-check.h: New.
      	* gcc.target/i386/rdfsbase-1.c: Likewise.
      	* gcc.target/i386/rdfsbase-2.c: Likewise.
      	* gcc.target/i386/rdgsbase-1.c: Likewise.
      	* gcc.target/i386/rdgsbase-2.c: Likewise.
      	* gcc.target/i386/rdrand-1.c: Likewise.
      	* gcc.target/i386/rdrand-2.c: Likewise.
      	* gcc.target/i386/rdrand-3.c: Likewise.
      	* gcc.target/i386/vcvtph2ps-1.c: Likewise.
      	* gcc.target/i386/vcvtph2ps-2.c: Likewise.
      	* gcc.target/i386/vcvtph2ps-3.c: Likewise.
      	* gcc.target/i386/vcvtps2ph-1.c: Likewise.
      	* gcc.target/i386/vcvtps2ph-2.c: Likewise.
      	* gcc.target/i386/vcvtps2ph-3.c: Likewise.
      	* gcc.target/i386/wrfsbase-1.c: Likewise.
      	* gcc.target/i386/wrfsbase-2.c: Likewise.
      	* gcc.target/i386/wrgsbase-1.c: Likewise.
      	* gcc.target/i386/wrgsbase-2.c: Likewise.
      
      	* gcc.target/i386/sse-13.c: Add -mfsgsbase -mrdrnd -mf16c.
      	(__builtin_ia32_vcvtps2ph): New.
      	(__builtin_ia32_vcvtps2ph256): Likewise.
      
      	* gcc.target/i386/sse-14.c: Add -mfsgsbase -mrdrnd -mf16c.
      	Test _cvtss_sh, _mm_cvtps_ph and _mm256_cvtps_ph.
      
      	* gcc.target/i386/sse-22.c: Add fsgsbase,rdrnd,f16c.
      	Test _cvtss_sh, _mm_cvtps_ph and _mm256_cvtps_ph.
      
      	* gcc.target/i386/sse-23.c (__builtin_ia32_vcvtps2ph): New.
      	(__builtin_ia32_vcvtps2ph256): Likewise.
      	Add fsgsbase,rdrnd,f16c.
      
      	* lib/target-supports.exp (check_effective_target_f16c): New.
      
      From-SVN: r161855
      H.J. Lu committed
    • Fix ChangeLog entry from my previous commit to include · 9e6d8a0d
      the "PR" prefix.
      
      From-SVN: r161854
      Steven G. Kargl committed
    • re PR bootstrap/44512 (--enable-build-with-cxx bootstrap fails in revision 160669) · 3341aeda
      	PR bootstrap/44512
      	* genenums.c (main): Output include of insn-constants.h
      	* Makefile.in (insn-enums.o): Depend on insn-constants.h.
      
      From-SVN: r161853
      Joern Rennecke committed
    • 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