Tobias Burnus [Fri, 24 Aug 2012 07:43:23 +0000 (09:43 +0200)]
 
re PR fortran/54350 (FAIL: gfortran.dg/realloc_on_assign_*.f90  -O  (internal compiler error) at r190586)
2012-08-24  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54350
        * trans-array.c (free_ss_info): Free data.array.subscript.
        (gfc_free_ss): No longer free data.array.subscript.
        (walk_coarray): New function, moved from trans-intrinsic.c
        (gfc_conv_expr_descriptor): Walk array descriptor instead
        of taking passed "ss".
        (get_array_ctor_all_strlen, gfc_add_loop_ss_code,
        gfc_conv_array_parameter): Update call and cleanup ss handling.
        * trans-array.h (gfc_conv_expr_descriptor,
        gfc_conv_array_parameter): Update prototype.
        * trans-expr.c (gfc_conv_derived_to_class,
        conv_isocbinding_procedure, gfc_conv_procedure_call,
        gfc_trans_alloc_subarray_assign, gfc_trans_subcomponent_assign,
        gfc_trans_pointer_assignment, gfc_trans_arrayfunc_assign): Update
        call to gfc_conv_expr_descriptor and gfc_conv_array_parameter,
        and clean up.
        * trans-intrinsic.c (walk_coarray): Moved to trans-array.c
        (trans_this_image, trans_image_index, gfc_conv_intrinsic_rank
        gfc_conv_intrinsic_bound, gfc_conv_intrinsic_cobound,
        gfc_conv_intrinsic_len, gfc_conv_intrinsic_size,
        gfc_conv_intrinsic_sizeof, gfc_conv_intrinsic_storage_size,
        gfc_conv_intrinsic_transfer, gfc_conv_allocated,
        gfc_conv_associated, gfc_conv_intrinsic_loc,
        conv_intrinsic_move_alloc): Update calls.
        * trans-io.c (gfc_convert_array_to_string, set_internal_unit,
        gfc_trans_transfer): Ditto.
        * trans-stmt.c (gfc_conv_elemental_dependencies,
        gfc_trans_sync, trans_associate_var,
        gfc_trans_pointer_assign_need_temp): Ditto.
From-SVN: r190641
GCC Administrator [Fri, 24 Aug 2012 00:17:54 +0000 (00:17 +0000)]
 
Daily bump.
From-SVN: r190636
Richard Sandiford [Thu, 23 Aug 2012 20:40:07 +0000 (20:40 +0000)]
 
code-readable-4.c: New test.
gcc/testsuite/
	* gcc.target/mips/code-readable-4.c: New test.
From-SVN: r190630
Kenneth Zadeck [Thu, 23 Aug 2012 18:46:18 +0000 (18:46 +0000)]
 
alias.c (rtx_equal_for_memref_p): Convert constant cases.
2012-08-23  Kenneth Zadeck <zadeck@naturalbridge.com>
	* alias.c (rtx_equal_for_memref_p): Convert constant cases.
	* combine.c (find_single_use_1, mark_used_regs_combine): Convert
	to CASE_CONST_ANY.
 	* cse.c (exp_equiv_p, canon_reg, fold_rtx, cse_process_notes_1,
	count_reg_usage): Convert constant cases.
	* cselib.c (cselib_expand_value_rtx_1): Convert to
	CASE_CONST_ANY.
	(cselib_subst_to_values): Convert constant cases.
	* df-scan.c (df_uses_record): Ditto.
	* dse.c (const_or_frame_p): Convert case statements to explicit
	if-then-else using mode classes.
	* emit-rtl.c (verify_rtx_sharing, copy_insn_1): Convert constant cases.
	* explow.c (convert_memory_address_addr_space): Ditto.
	* gcse.c (want_to_gcse_p, oprs_unchanged_p, compute_transp): Ditto.
	* genattrtab.c (attr_copy_rtx, clear_struct_flag): Ditto.
	* ira.c (equiv_init_varies_p, contains_replace_regs,
	memref_referenced_p, rtx_moveable_p): Ditto.
	* jump.c (mark_jump_label_1): Remove constant cases.
	(rtx_renumbered_equal_p): Convert to CASE_CONST_UNIQUE.
	* loop-invariant.c (check_maybe_invariant, hash_invariant_expr_1,
	invariant_expr_equal_p): Convert to CASE_CONST_ANY.
	* postreload-gcse.c (oprs_unchanged_p): Convert constant cases.
	* reginfo.c (reg_scan_mark_refs): Ditto.
	* regrename.c (scan_rtx): Ditto.
	* reload1.c (eliminate_regs_1, elimination_effects,
	scan_paradoxical_subregs): Ditto.
	* reload.c (operands_match_p, subst_reg_equivs):  Ditto.
	* resource.c (mark_referenced_resources, mark_set_resources): Ditto.
	* rtlanal.c (rtx_unstable_p, rtx_varies_p, count_occurrences)
	(reg_mentioned_p, modified_between_p, modified_in_p)
	(volatile_insn_p, volatile_refs_p, side_effects_p, may_trap_p_1,
	inequality_comparisons_p, computed_jump_p_1): Ditto.
	* rtl.c (copy_rtx, rtx_equal_p_cb, rtx_equal_p): Ditto.
	* sched-deps.c (sched_analyze_2): Ditto.
	* valtrack.c (cleanup_auto_inc_dec): Ditto.
	* rtl.h: (CASE_CONST_SCALAR_INT, CASE_CONST_UNIQUE,
	CASE_CONST_ANY): New macros.
From-SVN: r190627
Jason Merrill [Thu, 23 Aug 2012 18:33:47 +0000 (14:33 -0400)]
 
* decl.c (compute_array_index_type): Use type_dependent_expression_p.
From-SVN: r190626
Julian Brown [Thu, 23 Aug 2012 15:42:03 +0000 (15:42 +0000)]
 
2012-08-23  Julian Brown  <julian@codesourcery.com>
	    Sandra Loosemore  <sandra@codesourcery.com>
	gcc/
	* config/mips/mips.md
	(UNSPEC_CASESI_DISPATCH): New.
	(MIPS16_T_REGNUM): New constant.
	(tablejump): Don't use for MIPS16_SHORT_JUMP_TABLES.
	(casesi): New.
	(casesi_internal_mips16_<mode>): New.
	* config/mips/mips.c (mips16_split_long_branches): Adjust test
	to ignore casesi jump tables.
	* config/mips/mips.h (TARGET_MIPS16_SHORT_JUMP_TABLES): Update
	comment.
	(CASE_VECTOR_MODE): Use SImode unconditionally.
	(CASE_VECTOR_SHORTEN_MODE): Define.
	(ASM_OUTPUT_ADDR_DIFF_ELT): Output word-sized addr_diff_elts
	when necessary for MIPS16_SHORT_JUMP_TABLES.
	gcc/testsuite/
	* gcc.target/mips/code-readable-1.c: Add -O to options.
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r190625
Georg-Johann Lay [Thu, 23 Aug 2012 15:41:03 +0000 (15:41 +0000)]
 
Makefile.in (fixed-funcs,fixed-conv-funcs): filter-out LIB2FUNCS_EXCLUDE before adding them to libgcc-objects, libgcc-s-objects.
	* Makefile.in (fixed-funcs,fixed-conv-funcs): filter-out
	LIB2FUNCS_EXCLUDE before adding them to libgcc-objects,
	libgcc-s-objects.
	* fixed-obj.mk: Only expand dependency if $o is not in
	LIB2FUNCS_EXCLUDE.
From-SVN: r190624
Arnaud Charlet [Thu, 23 Aug 2012 14:49:41 +0000 (14:49 +0000)]
 
