1. 11 May, 2012 17 commits
    • Merge upstream x32 support into boehm-gc · dddb75f3
      	Merge upstream changes
      	* include/private/gcconfig.h: (ALIGNMENT): Set to 4 for x32.
      	(CPP_WORDSZ): Set to 32 for x32.
      
      From-SVN: r187412
      H.J. Lu committed
    • alpha.c (alpha_emit_conditional_branch): Handle ORDERED and UNORDERED conditions. · d2b21f20
      	* config/alpha/alpha.c (alpha_emit_conditional_branch): Handle
      	ORDERED and UNORDERED conditions.
      
      From-SVN: r187411
      Uros Bizjak committed
    • tree-flow.h (referenced_var_check_and_insert): Remove. · 835c9db0
      2012-05-11  Richard Guenther  <rguenther@suse.de>
      
      	* tree-flow.h (referenced_var_check_and_insert): Remove.
      	(find_new_referenced_vars): Likewise.
      	* tree-dfa.c (referenced_var_check_and_insert): Make static.
      	(find_new_referenced_vars_1, find_new_referenced_vars): Remove.
      	* tree-inline.c (copy_bb): Use find_referenced_vars_in
      	instead of find_new_referenced_vars.
      	* gimple-fold.c (gimplify_and_update_call_from_tree): Likewise.
      
      From-SVN: r187408
      Richard Guenther committed
    • tree-pass.h (pass_rest_of_compilation, [...]): Remove. · 6083578b
      2012-05-11  Richard Guenther  <rguenther@suse.de>
      
      	* tree-pass.h (pass_rest_of_compilation,
      	pass_all_optimizations, pass_postreload, pass_all_early_optimizations):
      	Remove.
      	* passes.c (pass_all_optimizations, pass_postreload,
      	pass_all_early_optimizations): Make static.
      	(pass_rest_of_compilation): Likewise.  Make it an RTL_PASS.
      	* tree-phinodes.c (init_phinodes, fini_phinodes): Remove.
      	* tree-ssa.c (init_tree_ssa): Do not call init_phinodes.
      	(delete_tree_ssa): Do not call fini_phinodes.
      	* tree-flow.h (init_phinodes, fini_phinodes): Remove.
      
      From-SVN: r187407
      Richard Guenther committed
    • re PR libfortran/52537 (slow trim function) · 91077d4e
      2012-05-11  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/52537
      	* frontend-passes.c (optimize_op):  Change
      	old-style comparison operators to new-style, simplify
      	switch as a result.
      	(empty_string):  New function.
      	(get_len_trim_call):  New function.
      	(optimize_comparison):  If comparing to an empty string,
      	use comparison of len_trim to zero.
      	Use new-style comparison operators only.
      	(optimize_trim):  Use get_len_trim_call.
      
      2012-05-11  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/52537
      	* gfortran.dg/string_compare_4.f90:  New test.
      
      From-SVN: r187406
      Thomas Koenig committed
    • re PR c++/53209 (tree check ICE: expected tree_vec, have error_mark in… · 3feb96d2
      re PR c++/53209 (tree check ICE: expected tree_vec, have error_mark in comp_template_args_with_info, at cp/pt.c:7038)
      
      PR c++/53209
      * pt.c (tsubst_decl): Bail out if argvec is error_mark_node.
      
      From-SVN: r187404
      Alexandre Oliva committed
    • re PR c/53063 (encode group options in the .opt files) · 7d5a5747
      2012-05-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR 53063
      gcc/
      	* doc/options.texi (EnabledBy): Document
      	* opts.c: Include opts.h and options.h before tm.h.
      	(finish_options): Do not handle some sub-options here...
      	(common_handle_option): ... instead call common_handle_option_auto here.
      	* optc-gen.awk: Handle EnabledBy.
      	* opth-gen.awk: Declare common_handle_option_auto.
      	* common.opt (Wuninitialized): Use EnabledBy. Delete Init.
      	(Wmaybe-uninitialized): Likewise.
              (Wunused-but-set-variable): Likewise.
              (Wunused-function): Likewise.
              (Wunused-label): Likewise.
              (Wunused-value): Likewise.
              (Wunused-variable): Likewise.
              * opt-read.awk: Create opt_numbers array.
      ada/
      	* gcc-interface/misc.c (gnat_parse_file): Move before ...
      	(gnat_handle_option): ... this. Use handle_generated_option.
      c-family/
      	* c-opts.c (c_common_handle_option): Use handle_generated_option
      	to enable sub-options.
      fortran/
      	* options.c: Include diagnostics.h instead of
      	diagnostics-core.h.
      	(set_Wall): Do not see warn_unused here.
      	(gfc_handle_option): Set it here using handle_generated_option.
      
      From-SVN: r187403
      Manuel López-Ibáñez committed
    • re PR tree-optimization/53295 (Vectorizer support for non-constant strided loads… · 319e6439
      re PR tree-optimization/53295 (Vectorizer support for non-constant strided loads depends on gather support overwriting the data-ref with bogus data)
      
      2012-05-11  Richard Guenther  <rguenther@suse.de>
      
              PR tree-optimization/53295
      	* tree-data-ref.h (stride_of_unit_type_p): Handle non-constant
      	strides.
      	* tree-data-ref.c (dr_analyze_innermost): Allow non-constant
      	strides when analyzing data-references in a loop context.
      	* tree-vect-data-refs.c (vect_mark_for_runtime_alias_test): Reject
      	non-constant strides for now.
      	(vect_enhance_data_refs_alignment): Ignore data references
      	that are strided loads.
      	(vect_analyze_data_ref_access): Handle non-constant strides.
      	(vect_check_strided_load): Verify the data-reference is a load.
      	(vect_analyze_data_refs): Restructure to make strided load
      	support not dependent on gather support.
      	* tree-vect-stmts.c (vectorizable_load): Avoid useless work
      	when doing strided or gather loads.
      	* tree-vect-loop-manip.c (vect_vfa_segment_size): Use
      	integer_zerop to compare stride with zero.
      
      From-SVN: r187402
      Richard Guenther committed
    • Add RTM support to -march=native · 76a02e42
      	* config/i386/driver-i386.c (host_detect_local_cpu): Support
      	RTM.
      
      From-SVN: r187400
      H.J. Lu committed
    • Allow for ! comments in g++.dg/debug/dwarf2/nested-3.C · 52cd1f60
      	* g++.dg/debug/dwarf2/nested-3.C: Allow for ! comments.
      
      From-SVN: r187399
      Rainer Orth committed
    • re PR bootstrap/53300 (AIX bootstrap related to varpool patch) · 8fc17ddc
      
      	PR bootstrap/53300
      	* varpool.c (varpool_assemble_decl): Also output constat pool entries
      	that output_constant_pool missed.
      
      From-SVN: r187397
      Jan Hubicka committed
    • re PR c++/53305 (internal crash with variadic templates and decltype) · d1093817
      /cp
      2012-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53305
      	* pt.c (tsubst_copy: case PARM_DECL): Return error_mark_node if
      	tsubst_decl returns NULL_TREE.
      	* cxx-pretty-print.c (pp_cxx_simple_type_specifier): Handle
      	BOUND_TEMPLATE_TEMPLATE_PARM.
      
      /testsuite
      2012-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53305
      	* g++.dg/cpp0x/variadic132.C: New.
      
      From-SVN: r187396
      Paolo Carlini committed
    • re PR fortran/53310 (EOSHIFT leaks memory) · 5450a88f
      2012-05-11  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/53310
              * intrinsics/eoshift2.c (eoshift2): Do not leak
              memory by allocating it in the loop.
      
      From-SVN: r187395
      Tobias Burnus committed
    • Remove ChangeLog entry for change to gofrontend file. · c49f925d
      Remove ChangeLog entry for change to gofrontend file.  Changes to
      those files do not get ChangeLog entries.
      
      From-SVN: r187394
      Ian Lance Taylor committed
    • Fix misspelled macro in t-vxworks. · cc90dc84
      From-SVN: r187393
      Mingjie Xing committed
    • Fix misspelled macro in t-vxworks. · 8edbbbc3
      From-SVN: r187392
      Mingjie Xing committed
    • Daily bump. · 7eabddf0
      From-SVN: r187391
      GCC Administrator committed
  2. 10 May, 2012 22 commits
    • re PR target/53291 (Code generated for xtest is wrong) · 8d463d3a
      	PR target/53291
      	* config/i386/i386.md (xtest): Use NE condition in ix86_expand_setcc.
      
      From-SVN: r187387
      Uros Bizjak committed
    • i386.md (*movti_internal_rex64): Avoid MOVAPS size optimization for TARGET_AVX. · 63705578
      	* config/i386/i386.md (*movti_internal_rex64): Avoid MOVAPS size
      	optimization for TARGET_AVX.
      	(*movti_internal_sse): Ditto.
      	(*movdi_internal_rex64): Handle TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL.
      	(*movdi_internal): Ditto.
      	(*movsi_internal): Ditto.
      	(*movtf_internal): Avoid MOVAPS size optimization for TARGET_AVX.
      	(*movdf_internal_rex64): Ditto.
      	(*movfd_internal): Ditto.
      	(*movsf_internal): Ditto.
      	* config/i386/sse.md (mov<mode>): Handle TARGET_SSE_LOAD0_BY_PXOR.
      
      From-SVN: r187386
      Uros Bizjak committed
    • dwarf2out.c (add_byte_size_attribute): Handle variable reference as size attribute. · e580d8ee
      	* dwarf2out.c (add_byte_size_attribute) <RECORD_TYPE>: Handle variable
      	reference as size attribute.
      
      From-SVN: r187384
      Eric Botcazou committed
    • md.texi (Standard Names): Document probe_stack_address. · 7b84aac0
      	* doc/md.texi (Standard Names): Document probe_stack_address.
      	* explow.c (emit_stack_probe): Handle probe_stack_address.
      	* config/ia64/ia64.md (UNSPECV_PROBE_STACK_ADDRESS): New constant.
      	(UNSPECV_PROBE_STACK_RANGE): Likewise.
      	(probe_stack_address): New insn.
      	(probe_stack_range): Likewise.
      	* config/ia64/ia64.c: Include common/common-target.h.
      	(ia64_compute_frame_size): Mark r2 and r3 as used if static stack
      	checking is enabled.
      	(ia64_emit_probe_stack_range): New function.
      	(output_probe_stack_range): Likewise.
      	(ia64_expand_prologue): Invoke ia64_emit_probe_stack_range if static
      	builtin stack checking is enabled.
      	(rtx_needs_barrier) <UNSPEC_VOLATILE>: Handle UNSPECV_PROBE_STACK_RANGE
      	and UNSPECV_PROBE_STACK_ADDRESS.
      	(unknown_for_bundling_p): New predicate.
      	(group_barrier_needed): Use important_for_bundling_p.
      	(ia64_dfa_new_cycle): Use unknown_for_bundling_p.
      	(issue_nops_and_insn): Likewise.
      	(bundling): Likewise.
      	(final_emit_insn_group_barriers): Likewise.
      	* config/ia64/ia64-protos.h (output_probe_stack_range): Declare.
      	* config/ia64/hpux.h (STACK_CHECK_STATIC_BUILTIN): Define.
      	(STACK_CHECK_PROTECT): Likewise.
      	* config/ia64/linux.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
      
      Co-Authored-By: Tristan Gingold <gingold@adacore.com>
      
      From-SVN: r187383
      Eric Botcazou committed
    • ipa-inline.c (update_all_callee_keys): Remove. · f1016df4
      
      	* ipa-inline.c (update_all_callee_keys): Remove.
      	(inline_small_functions): Simplify priority updating.
      
      From-SVN: r187382
      Jan Hubicka committed
    • re PR c++/53158 ([C++11] Bogus error in loop condition) · 5a3c9cf2
      /cp
      2012-05-10  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53158
      	* cvt.c (ocp_convert): Error out early for void -> bool conversions.
      	* typeck.c (decay_conversion): Use error_at.
      	* call.c (build_integral_nontype_arg_conv, convert_like_real,
      	convert_arg_to_ellipsis, perform_implicit_conversion_flags,
      	initialize_reference): Likewise.
      	* cvt.c (warn_ref_binding): Add location_t parameter.
      	(cp_convert_to_pointer, convert_to_reference, ocp_convert,
      	convert_to_void, ): Use error_at and warning_at.
      
      /c-family
      2012-05-10  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53158
      	* c-common.c (warnings_for_convert_and_check): Use warning_at.
      
      /testsuite
      2012-05-10  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53158
      	* g++.dg/cpp0x/lambda/lambda-err2.C: New.
      	* g++.dg/parse/error26.C: Tweak dg-error column number.
      
      From-SVN: r187380
      Paolo Carlini committed
    • re PR c++/53301 (Spurious -Wzero-as-null-pointer-constant with reference arguments) · e5f13bf4
      /cp
      2012-05-10  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53301
      	* decl.c (check_default_argument): Fix typo (POINTER_TYPE_P
      	instead of TYPE_PTR_P) in zero-as-null-pointer-constant warning.
      
      /testsuite
      2012-05-10  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53301
      	* g++.dg/warn/Wzero-as-null-pointer-constant-6.C: New.
      
      From-SVN: r187377
      Paolo Carlini committed
    • random.tcc (seed_seq::generate): Cast max() operands to size_t to ensure a template match. · 58651854
      * include/bits/random.tcc (seed_seq::generate): Cast max()
      operands to size_t to ensure a template match.
      * include/std/bitset (_M_copy_from_ptr): Cast min() operands to
      size_t to ensure a template match.
      
      From-SVN: r187376
      DJ Delorie committed
    • cgraph.h (cgraph_remove_unreachable_nodes): Rename to ... · 04142cc3
      	* cgraph.h (cgraph_remove_unreachable_nodes): Rename to ...
      	(symtab_remove_unreachable_nodes): ... this one.
      	* ipa-cp.c (ipcp_driver): Do not remove unreachable nodes.
      	* cgraphunit.c (ipa_passes): Update.
      	* cgraphclones.c (cgraph_materialize_all_clones): Update.
      	* cgraph.c (cgraph_release_function_body): Only turn initial
      	into error mark when initial was previously set.
      	* ipa-inline.c (ipa_inline): Update.
      	* ipa.c: Include ipa-inline.h
      	(enqueue_cgraph_node, enqueue_varpool_node): Remove.
      	(enqueue_node): New function.
      	(process_references): Update.
      	(symtab_remove_unreachable_nodes): Cleanup.
      	* passes.c (execute_todo, execute_one_pass): Update.
      
      From-SVN: r187375
      Jan Hubicka committed
    • Fix typo in last Changelog entry. · 3af2e3b5
      From-SVN: r187374
      Vladimir Makarov committed
    • re PR rtl-optimization/53125 (Very slow compilation on SPARC) · e8d7e3e7
      2012-05-10  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR rtl-optimization/53125
      	* ira.c (ira): Call find_moveable_pseudos or
      	move_unallocated_pseudos if only ira_conflicts_p is true.
      
      From-SVN: r187373
      Vladimir Makarov committed
    • i386.md (*movoi_internal_avx): Handle TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL and… · e338c25c
      i386.md (*movoi_internal_avx): Handle TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL and TARGET_SSE_TYPELESS_STORES.
      
      	* config/i386/i386.md (*movoi_internal_avx): Handle
      	TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL and TARGET_SSE_TYPELESS_STORES.
      	(*movti_internal_rex64): Handle TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL.
      	(*movti_internal_sse): Ditto.
      	(*movtf_internal): Ditto.
      	* config/i386/sse.md (ssePSmode): New mode attribute.
      	(*move<mode>_internal): Use ssePSmode.
      	(*<sse>_movu<ssemodesuffix><avxsizesuffix>): Ditto.
      	(*<sse2>_movdqu<avxsizesuffix>): Ditto.
      	* config/i386/i386.c (standard_sse_constant_opcode): Do not handle
      	TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL here.
      
      From-SVN: r187372
      Uros Bizjak committed
    • Fix copyright date · 0b7ad29f
      From-SVN: r187371
      Eric Botcazou committed
    • gimplify.c (gimplify_decl_expr): For a TYPE_DECL, also gimplify the… · d400d17e
      gimplify.c (gimplify_decl_expr): For a TYPE_DECL, also gimplify the DECL_ORIGINAL_TYPE if it is present.
      
      	* gimplify.c (gimplify_decl_expr): For a TYPE_DECL, also gimplify the
      	DECL_ORIGINAL_TYPE if it is present.
      
      From-SVN: r187369
      Eric Botcazou committed
    • re PR target/53120 (ICE exposing strict_low_part / in/out operand thinko -fno-tree-sra) · b5ba5188
      	PR target/53120
      	* config/m32c/bitops.md (bset_qi): Change operand 2 from having
      	a "0" constraint to being a (match_dup 0).
      
      From-SVN: r187368
      Nick Clifton committed
    • stor-layout.c (byte_from_pos): Amend comment. · 8244f252
      2012-05-10  Richard Guenther  <rguenther@suse.de>
      
      	* stor-layout.c (byte_from_pos): Amend comment.
      
      From-SVN: r187367
      Richard Guenther committed
    • Always compile atomic builtin tests with $XCFLAGS · aaea76b3
      	PR other/53284
      	* acinclude.m4 (LIBAT_TEST_ATOMIC_BUILTIN): Add -O0 -S to CFLAGS
      	instead of overriding.
      	* configure: Regenerate.
      
      From-SVN: r187366
      Rainer Orth committed
    • Use i386-cpuinfo.c on all i386 targets · aca06c90
      	libgcc:
      	* config.host (i[34567]86-*-linux*, x86_64-*-linux*)
      	(i[34567]86-*-kfreebsd*-gnu, x86_64-*-kfreebsd*-gnu)
      	(i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*): Move
      	i386/t-cpuinfo ...
      	(i[34567]86-*-*, x86_64-*-*): ... here.
      
      	* config/i386/libgcc-bsd.ver (GCC_4.8.0): New version.
      	* config/i386/libgcc-sol2.ver (GCC_4.8.0): New version.
      
      	* config/i386/i386-cpuinfo.c: Rename to ...
      	* config/i386/cpuinfo.c: ... this.
      	* config/i386/t-cpuinfo (LIB2ADD): Reflect this.
      
      	* configure.ac (AC_CONFIG_HEADER): Call for auto-target.h.
      	(libgcc_cv_init_priority): New test.
      	* configure: Regenerate.
      	* config.in: New file.
      	* Makefile.in (clean): Rename config.h to auto-target.h.
      	(config.h): Likewise.
      	(stamp-h): Likewise.
      
      	* config/i386/cpuinfo.c (auto-target.h): Include.
      	(CONSTRUCTOR_PRIORITY): Define.
      	(__cpu_indicator_init): Use it.
      
      	gcc
      	* doc/extend.texi (X86 Built-in Functions, __builtin_cpu_init):
      	Document requirement to call in constructors.
      
      	* config/i386/i386.c: Update comments for i386-cpuinfo.c name
      	change.
      
      From-SVN: r187365
      Rainer Orth committed
    • expr.c (interpret_float_suffix): Add a guard. · 638d2065
      2012-05-10  Tristan Gingold  <gingold@adacore.com>
      
      	* expr.c (interpret_float_suffix): Add a guard.
      
      From-SVN: r187364
      Tristan Gingold committed
    • cuintp.c (UI_From_gnu): Remove TYPE_IS_SIZETYPE use. · 3ac8781c
      2012-05-10  Richard Guenther  <rguenther@suse.de>
      
      	ada/
      	* gcc-interface/cuintp.c (UI_From_gnu): Remove TYPE_IS_SIZETYPE use.
      
      	c-family/
      	* c-common.c (c_sizeof_or_alignof_type): Remove assert and
      	adjust commentary about TYPE_IS_SIZETYPE types.
      
      	* tree.h (TYPE_IS_SIZETYPE): Remove.
      	* fold-const.c (int_const_binop_1): Remove TYPE_IS_SIZETYPE use.
      	(extract_muldiv_1): Likewise.
      	* gimple.c (gtc_visit): Likewise.
      	(gimple_types_compatible_p): Likewise.
      	(iterative_hash_canonical_type): Likewise.
      	(gimple_canonical_types_compatible_p): Likewise.
      	* gimplify.c (gimplify_one_sizepos): Likewise.
      	* print-tree.c (print_node): Likewise.
      	* stor-layout.c (initialize_sizetypes): Do not set TYPE_IS_SIZETYPE.
      
      From-SVN: r187363
      Richard Guenther committed
    • Daily bump. · 26c72448
      From-SVN: r187362
      GCC Administrator committed
  3. 09 May, 2012 1 commit
    • compiler: Add -fgo-pkgpath option. · 097b12fb
      	* lang.opt: Add -fgo-pkgpath.
      	* go-lang.c (go_pkgpath): New static variable.
      	(go_prefix): New static variable.
      	(go_langhook_init): Pass go_pkgpath and go_prefix to
      	go_create_gogo.
      	(go_langhook_handle_option): Handle -fgo-pkgpath.  Change
      	-fgo-prefix handling to just set go_prefix.
      	* go-c.h (go_set_prefix): Don't declare.
      	(go_create_gogo): Add pkgpath and prefix to declaration.
      	* go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
      	to pkgpath.  Don't include the package name in the asm name.
      	* gccgo.texi (Invoking gccgo): Document -fgo-pkgpath.  Update the
      	docs for -fgo-prefix.
      
      From-SVN: r187356
      Ian Lance Taylor committed