1. 04 May, 2012 19 commits
  2. 03 May, 2012 21 commits
    • re PR c/51712 (-Wtype-limits should not trigger for types of implementation-defined signedness) · 50f305ca
      2012-05-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c/51712
      c-family/
      	* c-common.c (expr_original_type): New.
      	(shorten_compare): Do not warn for enumeration types.
      testsuite/
      	* c-c++-common/pr51712.c: New.
      
      From-SVN: r187125
      Manuel López-Ibáñez committed
    • flags.h (flag_permissive): Do not declare. · 0c3641b0
      2012-05-03  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      gcc/
      	* flags.h (flag_permissive): Do not declare.
      	* diagnostic.c (diagnostic_report_diagnostic): Handle fpermissive
      	option specially.
      	* toplev.c (flag_permissive): Do not define.
      	* c-tree.h (system_header_p): Delete unused.
      c-family/
      	* c.opt (fpermissive): Add Var(flag_permissive).
      
      From-SVN: r187123
      Manuel López-Ibáñez committed
    • Fix long double float miscompilations on sparc 64-bit. · d333c3eb
      	PR target/52684
      	* config/sparc/sparc.c (emit_soft_tfmode_libcall): If we pass a
      	MEM directly into a libcall, mark it's MEM_EXPR as addressable.
      	(sparc_emit_float_lib_cmp): Likewise.
      
      From-SVN: r187120
      David S. Miller committed
    • re PR target/53199 (__builtin_bswap64 and __builtin_bswap32 generate errors if -mcpu=power6) · 65d512d1
      [gcc]
      2012-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/53199
      	* config/rs6000/rs6000.md (bswapdi splitters): If
      	-mavoid-indexed-addresses (or -mcpu=power6 which sets it by
      	default) is used, generate an alternate sequence that does not
      	depend on using indexed addressing.
      
      [gcc/testsuite]
      2012-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/53199
      	* gcc.target/powwerpc/pr53199.c: New file.
      
      From-SVN: r187119
      Michael Meissner committed
    • gengtype.c (write_types): Fix warning message. · 88f4f86f
      	* gengtype.c (write_types): Fix warning message.
      	(write_local): Likewise.
      
      From-SVN: r187118
      Jason Merrill committed
    • testsuite_flags.in (cxxflags): Remove -ftrack-macro-expansion=0. · a85951f4
      2012-05-03  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* scripts/testsuite_flags.in (cxxflags): Remove
      	-ftrack-macro-expansion=0.
      
      From-SVN: r187117
      Benjamin Kosnik committed
    • dwarf2out.c (struct external_ref, [...]): New. · 05688bf7
      	* dwarf2out.c (struct external_ref, build_local_stub): New.
      	(hash_external_ref, external_ref_eq, lookup_external_ref): New.
      	(optimize_external_refs, optimize_external_refs_1): New.
      	(change_AT_die_ref): New.
      	(clone_as_declaration): Add DW_AT_signature when cloning a declaration.
      	(build_abbrev_table): Take the external refs hashtable.
      	(output_comp_unit): Get it from optimize_external_refs and pass it in.
      
      From-SVN: r187116
      Jason Merrill committed
    • re PR middle-end/53093 (tls/alias-1.c ICE, emutls) · f95f017c
      
      	PR middle-end/53093
      	* tree-emutls.c (new_emutls_decl): Fix handling of aliases.
      
      From-SVN: r187115
      Jan Hubicka committed
    • re PR middle-end/53106 (Benchmarks in SPEC CPU 2006 failed to build) · c2b6c111
      
      	PR middle-end/53106
      	* ipa.c (cgraph_remove_unreachable_nodes): Fix handling of clones.
      
      From-SVN: r187114
      Jan Hubicka committed
    • Add PR rtl-optimization/52543 to changelog. · ecfd6cec
      From-SVN: r187110
      Richard Sandiford committed
    • libatomic: Enable AM_MAINTAINER_MODE · fa3cd3c3
      From-SVN: r187108
      Richard Henderson committed
    • dwarf2out.c (die_struct): Add comdat_type_p flag. · d8acd563
      	* dwarf2out.c (die_struct): Add comdat_type_p flag.  Use it instead of
      	use_debug_types to discriminate the die_id union.
      	(print_die, assign_symbol_names, copy_decls_walk): Likewise.
      	(build_abbrev_table, output_die): Likewise.
      	(prune_unused_types_walk_attribs): Likewise.
      	(generate_type_signature, copy_declaration_context): Set it.
      	(remove_child_or_replace_with_skeleton): Set it.
      	(dwarf2out_start_source_file, dwarf2out_end_source_file): Don't
      	check use_debug_types.
      	(dwarf2out_finish): Do break_out_includes after .debug_types.
      
      From-SVN: r187107
      Jason Merrill committed
    • dwarf2out.c (modified_type_die): Use scope_die_for. · 0fd0752e
      	* dwarf2out.c (modified_type_die): Use scope_die_for.
      	(gen_type_die_with_usage, dwarf2out_finish): Likewise.
      	(uses_local_type_r, uses_local_type): New.
      	(scope_die_for): Keep a type that uses a local type in local scope.
      	Use get_context_die for namespace and type scope.
      
      From-SVN: r187106
      Jason Merrill committed
    • i386.c (ix86_code_end): Set DECL_IGNORED_P on the pc thunk. · 63aaf27c
      	* config/i386/i386.c (ix86_code_end): Set DECL_IGNORED_P on the
      	pc thunk.
      	* dwarf2out.c (output_aranges): Skip DECL_IGNORED_P functions.
      	(dwarf2out_finish): Likewise.
      
      From-SVN: r187105
      Jason Merrill committed
    • acinclude.m4 (LIBAT_TEST_ATOMIC_BUILTIN): Handle compilation failure in gcc_no_link path. · 0fe5522f
              * acinclude.m4 (LIBAT_TEST_ATOMIC_BUILTIN): Handle compilation
              failure in gcc_no_link path.
              * configure: Rebuild.
      
      From-SVN: r187102
      Richard Henderson committed
    • builtins.c (get_object_alignment_1): Return whether we can determine the… · 644ffefd
      builtins.c (get_object_alignment_1): Return whether we can determine the alignment or conservatively assume byte...
      
      2012-05-03  Martin Jambor  <mjambor@suse.cz>
      
      	* builtins.c (get_object_alignment_1): Return whether we can determine
      	the alignment or conservatively assume byte alignment.  Return the
      	alignment by reference.  Use get_pointer_alignment_1 for dereference
      	alignment.
      	(get_pointer_alignment_1): Return whether we can determine the
      	alignment or conservatively assume byte alignment.  Return the
      	alignment by reference.  Use get_ptr_info_alignment to get SSA name
      	alignment.
      	(get_object_alignment): Update call to get_object_alignment_1.
      	(get_object_or_type_alignment): Likewise, fall back to type alignment
      	only when it returned false.
      	(get_pointer_alignment): Update call to get_pointer_alignment_1.
      	* fold-const.c (get_pointer_modulus_and_residue): Update call to
      	get_object_alignment_1.
      	* ipa-prop.c (ipa_modify_call_arguments): Update call to
      	get_pointer_alignment_1.
      	* tree-sra.c (build_ref_for_offset): Likewise, fall back to the type
      	of MEM_REF or TARGET_MEM_REF only when it returns false.
      	* tree-ssa-ccp.c (get_value_from_alignment): Update call to
      	get_object_alignment_1.
      	(ccp_finalize): Use set_ptr_info_alignment.
      	* tree.h (get_object_alignment_1): Update declaration.
      	(get_pointer_alignment_1): Likewise.
      	* gimple-pretty-print.c (dump_gimple_phi): Use get_ptr_info_alignment.
      	(dump_gimple_stmt): Likewise.
      	* tree-flow.h (ptr_info_def): Updated comments of fields align and
      	misalign.
      	(get_ptr_info_alignment): Declared.
      	(mark_ptr_info_alignment_unknown): Likewise.
      	(set_ptr_info_alignment): Likewise.
      	(adjust_ptr_info_misalignment): Likewise.
      	* tree-ssa-address.c (copy_ref_info): Use new access functions to get
      	and set alignment of SSA names.
      	* tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Call
      	mark_ptr_info_alignment_unknown.
      	* tree-ssanames.c (get_ptr_info_alignment): New function.
      	(mark_ptr_info_alignment_unknown): Likewise.
      	(set_ptr_info_alignment): Likewise.
      	(adjust_ptr_info_misalignment): Likewise.
      	(get_ptr_info): Call mark_ptr_info_alignment_unknown.
      	* tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref):
      	Likewise.
      	(bump_vector_ptr): Likewise.
      	* tree-vect-stmts.c (create_array_ref): Use set_ptr_info_alignment.
      	(vectorizable_store): Likewise.
      	(vectorizable_load): Likewise.
      
      From-SVN: r187101
      Martin Jambor committed
    • mh-ppc-aix (LDFLAGS): Quote $(CC). · 445db530
              * config/mh-ppc-aix (LDFLAGS): Quote $(CC).
      
      From-SVN: r187100
      Olivier Hainque committed
    • basic-block.h (struct rtl_bb_info, [...]): Move in front of basic_block_def. · 3e8b732e
      	* basic-block.h (struct rtl_bb_info, struct gimple_bb_info): Move
      	in front of basic_block_def.
      	(struct basic_block_def): Make il.gimple the full struct, not a
      	pointer.
      	(__assert_gimple_bb_smaller_rtl_bb): Asserting typedef.
      
      	* cfgexpand.c (expand_gimple_basic_block): Clear all il.gimple
      	members.
      	* gimple-iterator.c (gimple_stmt_iterator): Don't special case
      	NULL il.gimple, which can't happen anymore.
      	* gimple.h (bb_seq): il.gimple can't be NULL.
      	(bb_seq_add): Ditto.
      	(set_bb_seq): Adjust.
      	(gsi_start_bb, gsi_last_bb): Tidy.
      	* lto-streamer-in.c (make_new_block): Don't zero members that
      	are zeroed already, don't allocate a gimple_bb_info.
      	* tree-cfg.c (create_bb): Don't allocate a gimple_bb_info.
      	(remove_bb): Clear all il.gimple members.
      	(gimple_verify_flow_info): Adjust for flat il.gimple.
      	* tree-flow-inline.h (phi_nodes, phi_nodes_ptr, set_phi_nodes): Adjust.
      
      	* coretypes.h (const_gimple_seq): Remove typedef.
      	* gimple.h (gimple_seq_first): Take gimple_seq.
      	(gimple_seq_first_stmt): Ditto.
      	(gimple_seq_last): Ditto.
      	(gimple_seq_last_stmt): Ditto.
      	(gimple_seq_empty_p): Ditto.
      
      From-SVN: r187099
      Michael Matz committed
    • re PR c++/53186 ([C++11] missing devirtualization for operators "final") · 1fa2969f
      /cp
      2012-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53186
      	* call.c (build_over_call): Handle final member functions
      	and class types.
      	(build_new_method_call_1): Do not handle here.
      
      /testsuite
      2012-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53186
      	* g++.dg/other/final2.C: New.
      
      From-SVN: r187097
      Paolo Carlini committed