c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only for pointers, and add missing Convention C pragma.
	* c-ada-spec.c (dump_generic_ada_node): Fix handling of name_only
	for pointers, and add missing Convention C pragma.
	(print_ada_struct_decl): Add missing aliased keyword.
	(dump_ads): Add pragma Ada_2005 and Style_Checks (Off).
From-SVN: r190623
Bill Schmidt [Thu, 23 Aug 2012 14:41:24 +0000 (14:41 +0000)]
 
rs6000.c (rs6000_density_test): Free loop body.
2012-08-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
	* config/rs6000/rs6000.c (rs6000_density_test): Free loop body.
From-SVN: r190622
H.J. Lu [Thu, 23 Aug 2012 13:37:11 +0000 (13:37 +0000)]
 
Add -da and remove -dm in GCC manual
	PR driver/54335
	* doc/invoke.texi: Add -da and remove -dm.
From-SVN: r190621
Richard Guenther [Thu, 23 Aug 2012 11:17:29 +0000 (11:17 +0000)]
 
tree-vect-stmts.c (vect_finish_stmt_generation): Update virtual SSA form.
2012-08-23  Richard Guenther  <rguenther@suse.de>
	* tree-vect-stmts.c (vect_finish_stmt_generation): Update
	virtual SSA form.
From-SVN: r190620
Jakub Jelinek [Thu, 23 Aug 2012 10:02:40 +0000 (12:02 +0200)]
 
tree.c (copy_node_stat): Clear DECL_STRUCT_FUNCTION.
	* tree.c (copy_node_stat): Clear DECL_STRUCT_FUNCTION.
fortran/
	* trans-decl.c (trans_function_start, generate_coarray_init,
	create_main_function, gfc_generate_constructors): Call
	allocate_struct_function instead of init_function_start.
From-SVN: r190619
Paolo Carlini [Thu, 23 Aug 2012 09:44:08 +0000 (09:44 +0000)]
 
re PR c++/20420 (Incorrectly Accepts double declarations)
/cp
2012-08-23  Paolo Carlini  <paolo.carlini@oracle.com>
	PR c++/20420
	* name-lookup.c (supplement_binding_1): Handle specially enums
	only in class templates.
	(validate_nonmember_using_decl): Enforce 7.3.3/10 about duplicate
	using declarations at function scope.
/testsuite
2012-08-23  Paolo Carlini  <paolo.carlini@oracle.com>
	PR c++/20420
	* g++.dg/lookup/using53.C: New.
From-SVN: r190618
Mingjie Xing [Thu, 23 Aug 2012 09:30:24 +0000 (09:30 +0000)]
 
Fix typo in gty.texi.
From-SVN: r190617
Jonathan Wakely [Thu, 23 Aug 2012 08:37:19 +0000 (08:37 +0000)]
 
