gcc/testsuite

2012-05-03  Greta Yorsh  <Greta.Yorsh@arm.com>

       * gcc.dg/fixed-point/composite-type.c (dg-options): Add
       option -ftrack-macro-expansion=0.
       * gcc.dg/fixed-point/operator-bitwise.c (dg-options): Add
       option -ftrack-macro-expansion=0.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187081 138bc75d-0d04-0410-961f-82ee72b054a4
2012-05-03  Richard Guenther  <rguenther@suse.de>

	* gfortran.dg/pr52621.f90: Add -w to avoid diagnostic about
	unsupported prefetching support.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187082 138bc75d-0d04-0410-961f-82ee72b054a4
	PR target/53194
	* config/i386/i386-c.c (ix86_target_macros_internal): Don't
	define __ATOMIC_HLE_* macros here.
	(ix86_target_macros): But here, using cpp_define_formatted.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187084 138bc75d-0d04-0410-961f-82ee72b054a4
	PR target/53187
	* config/arm/arm.c (arm_select_cc_mode): If x has MODE_CC class
	mode, return that mode.

	* gcc.target/arm/pr53187.c: New test.
	* gcc.c-torture/compile/pr53187.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187085 138bc75d-0d04-0410-961f-82ee72b054a4
	PR debug/53174
	* tree-predcom.c (remove_stmt): Call reset_debug_uses on stmts being
	removed.

	* gcc.dg/pr53174.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187087 138bc75d-0d04-0410-961f-82ee72b054a4
	* gcc.target/i386/hle-xadd-rel-1.c: Match .byte 0xf3 instead of
	.byte 0xf2.
	* gcc.target/i386/hle-sub-rel-1.c: Likewise.
	* gcc.target/i386/hle-xchg-rel-1.c: Likewise.
	* gcc.target/i386/hle-add-rel-1.c: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187089 138bc75d-0d04-0410-961f-82ee72b054a4
	PR plugins/53126
	* gcc-ar.c (main): If GCC_EXEC_PREFIX is set in env,
	append program name to it and pass that as first argument
	to make_relative_prefix.  Always pass standard_libexec_prefix
	as last argument to make_relative_prefix.  If
	make_relative_prefix returns NULL, fall back to
	standard_libexec_prefix.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187090 138bc75d-0d04-0410-961f-82ee72b054a4
2012-05-03  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-pre.c (debug_bitmap_sets_for): New function.
	(union_contains_value): Remove.
	(vro_valid_in_sets): Likewise.
	(op_valid_in_sets): New function.
	(valid_in_sets): Use op_valid_in_sets.
	(insert_into_preds_of_block): Move dumping ...
	(do_regular_insertion): ... here.
	(do_partial_partial_insertion): ... and here.  Dump that
	we've found a partial partial redundancy.
	(insert): Dump the current insert iteration.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187092 138bc75d-0d04-0410-961f-82ee72b054a4
	* tree-switch-conversion.c (gen_inbound_check): Free post-dominance
	information as early as possible.  Update dominance info instead of
	discarding it.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187093 138bc75d-0d04-0410-961f-82ee72b054a4
	* gcc.target/i386/hle-cmpxchg-acq-1.c (dg-options): Add -march=x86-64.
	* gcc.target/i386/hle-xadd-acq-1.c (dg-options): Ditto.
	* gcc.target/i386/hle-cmpxchg-rel-1.c (dg-options): Ditto.
	* gcc.target/i386/hle-xadd-rel-1.c (dg-options): Ditto.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187094 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/alpha/elf.h (MAX_OFILE_ALIGNMENT): Remove.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187095 138bc75d-0d04-0410-961f-82ee72b054a4
2012-05-03  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-pre.c (valid_in_sets): Remove checking of trapping
	operations.
	(prune_clobbered_mems): Do it here.  Do not uselessly sort
	expressions.
	(compute_avail): Do not add possibly trapping operations to
	EXP_GEN if they might not be executed in the block.

	* gcc.dg/tree-ssa/ssa-pre-27.c: Remove XFAIL.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187096 138bc75d-0d04-0410-961f-82ee72b054a4
/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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187097 138bc75d-0d04-0410-961f-82ee72b054a4
	* 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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187099 138bc75d-0d04-0410-961f-82ee72b054a4
        * config/mh-ppc-aix (LDFLAGS): Quote $(CC).



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187100 138bc75d-0d04-0410-961f-82ee72b054a4
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.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187101 138bc75d-0d04-0410-961f-82ee72b054a4
        * acinclude.m4 (LIBAT_TEST_ATOMIC_BUILTIN): Handle compilation
        failure in gcc_no_link path.
        * configure: Rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187102 138bc75d-0d04-0410-961f-82ee72b054a4
compiler: Fix order of initialization bug with global var a, b = f().


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187103 138bc75d-0d04-0410-961f-82ee72b054a4
	* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187105 138bc75d-0d04-0410-961f-82ee72b054a4
	* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187106 138bc75d-0d04-0410-961f-82ee72b054a4