re PR libstdc++/54354 (TODO extended iomanip manipulators std::get_time and std::put_time (C++11, section 27.7.5))
	PR libstdc++/54354
	* doc/xml/manual/status_cxx2011.xml: Note missing manipulators.
	* doc/html/*: Regenerate.
From-SVN: r190616
Georg-Johann Lay [Thu, 23 Aug 2012 08:11:56 +0000 (08:11 +0000)]
 
convert.c: Split into manageable parts:
	* gcc.dg/fixed-point/convert.c: Split into manageable parts:
	* gcc.dg/fixed-point/convert-1.c: New.
	* gcc.dg/fixed-point/convert-2.c: New.
	* gcc.dg/fixed-point/convert-3.c: New.
	* gcc.dg/fixed-point/convert-4.c: New.
	* gcc.dg/fixed-point/convert-float-1.c: New.
	* gcc.dg/fixed-point/convert-float-2.c: New.
	* gcc.dg/fixed-point/convert-float-3.c: New.
	* gcc.dg/fixed-point/convert-float-4.c: New.
	* gcc.dg/fixed-point/convert-accum-neg.c: New.
	* gcc.dg/fixed-point/convert-sat.c: New.
	* gcc.dg/fixed-point/convert.h: New.
From-SVN: r190615
Richard Guenther [Thu, 23 Aug 2012 07:38:54 +0000 (07:38 +0000)]
 
tree-ssa-loop-manip.c (add_exit_phis_var): Allow virtual operands.
2012-08-23  Richard Guenther  <rguenther@suse.de>
	* tree-ssa-loop-manip.c (add_exit_phis_var): Allow virtual operands.
	(find_uses_to_rename_use): Likewise.
	(find_uses_to_rename_bb): Likewise.
	(find_uses_to_rename_stmt): Walk over all operands.
From-SVN: r190614
Ian Lance Taylor [Thu, 23 Aug 2012 04:58:30 +0000 (04:58 +0000)]
 
compiler: Comparisons return untyped boolean value.
From-SVN: r190612
Ian Lance Taylor [Thu, 23 Aug 2012 00:20:48 +0000 (00:20 +0000)]
 
compiler: Remove old handling of unsafe.Pointer in type assertions.
Fixes issue 17.
From-SVN: r190608
GCC Administrator [Thu, 23 Aug 2012 00:18:41 +0000 (00:18 +0000)]
 
Daily bump.
From-SVN: r190607
Oleg Endo [Wed, 22 Aug 2012 22:52:17 +0000 (22:52 +0000)]
 
re PR target/54089 ([SH] Refactor shift patterns)
	PR target/54089
	* config/sh/predicates (p27_rshift_count_operand,
	not_p27_rshift_count_operand): New predicates.
	* config/sh/sh.c (sh_ashlsi_clobbers_t_reg_p,
	sh_lshrsi_clobbers_t_reg_p, sh_dynamicalize_shift_p): Handle special
	case when shift amount is 31.
	(gen_ashift): Emit gen_shlr instead of gen_lshrsi3_m.
	* config/sh/sh.md (ashlsi3_d): Set type to 'dyn_shift' instead
	of 'arith'.
	(ashlsi_c): Rename to shll.  Adapt calls to gen_ashlsi_c throughout
	the file.
	(lshrsi3): Remove clobber from expander.  Use shift_count_operand
	instead of nonmemory_operand predicate for second operand.  Add
	handling of case lshrsi3_n_clobbers_t.
	(lshrsi3_k): Use p27_rshift_count_operand for second operand.
	(lshrsi3_d): Make insn_and_split.  Split dynamic shift to constant
	shift sequences if beneficial.
	(lshrsi3_n): Make insn_and_split.  Split constant shift sequence to
	dynamic shift if beneficial.
	(lshrsi3_n_clobbers_t): New insn_and_split.
	(lshrsi3_m): Delete.
	PR target/54089
	* gcc.target/sh/pr54089-2.c: New.
From-SVN: r190603
Steven Bosscher [Wed, 22 Aug 2012 21:38:03 +0000 (21:38 +0000)]
 
tracer.c (mark_bb_seen): Use SBITMAP_SIZE.
	* tracer.c (mark_bb_seen): Use SBITMAP_SIZE.
	* alias.c (MAX_ALIAS_LOOP_PASSES): Update comment with rationale,
	or rather a lack thereof.
	(init_alias_analysis): Propagate the latest information across
	the CFG in topological order to propagate as far as possible in
	each iteration.  Ignore debug insns.
From-SVN: r190602
H.J. Lu [Wed, 22 Aug 2012 19:46:28 +0000 (19:46 +0000)]
 
Add -mlong-double-64/-mlong-double-80 to i386
gcc/
	* doc/invoke.texi: Document -mlong-double-64/-mlong-double-80.
	* config/i386/i386.c (flag_opts): Add -mlong-double-64.
	(TARGET_HAS_BIONIC): Default long double to 64-bit for Bionic.
	* config/i386/i386.h (LONG_DOUBLE_TYPE_SIZE): Use 64 if
	TARGET_LONG_DOUBLE_64 is true.
	(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New macro.
	(WIDEST_HARDWARE_FP_SIZE): Defined to 80.
	* config/i386/i386.opt (mlong-double-80): New option.
	(mlong-double-64): Likewise.
	* config/i386/i386-c.c (ix86_target_macros): Define
	__LONG_DOUBLE_64__ for TARGET_LONG_DOUBLE_64.
gcc/testsuite/
	* gcc.target/i386/long-double-64-1.c: New file.
	* gcc.target/i386/long-double-64-2.c: Likewise.
	* gcc.target/i386/long-double-64-3.c: Likewise.
	* gcc.target/i386/long-double-64-4.c: Likewise.
	* gcc.target/i386/long-double-80-1.c: Likewise.
	* gcc.target/i386/long-double-80-2.c: Likewise.
	* gcc.target/i386/long-double-80-3.c: Likewise.
	* gcc.target/i386/long-double-80-4.c: Likewise.
	* gcc.target/i386/long-double-80-5.c: Likewise.
	* gcc.target/i386/long-double-80-6.c: Likewise.
	* gcc.target/i386/long-double-80-7.c: Likewise.
libgcc/
	* config/i386/t-linux (HOST_LIBGCC2_CFLAGS): New.
From-SVN: r190599
H.J. Lu [Wed, 22 Aug 2012 19:43:58 +0000 (19:43 +0000)]
 
Replace REAL_VALUE_TO_TARGET_LONG_DOUBLE with real_to_target
	PR target/54347
	* config/i386/i386.c (ix86_split_to_parts): Replace
	REAL_VALUE_TO_TARGET_LONG_DOUBLE with real_to_target.
From-SVN: r190598
Richard Guenther [Wed, 22 Aug 2012 15:11:26 +0000 (15:11 +0000)]
 
tree-vectorizer.c (vectorize_loops): Do not call mark_virtual_operands_for_renaming.
2012-08-22  Richard Guenther  <rguenther@suse.de>
	* tree-vectorizer.c (vectorize_loops): Do not call
	mark_virtual_operands_for_renaming.
	* tree-vect-slp.c (vect_slp_transform_bb): Likewise.
	Do not update SSA form here.
From-SVN: r190596
Dodji Seketeli [Wed, 22 Aug 2012 13:50:58 +0000 (13:50 +0000)]
 
Make TREE_NOTHROW use the base.nothrow_flag again
While working on something else, I noticed that debug_tree (vec), when
vec is a TREE_VEC was crashing because TREE_NOTHROW was asserting that
its argument is not a TREE_VEC, so print_node would crash.
It turned out that TREE_NOTHROW was accidentally modified by this
change set:
commit 
87d8f7b67c6a36c37e48e298f26e693520099b1e
Author: rguenth <rguenth@
138bc75d-0d04-0410-961f-
82ee72b054a4>
Date:   Tue Aug 21 10:03:38 2012 +0000
    2012-08-21  Richard Guenther  <rguenther@suse.de>
    	cp/
    	* cp-tree.h (TREE_INDIRECT_USING): Use TREE_LANG_FLAG_0 accessor.
    	(ATTR_IS_DEPENDENT): Likewise.
    	(ARGUMENT_PACK_INCOMPLETE_P): Use TREE_ADDRESSABLE instead of
    	TREE_LANG_FLAG_0 on TREE_VECs.
    	* tree.h (struct tree_base): Add union to make it possible to
    	re-use the upper 4 bytes for tree codes that do not need as
    	many flags as others.  Move visited and default_def_flag to
    	common bits section in exchange for saturating_flag and
    	unsigned_flag.  Add SSA name version and tree vec length
    	fields here.
    	(struct tree_vec): Remove length field here.
    	(struct tree_ssa_name): Remove version field here.
    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190558 
138bc75d-0d04-0410-961f-
82ee72b054a4
Richard Guenther pre-approved the reverting of the TREE_NOTHROW change
line.
Tested on x86_64-unknown-linux-gnu against master and applied to
trunk.
gcc/
	* tree.h (TREE_NOTHROW): Use the base.nothrow_flag.
From-SVN: r190595
Richard Guenther [Wed, 22 Aug 2012 13:17:26 +0000 (13:17 +0000)]
 
re PR tree-optimization/46590 (long compile time with -O2 and many loops)
2012-08-22  Richard Guenther  <rguenther@suse.de>
	PR tree-optimization/46590
	* tree-ssa-alias.h (get_continuation_for_phi): Add alias query
	counter output argument.
	(walk_non_aliased_vuses): Add alias query counter argument
	to the walker callback.
	* tree-ssa-alias.c (maybe_skip_until): Add alias query counter
	output argument and count alias queries.
	(get_continuation_for_phi_1): Likewise.
	(get_continuation_for_phi): Likewise.
	(walk_non_aliased_vuses): Add alias query counter argument
	to the walker callback and allow it to abort the walk by
	returning -1.
	* tree-ssa-pre.c (translate_vuse_through_block): Adjust.
	* tree-ssa-sccvn.c (vn_reference_lookup_2): Add alias query
	counter parmeter, abort walk if that is bigger than
	--param sccvn-max-alias-queries-per-access.
	* params.def (sccvn-max-alias-queries-per-access): New param.
	* doc/invoke.texi (sccvn-max-alias-queries-per-access): Document.
From-SVN: r190594
Richard Guenther [Wed, 22 Aug 2012 13:14:32 +0000 (13:14 +0000)]
 
tree-ssa-loop-ch.c (copy_loop_headers): Remove redundant checking.
2012-08-22  Richard Guenther  <rguenther@suse.de>
	* tree-ssa-loop-ch.c (copy_loop_headers): Remove redundant checking.
	* tree-into-ssa.c (initialize_flags_in_bb): Use gcc_checking_assert
	instead of gcc_assert.
	(mark_block_for_update): Likewise.
	(add_new_name_mapping): Likewise.
	(mark_def_sites): Likewise.
	(insert_phi_nodes_for): Likewise.
	(rewrite_debug_stmt_uses): Likewise.
	(rewrite_stmt): Likewise.
	(maybe_register_def): Likewise.
	(rewrite_update_phi_arguments): Likewise.
	(rewrite_update_enter_block): Likewise.
	(mark_def_interesting): Likewise.
	(prepare_def_site_for): Likewise.
	(insert_updated_phi_nodes_for): Likewise.
From-SVN: r190593
Jakub Jelinek [Wed, 22 Aug 2012 13:00:13 +0000 (15:00 +0200)]
 
tree-vect-loop.c (vect_transform_loop): Initialize check_profitability to false.
	* tree-vect-loop.c (vect_transform_loop): Initialize
	check_profitability to false.
	* tree-predcom.c (try_combine_chains): Free the worklist vector
	at the end.
From-SVN: r190592
Marc Glisse [Wed, 22 Aug 2012 12:29:23 +0000 (14:29 +0200)]
 
re PR tree-optimization/54317 (FAIL: c45532m c45532n c45532o c45532p)
2012-08-22  Marc Glisse  <marc.glisse@inria.fr>
	PR tree-optimization/54317
gcc/
	* tree-vrp.c (extract_range_from_binary_expr_1): Test for
	double_int overflow.
	Remove dead tests.
gcc/testsuite/
	* gcc.dg/tree-ssa/vrp79.c: New testcase.
From-SVN: r190591
Jakub Jelinek [Wed, 22 Aug 2012 09:19:39 +0000 (11:19 +0200)]
 
tree-vrp.c (find_assert_locations): Skip also edges from the entry block.
	* tree-vrp.c (find_assert_locations): Skip also edges
	from the entry block.
	* tree-vect-loop-manip.c (slpeel_make_loop_iterate_ntimes): Call
	free_stmt_vec_info on orig_cond after gsi_removing it.
	* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Always
	free body_cost_vec vector.
	(vect_analyze_data_refs): If gather is unsuccessful,
	free_data_ref (dr).
	* tree-inline.c (tree_function_versioning): Free
	old_transforms_to_apply vector.
From-SVN: r190590
Steven Bosscher [Wed, 22 Aug 2012 08:59:56 +0000 (08:59 +0000)]
 
tree-ssa-coalesce.c (struct ssa_conflicts_d): Make contents of this a VEC and add a bitmap obstack.
	* tree-ssa-coalesce.c (struct ssa_conflicts_d): Make contents
	of this a VEC and add a bitmap obstack.
	(ssa_conflicts_new): Allocate the obstack and grow the VEC cleared
	to the right size.
	(ssa_conflicts_delete): Free the VEC and release the obstack.
	(ssa_conflicts_test_p, ssa_conflicts_test_p, ssa_conflicts_add_one,
	ssa_conflicts_merge, ssa_conflicts_dump): Update for above changes.
	(truct live_track_d): Add another bitmap obstack here.
	(new_live_track): Initialize it and use it for all bitmaps.
	(delete_live_track): Don't free the bitmaps one at a time, just
	release the obstack.
	(create_outofssa_var_map): Fix to conform to GCC code style rules.
From-SVN: r190589
Joseph Myers [Wed, 22 Aug 2012 08:36:23 +0000 (09:36 +0100)]
 
Makefile.in (vis_hide, [...]): Do not make definitions depend on --enable-shared.
	* Makefile.in (vis_hide, gen-hide-list): Do not make definitions
	depend on --enable-shared.
	($(lib1asmfuncs-o)): Use %.vis files independent of
	--enable-shared.
	* static-object.mk ($(base)$(objext), $(base).vis)
	($(base)_s$(objext)): Use same rules for visibility handling as in
	shared-object.mk.
From-SVN: r190588
Tobias Burnus [Wed, 22 Aug 2012 05:54:24 +0000 (07:54 +0200)]
 
trans-expr.c (gfc_copy_class_to_class, [...]): Free loop and ss data.
2012-08-22  Tobias Burnus  <burnus@net-b.de>
        * trans-expr.c (gfc_copy_class_to_class,
        gfc_trans_arrayfunc_assign): Free loop and ss data.
        * trans-intrinsic.c (gfc_trans_arrayfunc_assign): Free ss data.
From-SVN: r190586
Nathan Froyd [Wed, 22 Aug 2012 02:23:19 +0000 (02:23 +0000)]
 
constraints.md: New file.
	* config/m32c/constraints.md: New file.
	* config/m32c/t-m32c (MD_FILES): Add constraints.
	* config/m32c/m32c-protos.h (m32c_const_ok_for_constraint_p): Delete.
	(m32c_extra_address_constraint, m32c_extra_memory_constraint): Delete.
	(m32c_reg_class_from_constraint): Delete.
	(m32c_extra_constraint_p, m32c_extra_constraint_p2): Delete.
	(m32c_matches_constraint_p): Declare.
	* config/m32c/m32c.h (CONSTRAINT_LEN): Delete.
	(REG_CLASS_FROM_CONSTRAINT): Delete.
	(CONST_OK_FOR_CONSTRAINT_P): Delete.
	(CONST_DOUBLE_OK_FOR_CONSTRAINT_P): Delete.
	(EXTRA_CONSTRAINT_STR): Delete.
	(EXTRA_MEMORY_CONSTRAINT, EXTRA_ADDRESS_CONSTRAINT): Delete.
	* config/m32c/m32c.c: Include tm-constrs.h
	(m32c_reg_class_from_constraint): Delete.
	(m32c_const_ok_for_constraint_p): Delete.
	(m32c_extra_constraint_p2): Rename to...
	(m32c_matches_constraint_p): ...this.  Make it return bool.  Tweak
	formatting.
	(m32c_extra_constraint_p): Delete.
	(m32c_extra_address_constraint, m32c_extra_memory_constraint): Delete.
	(m32c_split_move): Use satisfies_constraint_Ss.
	* config/m32c/predicates.md (memsym_operand): Use
	satisfies_constraint_Si.
	(memimmed_operand): Use satisfies_constraint_Sp.
	(m32c_psi_scale, m32c_1bit8_operand): Use satisfies_constraint_Ilb.
	(m32c_1bit16_operand): Use satisfies_constraint_Ilw.
	(m32c_1mask8_operand): Use satisfies_constraint_ImB.
	(m32c_1mask16_operand): Use satisfies_constraint_Imw.
From-SVN: r190585
Nathan Froyd [Wed, 22 Aug 2012 02:21:17 +0000 (02:21 +0000)]
 
mep.h (REG_CLASS_FROM_CONSTRAINT): Delete.
	* config/mep/mep.h (REG_CLASS_FROM_CONSTRAINT): Delete.
	(CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
	(CONSTRAINT_LEN, EXTRA_CONSTRAINT): Delete.
	* config/mep/mep.c (mep_reg_class_from_constraint): Delete.
	(mep_const_ok_for_letter_p, mep_extra_constraint): Delete.
	* config/mep/mep-protos.h (mep_reg_class_from_constraint): Delete.
	(mep_const_ok_for_letter_p, mep_extra_constraint): Delete.
From-SVN: r190584
GCC Administrator [Wed, 22 Aug 2012 00:18:07 +0000 (00:18 +0000)]
 
Daily bump.
From-SVN: r190583
Oleg Endo [Tue, 21 Aug 2012 23:38:47 +0000 (23:38 +0000)]
 
sh.md (cmpeqdi_t, [...]): Convert to multi-line asm output strings.
	* config/sh/sh.md (cmpeqdi_t, cmpgtdi_t, cmpgedi_t, cmpgeudi_t,
	cmpgtudi_t, *movsicc_t_false, *movsicc_t_true, divsi_inv20, negsi_cond,
	truncdihi2, ic_invalidate_line_i, ic_invalidate_line_sh4a,
	ic_invalidate_line_media, movdf_i4, calli_pcrel, call_valuei,
	call_valuei_pcrel, sibcalli_pcrel, sibcall_compact,
	sibcall_valuei_pcrel, sibcall_value_compact, casesi_worker_1,
	casesi_worker_2, bandreg_m2a, borreg_m2a, bxorreg_m2a, sp_switch_1,
	sp_switch_2, stack_protect_set_si, stack_protect_set_si_media,
	stack_protect_set_di_media, stack_protect_test_si,
	stack_protect_test_si_media, stack_protect_test_di_media): Convert to
	multi-line asm output strings.
	(divsi_inv_qitable, divsi_inv_hitable): Use single-alternative asm
	output.
	(*andsi3_bclr, rotldi3_mextr, rotrdi3_mextr, calli, call_valuei_tbr_rel,
	movml_push_banked, movml_pop_banked, bclr_m2a, bclrmem_m2a, bset_m2a,
	bsetmem_m2a, bst_m2a, bld_m2a, bldsign_m2a, bld_reg, *bld_regqi,
	band_m2a, bor_m2a, bxor_m2a, mextr_rl, *mextr_lr, ): Use tab char
	instead of '\\t'.
	(iordi3): Use braced string.
	(*movsi_pop): Use tab chars instead of spaces.
From-SVN: r190580
Oleg Endo [Tue, 21 Aug 2012 23:34:54 +0000 (23:34 +0000)]
 
re PR target/39423 ([SH]  performance regression: lost mov @(disp,Rn))
	PR target/39423
	* config/sh/sh.md (*movhi_index_disp): Add support for SH2A movu.w insn.
	PR target/39423
	* gcc.target/sh/pr39423-2.c: New.
From-SVN: r190579
H.J. Lu [Tue, 21 Aug 2012 21:07:01 +0000 (21:07 +0000)]
 
Restore df_free_collection_rec call in df_bb_verify
	PR middle-end/54332
	* df-scan.c (df_bb_verify): Restore df_free_collection_rec call
	inside the insn traversal loop.
	* vec.h (vec_reserve): Remove the stack allocation check.
From-SVN: r190576
Tobias Burnus [Tue, 21 Aug 2012 21:01:36 +0000 (23:01 +0200)]
 
parse.c (parse_contained): Include EXEC_END_PROCEDURE in ns->code to make sure the gfc_code is freed.
2012-08-21  Tobias Burnus  <burnus@net-b.de>
        * parse.c (parse_contained): Include EXEC_END_PROCEDURE
        in ns->code to make sure the gfc_code is freed.
From-SVN: r190575
Ian Lance Taylor [Tue, 21 Aug 2012 20:51:42 +0000 (20:51 +0000)]
 
morestack.S (__morestack_non_split): Increase amount of space allocated for non-split code stack.
	* config/i386/morestack.S (__morestack_non_split): Increase amount
	of space allocated for non-split code stack.
From-SVN: r190574
Marc Glisse [Tue, 21 Aug 2012 13:27:00 +0000 (15:27 +0200)]
 
fold-const.c (fold_ternary_loc): Detect identity permutations.
2012-08-21  Marc Glisse  <marc.glisse@inria.fr>
gcc/
	* fold-const.c (fold_ternary_loc): Detect identity permutations.
	Canonicalize permutations more.
	* tree-ssa-forwprop.c (is_combined_permutation_identity): New function.
	(simplify_permutation): Likewise.
	(ssa_forward_propagate_and_combine): Call it.
gcc/testsuite/
	* gcc.dg/tree-ssa/forwprop-19.c: New testcase.
	* gcc.dg/fold-perm.c: Likewise.
From-SVN: r190561
Richard Guenther [Tue, 21 Aug 2012 11:48:42 +0000 (11:48 +0000)]
 
tree-ssa-loop-im.c (tree_ssa_lim_finalize): Properly free the affine expansion cache.
2012-08-21  Richard Guenther  <rguenther@suse.de>
	* tree-ssa-loop-im.c (tree_ssa_lim_finalize): Properly free
	the affine expansion cache.
	* tree-ssa-dom.c (free_expr_hash_elt_contents): New function,
	split out from ...
	(free_expr_hash_elt): ... this one.
	(record_cond): Properly free a not needed hashtable element.
	(lookup_avail_expr): Likewise.
	* tree-into-ssa.c (init_ssa_renamer): Specify a free function
	for the var_infos hashtable.
	(update_ssa): Likewise.
From-SVN: r190560
Richard Guenther [Tue, 21 Aug 2012 11:26:16 +0000 (11:26 +0000)]
 
alloc-pool.c (pool_alloc): Fix valgrind annotation.
2012-08-21  Richard Guenther  <rguenther@suse.de>
	* alloc-pool.c (pool_alloc): Fix valgrind annotation.
	* tree.h: Fix typo and complete flags documentation.
From-SVN: r190559
Richard Biener [Tue, 21 Aug 2012 10:03:38 +0000 (10:03 +0000)]
 
cp-tree.h (TREE_INDIRECT_USING): Use TREE_LANG_FLAG_0 accessor.
2012-08-21  Richard Guenther  <rguenther@suse.de>
	cp/
	* cp-tree.h (TREE_INDIRECT_USING): Use TREE_LANG_FLAG_0 accessor.
	(ATTR_IS_DEPENDENT): Likewise.
	(ARGUMENT_PACK_INCOMPLETE_P): Use TREE_ADDRESSABLE instead of
	TREE_LANG_FLAG_0 on TREE_VECs.
	* tree.h (struct tree_base): Add union to make it possible to
	re-use the upper 4 bytes for tree codes that do not need as
	many flags as others.  Move visited and default_def_flag to
	common bits section in exchange for saturating_flag and
	unsigned_flag.  Add SSA name version and tree vec length
	fields here.
	(struct tree_vec): Remove length field here.
	(struct tree_ssa_name): Remove version field here.
From-SVN: r190558
Hariharan Sandanagobalane [Tue, 21 Aug 2012 09:59:59 +0000 (09:59 +0000)]
 
MAINTAINERS (Write After Approval): Add myself.
        * MAINTAINERS (Write After Approval): Add myself.
        (picochip port): Remove myself.
From-SVN: r190557
Jan Hubicka [Tue, 21 Aug 2012 06:54:01 +0000 (08:54 +0200)]
 
re PR fortran/48636 (Enable more inlining with -O2 and higher)
	PR fortran/48636
	* ipa-inline.c (want_inline_small_function_p): Take loop_iterations hint.
	(edge_badness): Likewise.
	* ipa-inline.h (inline_hints_vals): Add INLINE_HINT_loop_iterations.
	(inline_summary): Add loop_iterations.
	* ipa-inline-analysis.c: Include tree-scalar-evolution.h.
	(dump_inline_hints): Dump loop_iterations.
	(reset_inline_summary): Free loop_iterations.
	(inline_node_duplication_hook): Update loop_iterations.
	(dump_inline_summary): Dump loop_iterations.
	(will_be_nonconstant_expr_predicate): New function.
	(estimate_function_body_sizes): Analyze loops.
	(estimate_node_size_and_time): Set hint loop_iterations.
	(inline_merge_summary): Merge loop iterations.
	(inline_read_section): Stream in loop_iterations.
	(inline_write_summary): Stream out loop_iterations.
From-SVN: r190556
Ian Lance Taylor [Tue, 21 Aug 2012 05:29:30 +0000 (05:29 +0000)]
 
mksysinfo: Fix syscall.F_GETLK and friends for 32-bit x86.
From-SVN: r190554
GCC Administrator [Tue, 21 Aug 2012 00:18:14 +0000 (00:18 +0000)]
 
Daily bump.
From-SVN: r190552
Oleg Endo [Mon, 20 Aug 2012 21:25:17 +0000 (21:25 +0000)]
 
Fix PR numbers for ChangeLog entries.
From-SVN: r190547
Florian Weimer [Mon, 20 Aug 2012 21:13:23 +0000 (23:13 +0200)]
 
Fix PR C++/19351: integer overflow in operator new[]
2012-08-20  Florian Weimer  <fweimer@redhat.com>
	PR c++/19351
	* call.c (build_operator_new_call): Add size_check argument and
	evaluate it.
	* cp-tree.h (build_operator_new_call): Adjust declaration.
	* init.c (build_new_1): Compute array size check and apply it.
2012-08-10  Florian Weimer  <fweimer@redhat.com>
	PR c++/19351
	* g++.dg/init/new38.C: New test.
	* g++.dg/init/new39.C: New test.
From-SVN: r190546
Oleg Endo [Mon, 20 Aug 2012 20:54:20 +0000 (20:54 +0000)]
 
re PR rtl-optimization/50489 ([UPC/IA64] mis-schedule of MEM ref with -ftree-vectorize and -fschedule-insns2)
	PR target/50489
	* config/sh/sh.md (rotcr, *rotcr, shar, shlr): New insns and splits.
	(ashrdi3_k, lshrdi3_k): Rewrite as insn_and_split.
	* config/sh/sh.c (sh_lshrsi_clobbers_t_reg_p): New function.
	* config/sh/sh-protos.h (sh_lshrsi_clobbers_t_reg_p): Declare it.
	PR target/50489
	* gcc.target/sh/pr54089-1.c: New.
From-SVN: r190545
Oleg Endo [Mon, 20 Aug 2012 20:51:06 +0000 (20:51 +0000)]
 
re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
	PR target/51244
	* config/sh/sh.md (*cset_zero): New insns.
	PR target/51244
	* gcc.target/sh/pr51244-11.c: New.
From-SVN: r190544
Mark Wielaard [Mon, 20 Aug 2012 20:27:46 +0000 (20:27 +0000)]
 
dwarf2out.c: For DWARF 4+, output DW_AT_high_pc as constant offset.
        * dwarf2out.h (enum dw_val_class): Add dw_val_class_high_pc.
        * dwarf2out.c (dw_val_equal_p): Handle dw_val_class_high_pc.
        (add_AT_low_high_pc): New function.
        (AT_lbl): Handle dw_val_class_high_pc.
        (print_die): Likewise.
        (attr_checksum): Likewise.
        (attr_checksum_ordered): Likewise.
        (same_dw_val_p): Likewise.
        (size_of_die): Likewise.
        (value_format): Likewise.
        (output_die): Likewise.
        (gen_subprogram_die): Use add_AT_low_high_pc.
        (add_high_low_attributes): Likewise.
        (dwarf2out_finish): Likewise.
From-SVN: r190543
Tobias Burnus [Mon, 20 Aug 2012 19:49:46 +0000 (21:49 +0200)]
 
re PR fortran/54301 (Add optional warning if pointer assigning a local variable to a nonlocal pointer)
2012-08-20  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54301
        * expr.c (gfc_check_pointer_assign): Warn when a pointer,
        which is a function result, might outlive its target.
2012-08-20  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54301
        * gfortran.dg/warn_target_lifetime_2.f90: New.
From-SVN: r190542
Jakub Jelinek [Mon, 20 Aug 2012 18:56:49 +0000 (20:56 +0200)]
 
re PR rtl-optimization/54294 ([alpha] Bootstrap comparison failure due to fwprop handling of debug insns)
	PR rtl-optimization/54294
	* fwprop.c (all_uses_available_at): Ignore debug insns in between
	def_insn and target_insn when checking whether the shortcut is
	possible.
From-SVN: r190541
Eric Botcazou [Mon, 20 Aug 2012 18:50:13 +0000 (18:50 +0000)]
 
* config/sparc/sparc.h (MAX_FIXED_MODE_SIZE): Define.
From-SVN: r190540
Paolo Carlini [Mon, 20 Aug 2012 17:38:53 +0000 (17:38 +0000)]
 
re PR c++/10416 ('unused variable' warning ignores ctor/dtor side-effects)
/cp
2012-08-20  Paolo Carlini  <paolo.carlini@oracle.com>
	PR c++/10416
	* decl.c (poplevel): Check TYPE_HAS_NONTRIVIAL_DESTRUCTOR for
	Wunused_variable too.
/testsuite
2012-08-20  Paolo Carlini  <paolo.carlini@oracle.com>
	PR c++/10416
	* g++.dg/warn/Wunused-var-17.C: New.
From-SVN: r190538
Patrick Marlier [Mon, 20 Aug 2012 16:22:17 +0000 (16:22 +0000)]
 
re PR middle-end/53992 (Combining -fopenmp and -fgnu-tm results in segfault or misbehaving binaries)
gcc/
2012-08-20  Patrick Marlier  <patrick.marlier@gmail.com>
	PR middle-end/53992
	* omp-low.c (lower_omp_1): Handle GIMPLE_TRANSACTION.
testsuite/
2012-08-20  Patrick Marlier  <patrick.marlier@gmail.com>
	PR middle-end/53992
	* gcc.dg/gomp/pr53992.c: New test.
From-SVN: r190536
Diego Novillo [Mon, 20 Aug 2012 14:23:32 +0000 (10:23 -0400)]
 
Fix -ftime-report for C++ lookup.
Found this while running -ftime-report on a largish C++ source file.
We need to start TV_NAME_LOOKUP conditionally inside poplevel()
because it may be called from another lookup routine that already has
TV_NAME_LOOKUP going.
Tested on x86_64.  Committed to trunk.
2012-08-20  Diego Novillo  <dnovillo@google.com>
	* decl.c (poplevel): Start TV_NAME_LOOKUP conditionally.
From-SVN: r190535
Richard Earnshaw [Mon, 20 Aug 2012 14:13:16 +0000 (14:13 +0000)]
 
re PR tree-optimization/54295 (Widening multiply-accumulate operation uses wrong value extension)
	PR tree-ssa/54295
	* tree-ssa-math-opts.c (is_widening_mult_rhs_p): Delete rhs_code
	declaration and setter.
From-SVN: r190534
Richard Earnshaw [Mon, 20 Aug 2012 12:49:47 +0000 (12:49 +0000)]
 
re PR tree-optimization/54295 (Widening multiply-accumulate operation uses wrong value extension)
	PR tree-ssa/54295
	* tree-ssa-math-opts.c (widening_mult_conversion_strippable_p):
	New function.
	(is_widening_mult_rhs_p): Use it.
	* gcc.c-torture/execute/
20120817-1.c: New test.
From-SVN: r190533
Joseph Myers [Mon, 20 Aug 2012 12:31:25 +0000 (13:31 +0100)]
 
configure.ac (ffs): Check for declaration.
	* configure.ac (ffs): Check for declaration.
	* configure, config.in: Regenerate.
From-SVN: r190532
Richard Guenther [Mon, 20 Aug 2012 12:04:38 +0000 (12:04 +0000)]
 
tree-flow.h (register_new_name_mapping): Remove.
2012-08-20  Richard Guenther  <rguenther@suse.de>
	* tree-flow.h (register_new_name_mapping): Remove.
	* tree-into-ssa.c (register_new_name_mapping): Likewise.
	(add_new_name_mapping): Do not push/pop timevar here.
	(create_new_def_for): Instead do it here.  Initialize
	update-ssa here, handle a NULL def.
	* tree-vrp.c (build_assert_expr_for): Use create_new_def_for.
From-SVN: r190531
Richard Earnshaw [Mon, 20 Aug 2012 10:57:45 +0000 (10:57 +0000)]
 
thumb-16bit-ops.c (f): This test uses a 16-bit add instruction.
	* gcc.target/arm/thumb-16bit-ops.c (f): This test uses a 16-bit
	add instruction.
	(f2): New test that really does need adds.
From-SVN: r190530
Richard Guenther [Mon, 20 Aug 2012 10:27:37 +0000 (10:27 +0000)]
 
name-lookup.c (store_binding_p): New predicate, split out from ...
2012-08-20  Richard Guenther  <rguenther@suse.de>
	* name-lookup.c (store_binding_p): New predicate, split out from ...
	(store_binding): ... here.  Always store binding and require
	target vector with enough space.
	(store_bindings): Collect to store bindings and reserve space
	for them, then store them.
	(store_class_bindings): Likewise.
From-SVN: r190529
Richard Guenther [Mon, 20 Aug 2012 10:26:45 +0000 (10:26 +0000)]
 
re PR middle-end/54327 (Segmentation fault in init_ggc)
2012-08-20  Richard Guenther  <rguenther@suse.de>
	PR tree-optimization/54327
	* gimple-fold.c (get_maxval_strlen): Do not walk use-def chains
	if the use is registered for SSA update.
	* gcc.dg/torture/pr54327.c: New testcase.
From-SVN: r190528
Jakub Jelinek [Mon, 20 Aug 2012 09:12:05 +0000 (11:12 +0200)]
 
re PR middle-end/54321 (ice in tree_low_cst at -O3)
	PR tree-optimization/54321
	* tree-ssa-forwprop.c (simplify_builtin_call): Pass 0 instead of 1
	as second argument to tree_low_cst call on val2.
	* gcc.c-torture/compile/pr54321.c: New test.
From-SVN: r190526
Richard Guenther [Mon, 20 Aug 2012 09:03:20 +0000 (09:03 +0000)]
 
gimple.h (gimple_statement_base): Annotate with GTY chain_next.
2012-08-20  Richard Guenther  <rguenther@suse.de>
	* gimple.h (gimple_statement_base): Annotate with GTY chain_next.
From-SVN: r190525
Richard Guenther [Mon, 20 Aug 2012 07:49:41 +0000 (07:49 +0000)]
 
re PR bootstrap/54326 (GCC does not build with G++ version 3.4.0)
2012-08-20  Richard Guenther  <rguenther@suse.de>
	PR bootstrap/54326
	* genoutput.c (note_constraint): Properly use CONST_CAST.
From-SVN: r190524
Tobias Burnus [Mon, 20 Aug 2012 05:47:46 +0000 (07:47 +0200)]
 
re PR fortran/54301 (Add optional warning if pointer assigning a local variable to a nonlocal pointer)
2012-08-20  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54301
        * expr.c (gfc_check_pointer_assign): Warn when the pointer
        might outlive its target.
        * gfortran.h (struct gfc_option_t): Add warn_target_lifetime.
        * options.c (gfc_init_options, set_wall, gfc_handle_option):
        handle it.
        * invoke.texi (-Wtarget-lifetime): Document it.
        (-Wall): Implied it.
        * lang.opt (-Wtarget-lifetime): New flag.
2012-08-20  Tobias Burnus  <burnus@net-b.de>
        PR fortran/54301
        * gfortran.dg/warn_target_lifetime_1.f90: New.
From-SVN: r190522
GCC Administrator [Mon, 20 Aug 2012 00:17:46 +0000 (00:17 +0000)]
 
Daily bump.
From-SVN: r190521
Jan-Benedict Glaw [Sun, 19 Aug 2012 19:15:45 +0000 (19:15 +0000)]
 
* ChangeLog: Remove entry that shouldn't be there.
From-SVN: r190518
Joseph Myers [Sun, 19 Aug 2012 15:11:40 +0000 (16:11 +0100)]
 
crtstuff.c (USE_PT_GNU_EH_FRAME): Define for systems using glibc even if inhibit_libc.
	* crtstuff.c (USE_PT_GNU_EH_FRAME): Define for systems using glibc
	even if inhibit_libc.
From-SVN: r190517
Thomas Koenig [Sun, 19 Aug 2012 15:05:41 +0000 (15:05 +0000)]
 
re PR fortran/54298 (Add warning when doing equal/nonequal floating-point comparisons)
2012-08-19  Thomas König  <tkoenig@gcc.gnu.org>
	PR fortran/54298
	* gfortran.h (struct gfc_option_t): Add warn_compare_reals.
	* lang.opt:  Add Wcompare-reals.
	* invoke.texi:  Document -Wcompare-reals.
	* resolve.c (resolve_operator):  If -Wcompare-reals is in effect,
	warn about equality/inequality comparisions for REAL and COMPLEX.
	* options.c (gfc_init_options):  Set warn_compare_reals.
	(set_Wall):  Include warn_compare_reals in Wall.
	(gfc_handle_option):  Handle Wcompare_reals.
2012-08-19  Thomas König  <tkoenig@gcc.gnu.org>
	PR fortran/54298
	* gfortran.dg/real_compare_1.f90:  New test case.
	* gfortran.dg/bessel_5.f90  Add -Wno-compare-reals to options.
From-SVN: r190516
Eric Botcazou [Sun, 19 Aug 2012 14:17:22 +0000 (14:17 +0000)]
 
layout.adb (Set_Elem_Alignment): Cap the alignment of access types to that of a regular access type for...
	* layout.adb (Set_Elem_Alignment): Cap the alignment of access types
	to that of a regular access type for non-strict-alignment platforms.
	* gcc-interface/utils.c (finish_fat_pointer_type): Do not set the
	alignment for non-strict-alignment platforms.
From-SVN: r190515
Eric Botcazou [Sun, 19 Aug 2012 14:07:58 +0000 (14:07 +0000)]
 
decl.c (gnat_to_gnu_entity): Use proper dummy type for the temporary COMPONENT_REF built for a derived...
	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Use proper
	dummy type for the temporary COMPONENT_REF built for a derived tagged
	type with discriminant.
From-SVN: r190514
Mikael Morin [Sun, 19 Aug 2012 10:03:10 +0000 (10:03 +0000)]
 
Make-lang.in: Fix typo.
cp/
	* Make-lang.in: Fix typo.
From-SVN: r190513
Jan-Benedict Glaw [Sun, 19 Aug 2012 08:31:25 +0000 (08:31 +0000)]
 
* ChangeLog: Fix whitespace.
From-SVN: r190512
Nick Clifton [Sun, 19 Aug 2012 07:11:35 +0000 (07:11 +0000)]
 
re PR c/54306 (ARM iwmmxt2 commit adds imbalanced #endif in mmintrin.h)
	PR target/54306
	* config/arm/mmintrin.h: Remove spurious #endif.
From-SVN: r190511
Jan-Benedict Glaw [Sun, 19 Aug 2012 06:15:03 +0000 (06:15 +0000)]
 
avr-log.c (avr_log_vadump): Properly use int-promoted enum values.
        * config/avr/avr-log.c (avr_log_vadump): Properly use
        int-promoted enum values.
        * config/avr/avr.h (struct mcu_type_s): Change `arch' from
        int to enum avr_arch.
        * config/avr/gen-avr-mmcu-texi.c (main): Use correct initializer.
From-SVN: r190510
Jan Hubicka [Sun, 19 Aug 2012 05:55:20 +0000 (07:55 +0200)]
 
re PR lto/45375 ([meta-bug] Issues with building Mozilla (i.e. Firefox) with LTO)
	PR lto/45375
	* ipa-inline.c (want_inline_small_function_p): Bypass
	inline limits for hinted functions.
	(edge_badness): Dump hints; decrease badness for hinted funcitons.
	* ipa-inline.h (enum inline_hints_vals): New enum.
	(inline_hints): New type.
	(edge_growth_cache_entry): Add hints.
	(dump_inline_summary): Update.
	(dump_inline_hints): Declare.
	(do_estimate_edge_hints): Declare.
	(estimate_edge_hints): New inline function.
	(reset_edge_growth_cache): Update.
	* predict.c (cgraph_maybe_hot_edge_p): Do not ice on indirect edges.
	* ipa-inline-analysis.c (dump_inline_hints): New function.
	(estimate_edge_devirt_benefit): Return true when function should be
	hinted.
	(estimate_calls_size_and_time): New hints argument; set it when
	devritualization happens.
	(estimate_node_size_and_time): New hints argument.
	(do_estimate_edge_time): Cache hints.
	(do_estimate_edge_growth): Update.
	(do_estimate_edge_hints): New function
From-SVN: r190509
GCC Administrator [Sun, 19 Aug 2012 00:17:52 +0000 (00:17 +0000)]
 
Daily bump.
From-SVN: r190508
John David Anglin [Sat, 18 Aug 2012 23:16:53 +0000 (23:16 +0000)]
 
re PR middle-end/53823 (FAIL: gcc.c-torture/execute/930921-1.c execution at -O0 and -O1)
	PR middle-end/53823
	* expmed.c (expand_mult): Skip synth_mult for negative coefficients
	if the mode is larger than a wide int and it is too costly to multiply
	by a positive multiplier and negate the result.
From-SVN: r190505
Mikael Morin [Sat, 18 Aug 2012 22:00:10 +0000 (22:00 +0000)]
 
Add the working testcase from PR fortran/39290.
testsuite/
	PR fortran/39290
	* gfortran.dg/interface_37.f90: New test.
From-SVN: r190504
Steven Bosscher [Sat, 18 Aug 2012 13:44:00 +0000 (13:44 +0000)]
 
sparseset.c (sparseset_alloc): Use non-clearing allocation.
	* sparseset.c (sparseset_alloc): Use non-clearing allocation.  Tell
	valgrind not to worry about reading from unitialized memory.
From-SVN: r190503
Steven Bosscher [Sat, 18 Aug 2012 10:35:36 +0000 (10:35 +0000)]
 
re PR middle-end/54313 (GCC fails to bootstrap with MALLOC_PERTURB – Segfault in bitmap_obstack_free)
	PR middle-end/54313
	* dse.c (dse_step7): Don't free kill_on_calls bitmap, it is
	freed when its obstack is release.
From-SVN: r190502
Andrew Pinski [Sat, 18 Aug 2012 08:24:06 +0000 (01:24 -0700)]
 
alloc-pool.c (pool_alloc): Add valgrind markers.
2012-08-18  Andrew Pinski  <pinskia@gmail.com>
	* alloc-pool.c (pool_alloc): Add valgrind markers.
	(pool_free): Likewise.
From-SVN: r190501
Walter Lee [Sat, 18 Aug 2012 03:21:55 +0000 (03:21 +0000)]
 
Define stubs for feedback instrumentation.
	* config/tilegx/feedback.h (FEEDBACK_ENTER_EXPLICIT): Define.
	(FEEDBACK_ENTER): Define.
	(FEEDBACK_REENTER): Define.
	(FEEDBACK_ENTRY): Define.
	* config/tilepro/feedback.h: (FEEDBACK_ENTER_EXPLICIT): Define.
	(FEEDBACK_ENTER): Define.
	(FEEDBACK_REENTER): Define.
	(FEEDBACK_ENTRY): Define.
From-SVN: r190499
GCC Administrator [Sat, 18 Aug 2012 00:18:18 +0000 (00:18 +0000)]
 
Daily bump.
From-SVN: r190498
Andreas Schwab [Fri, 17 Aug 2012 21:56:48 +0000 (21:56 +0000)]
 
floatformat.c (floatformat_to_double): Correctly handle numbers between 1 and 2.
* floatformat.c (floatformat_to_double): Correctly handle numbers
between 1 and 2.  Simplify handling of denormal number.
(main): Test with 1.1.
From-SVN: r190493
H.J. Lu [Fri, 17 Aug 2012 19:59:46 +0000 (19:59 +0000)]
 
Define MAX_FIXED_MODE_SIZE/TARGET_MEMBER_TYPE_FORCES_BLK for i386
gcc/
	PR target/20020
	* config/i386/i386.c (ix86_member_type_forces_blk): New function.
	(TARGET_MEMBER_TYPE_FORCES_BLK): New macro.
	* config/i386/i386.h (MAX_FIXED_MODE_SIZE): New macro.
gcc/testsuite/
	PR target/20020
	* gcc.target/i386/pr20020-1.c: New test.
	* gcc.target/i386/pr20020-2.c: Likewise.
	* gcc.target/i386/pr20020-3.c: Likewise.
Co-Authored-By: Gary Funck <gary@intrepid.com>
From-SVN: r190492
Marc Glisse [Fri, 17 Aug 2012 17:53:57 +0000 (19:53 +0200)]
 
simplify-rtx.c (simplify_binary_operation_1): Optimize shuffle of a concatenation.
2012-08-17  Marc Glisse  <marc.glisse@inria.fr>
gcc/
	* simplify-rtx.c (simplify_binary_operation_1): Optimize shuffle of
	a concatenation.
gcc/testsuite/
	* gcc.target/i386/perm-concat.c: New test.
From-SVN: r190490
H.J. Lu [Fri, 17 Aug 2012 15:50:44 +0000 (15:50 +0000)]
 
Convert MEMBER_TYPE_FORCES_BLK to target hook
	* stor-layout.c (compute_record_mode): Replace
	MEMBER_TYPE_FORCES_BLK with targetm.member_type_forces_blk.
	(layout_type): Likewise.
	* system.h: Poison MEMBER_TYPE_FORCES_BLK.
	* target.def (member_type_forces_blk): New target hook.
	* targhooks.c (default_member_type_forces_blk): New.
	* targhooks.h (default_member_type_forces_blk): Likewise.
	* doc/tm.texi.in (MEMBER_TYPE_FORCES_BLK): Removed.
	(TARGET_MEMBER_TYPE_FORCES_BLK): New hook.
	* doc/tm.texi: Regenerated.
	* config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Removed.
	* config/ia64/ia64.c (ia64_member_type_forces_blk): New
	function.
	(TARGET_MEMBER_TYPE_FORCES_BLK): New macro.
	* config/rs6000/rs6000.c (TARGET_MEMBER_TYPE_FORCES_BLK): New
	macro.
	(rs6000_member_type_forces_blk): New function.
	* config/rs6000/rs6000.h (MEMBER_TYPE_FORCES_BLK): Removed.
	* config/xtensa/xtensa.c (xtensa_member_type_forces_blk): New
	function.
	(TARGET_MEMBER_TYPE_FORCES_BLK): New macro.
	* config/xtensa/xtensa.h (MEMBER_TYPE_FORCES_BLK): Removed.
From-SVN: r190488
Diego Novillo [Fri, 17 Aug 2012 15:37:57 +0000 (11:37 -0400)]
 
re PR bootstrap/54281 (Fails to bootstrap with --disable-nls)
2012-08-17  Diego Novillo  <dnovillo@google.com>
	PR bootstrap/54281
	* configure.ac: Add libintl.h to AC_CHECK_HEADERS list.
	* config.in: Regenerate.
	* configure: Regenerate.
	* intl.h: Always include libintl.h if HAVE_LIBINTL_H is
	set.
From-SVN: r190487
Julian Brown [Fri, 17 Aug 2012 15:06:06 +0000 (15:06 +0000)]
 
Makefile.in (LIB2_DIVMOD_EXCEPTION_FLAGS): Default to -fexceptions -fnon-call-exceptions if not defined.
    libgcc/
    * Makefile.in (LIB2_DIVMOD_EXCEPTION_FLAGS): Default to
    -fexceptions -fnon-call-exceptions if not defined.
    ($(lib2-divmod-o), $(lib2-divmod-s-o)): Use above.
    * config/arm/t-bpabi (LIB2_DIVMOD_EXCEPTION_FLAGS): Define.
    gcc/testsuite/
    * gcc.target/arm/div64-unwinding.c: New test.
From-SVN: r190483
Andreas Schwab [Fri, 17 Aug 2012 12:33:09 +0000 (12:33 +0000)]
 
linux-atomic.c (__sync_lock_test_and_set_1): Fix type.
* config/m68k/linux-atomic.c (__sync_lock_test_and_set_1): Fix
type.
From-SVN: r190480
Richard Guenther [Fri, 17 Aug 2012 10:49:30 +0000 (10:49 +0000)]
 
bitmap.h (struct bitmap_element_def): GTY annotate next/prev.
2012-08-17  Richard Guenther  <rguenther@suse.de>
	* bitmap.h (struct bitmap_element_def): GTY annotate next/prev.
	(struct bitmap_head_def): GTY skip current field.
From-SVN: r190479
Nick Clifton [Fri, 17 Aug 2012 10:27:10 +0000 (10:27 +0000)]
 
fr30.md (cbranchsi4): Remove mode from comparison.
	* config/fr30/fr30.md  (cbranchsi4): Remove mode from
	comparison.
	(branch_true): Likewise.
	(branch_false): Likewise.
From-SVN: r190478