Michael Matz [Fri, 15 Jun 2012 14:40:38 +0000 (14:40 +0000)]
 
gimplify.c (gimplify_modify_expr): Fold generated statements.
	* gimplify.c (gimplify_modify_expr): Fold generated statements.
	* gimple-fold.c (can_refer_decl_in_current_unit_p): Check flag_ltrans.
testsuite/
	* gcc.dg/debug/dwarf2/inline3.c: Adjust.
	* gcc.dg/tree-ssa/foldstring-1.c: Adjust.
From-SVN: r188664
Richard Guenther [Fri, 15 Jun 2012 13:38:17 +0000 (13:38 +0000)]
 
tree-vrp.c (set_and_canonicalize_value_range): Use canonical predicates to set VR_UNDEFINED and VR_VARYING.
2012-06-15  Richard Guenther  <rguenther@suse.de>
	* tree-vrp.c (set_and_canonicalize_value_range): Use canonical
	predicates to set VR_UNDEFINED and VR_VARYING.  Drop a case
	we assert for in set_value_range to VR_VARYING.
From-SVN: r188663
Richard Earnshaw [Fri, 15 Jun 2012 13:32:09 +0000 (13:32 +0000)]
 
arm.md (addsf3, adddf3): Use s_register_operand.
	* arm.md (addsf3, adddf3): Use s_register_operand.
	(subsf3, subdf3): Likewise.
	(mulsf3, muldf3): Likewise.
	(difsf3, divdf3): Likewise.
	(movsfcc, movdfcc): Likewise.
	* predicates.md (f_register_operand): Delete.
	(arm_float_rhs_operand): Delete.
	(arm_float_add_operand): Delete.
	(arm_float_compare_operand): Use s_register_operand when
	there's no VFP.
	(cirrus_register_operand): Delete.
	(cirrus_fp_register): Delete.
	(cirrus_shift_const): Delete.
	(cmpdi_operand): Remove Maverick support.
	* constraints.md (f, v, H): Delete constraints.
	(G): Update documentation.
	* arm.c (fp_consts_inited): Convert to bool.
	(strings_fp): Delete.
	(values_fp): Delete.
	(value_fp0): New variable.
	(init_fp_table): Simplify logic.
	(arm_const_double_rtx): Likewise.
	(fp_immediate_constant): Likewise.
	(fp_const_from_val): Likewise.
	(neg_const_double_rtx_ok_for_fpa): Delete.
	* doc/md.texi (ARM constraints): Update documentation.
From-SVN: r188662
Ulrich Weigand [Fri, 15 Jun 2012 13:30:36 +0000 (13:30 +0000)]
 
re PR tree-optimization/53636 (SLP may create invalid unaligned memory accesses)
	gcc/
	PR tree-optimization/53636
	* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Verify
	stride when doing basic-block vectorization.
	gcc/testsuite/
	PR tree-optimization/53636
	* gcc.target/arm/pr53636.c: New test.
From-SVN: r188661
Ramana Radhakrishnan [Fri, 15 Jun 2012 13:06:51 +0000 (13:06 +0000)]
 
tree-vect-generic.c (lower_vec_perm): Propagate vector constants into VEC_PERM_EXPR.
2012-06-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
	* tree-vect-generic.c (lower_vec_perm): Propagate vector constants
	into VEC_PERM_EXPR.
From-SVN: r188659
Jakub Jelinek [Fri, 15 Jun 2012 11:08:28 +0000 (13:08 +0200)]
 
tree-vect-patterns.c (vect_pattern_recog): Don't unnecessarily allocate and free bbs array for the SLP case.
	* tree-vect-patterns.c (vect_pattern_recog): Don't unnecessarily
	allocate and free bbs array for the SLP case.
From-SVN: r188657
Jakub Jelinek [Fri, 15 Jun 2012 11:07:47 +0000 (13:07 +0200)]
 
re PR tree-optimization/51581 (Integer division by constant is not vectorized)
	PR tree-optimization/51581
	* expr.h (choose_multiplier): New prototype.
	* expmed.c (choose_multiplier): No longer static.
	Change multiplier_ptr from rtx * to UHWI *.
	(expand_divmod): Adjust callers.
	* tree-vect-patterns.c (vect_recog_sdivmod_pow2_pattern):
	Renamed to...
	(vect_recog_divmod_pattern): ... this.  Pass bb_vinfo as last
	argument to new_stmt_vec_info.  Attempt to optimize also divisions
	by non-pow2 constants if integer vector division isn't supported.
	* tree-vect-stmts.c (vect_analyze_stmt): If node != NULL,
	don't look at pattern stmts and sequences.
	* gcc.c-torture/execute/pr51581-1.c: New test.
	* gcc.c-torture/execute/pr51581-2.c: New test.
	* gcc.dg/vect/pr51581-1.c: New test.
	* gcc.dg/vect/pr51581-2.c: New test.
	* gcc.dg/vect/pr51581-3.c: New test.
	* gcc.target/i386/avx-pr51581-1.c: New test.
	* gcc.target/i386/avx-pr51581-2.c: New test.
	* gcc.target/i386/avx2-pr51581-1.c: New test.
	* gcc.target/i386/avx2-pr51581-2.c: New test.
	* gcc.dg/vect/slp-26.c (main1): Divide by 0x8031 instead of 3.
From-SVN: r188656
Richard Guenther [Fri, 15 Jun 2012 11:06:16 +0000 (11:06 +0000)]
 
20120615-1.c: New testcase.
2012-06-15  Richard Guenther  <rguenther@suse.de>
	* gcc.c-torture/execute/
20120615-1.c: New testcase.
From-SVN: r188655
 
Eric Botcazou [Fri, 15 Jun 2012 10:41:13 +0000 (10:41 +0000)]
 
re PR ada/53592 (ICE on assignment to component of vector_type)
	PR ada/53592
	* gcc-interface/gigi.h (maybe_vector_array): Make static inline.
	* gcc-interface/utils.c (maybe_vector_array): Delete.
	* gcc-interface/trans.c (gnat_to_gnu) <N_Indexed_Component>: Mark the
	array object as addressable if it has vector type and is on the LHS.
From-SVN: r188653
Eric Botcazou [Fri, 15 Jun 2012 09:22:00 +0000 (09:22 +0000)]
 
re PR middle-end/53590 (compiler fails to generate SIMD instruction for FP division)
	PR middle-end/53590
	* common.opt (-fdelete-dead-exceptions): New switch.
	* doc/invoke.texi (Code Gen Options): Document it.
	* cse.c (count_reg_usage) <CALL_INSN>: Use !insn_nothrow_p in lieu of
	insn_could_throw_p predicate.  Do not skip an insn that could throw
	if dead exceptions can be deleted.
	(insn_live_p): Likewise, do not return true in that case.
	* dce.c (can_alter_cfg): New flag.
	(deletable_insn_p): Do not return false for an insn that can throw if
	the CFG can be altered and dead exceptions can be deleted.
	(init_dce): Set can_alter_cfg to false for fast DCE, true otherwise.
	* dse.c (scan_insn): Use !insn_nothrow_p in lieu of insn_could_throw_
	predicate. Do not preserve an insn that could throw if dead exceptions
	can be deleted.
	* function.h (struct function): Add can_delete_dead_exceptions flag.
	* function.c (allocate_struct_function): Set it.
	* lto-streamer-in.c (input_struct_function_base): Stream it.
	* lto-streamer-out.c (input_struct_function_base): Likewise.
	* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Do not mark a
	statement that could throw as necessary if dead exceptions can be
	deleted.
ada/
	* gcc-interface/misc.c (gnat_init_options_struct): Set
	opts->x_flag_delete_dead_exceptions to 1.
From-SVN: r188651
Andreas Schwab [Fri, 15 Jun 2012 08:08:04 +0000 (08:08 +0000)]
 
locks.h (compare_and_swap): Use __sync_bool_compare_and_swap.
* sysdep/m68k/locks.h (compare_and_swap): Use
__sync_bool_compare_and_swap.
(release_set): Use write_barrier instead of inlining it.
From-SVN: r188650
Andreas Krebbel [Fri, 15 Jun 2012 07:29:26 +0000 (07:29 +0000)]
 
2012-06-15  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
	* sysdep/s390/locks.h (compare_and_swap, release_set)
	(read_barrier, write_barrier): Use the GCC atomic builtins.
From-SVN: r188649
Uros Bizjak [Fri, 15 Jun 2012 06:53:28 +0000 (08:53 +0200)]
 
(*zero_extendsidi2_rex64): Remove isa attribute.
From-SVN: r188648
Jonathan Wakely [Fri, 15 Jun 2012 00:27:29 +0000 (00:27 +0000)]
 
re PR libstdc++/53578 (include/ext/concurrence.h relies on ill-formed narrowing conversions)
	PR libstdc++/53578
	* include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
	narrowing conversion.
	* include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.
From-SVN: r188646
GCC Administrator [Fri, 15 Jun 2012 00:18:49 +0000 (00:18 +0000)]
 
Daily bump.
From-SVN: r188645
Kaz Kojima [Thu, 14 Jun 2012 22:58:05 +0000 (22:58 +0000)]
 
Update sysdep/sh/locks.h with atomic builtins
Update sysdep/sh/locks.h with atomic builtins
	* sysdep/sh/locks.h (__cas_lock): Remove.
	(__cas_start_atomic, __cas_end_atomic): Likewise.
	(compare_and_swap): Call __sync_bool_compare_and_swap.
From-SVN: r188640
Maxim Kuvyrkov [Thu, 14 Jun 2012 22:46:03 +0000 (22:46 +0000)]
 
* config/tilegx/sync.md (atomic_fetch_sub<mode>): Fix typo.
From-SVN: r188639
Jonathan Wakely [Thu, 14 Jun 2012 22:20:52 +0000 (22:20 +0000)]
 
re PR libstdc++/53270 (Error when bootstrapping gcc on hppa2.0-unknown-linux-gcc)
	PR libstdc++/53270
	* include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
	NSDMI in C++11 mode.
	* include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in
	destructor when initialized by function.
From-SVN: r188637
Jonathan Wakely [Thu, 14 Jun 2012 22:07:33 +0000 (22:07 +0000)]
 
re PR libstdc++/53648 ([C++11] nested empty tuples)
	PR libstdc++/53648
	* include/std/tuple (__empty_not_final): Do not use EBO for tuples.
	* testsuite/20_util/tuple/53648.cc: New.
	* testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line
	number.
From-SVN: r188636
Jonathan Wakely [Thu, 14 Jun 2012 20:32:11 +0000 (20:32 +0000)]
 
* doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
From-SVN: r188635
Uros Bizjak [Thu, 14 Jun 2012 19:38:12 +0000 (21:38 +0200)]
 
Fix my previous commit to:
	* config/i386/i386.md (*zero_extendsidi2): Remove x,x alternative.
	(*zero_extendsidi2_rex64): Ditto.
From-SVN: r188634
Oleg Endo [Thu, 14 Jun 2012 19:33:10 +0000 (19:33 +0000)]
 
re PR target/53568 (SH Target: Add support for bswap built-ins)
	PR target/53568
	* config/sh/sh.md: Add peephole for swapbsi2.
	(*swapbisi2_and_shl8, *swapbhisi2): New insns and splits.
From-SVN: r188632
Uros Bizjak [Thu, 14 Jun 2012 18:51:36 +0000 (20:51 +0200)]
 
i386.md (*zero_extendsidi2): Mark movd alternatives SSE2 only.
	* config/i386/i386.md (*zero_extendsidi2): Mark movd alternatives
	SSE2 only.  Remove x,x alternative.
	(*zero_extendsidi2_rex64): Ditto.
From-SVN: r188630
Jakub Jelinek [Thu, 14 Jun 2012 18:26:53 +0000 (20:26 +0200)]
 
re PR target/53639 (x86_64: redundant 64-bit operations on 32-bit integers)
	PR target/53639
	* config/i386/i386.md (*anddi_1 into *andsi_1_zext splitter): New.
From-SVN: r188629
Richard Earnshaw [Thu, 14 Jun 2012 16:00:55 +0000 (16:00 +0000)]
 
arm.c (arm_cirrus_insn_p): Delete.
	* arm.c (arm_cirrus_insn_p): Delete.
	(cirrus_reorg): Delete.
	(arm_reorg): Don't call cirrus_reorg.
	(arm_final_prescan_insn_p): Don't check for cirrus insns.
	* arm.md (define_attr "type"): Remove mav_farith and mav_dmult.
	(adddi3, subdi3): Remove Maverick support.
	(arm_adddi3): Likewise.
	(adddi_sesidi_di, adddi_zesidi_di): Likewise.
	(addsf3, adddf3): Likewise.
	(subsf3, subdf3): Likewise.
	(mulsf3, muldf3): Likewise.
	(ashldi3, ashrdi3, lshrdi3): Likewise.
	(floatsisf2, floatsidf2): Likewise.
	(fix_truncsfsi2, fix_truncdfsi2): Likewise.
	(arm_movdi, thumb1_movdi_insn): Likewise.
	(arm_cmpdi_insn): Likewise.
	(cirrus_cmpsf, cirrus_cmpdf, cirrus_cmpdi): Likewise.
	(cirrus.md): Don't include.
	* cirrus.md: Delete file.
	* t-arm (MD_INCLUDES): Remove cirrus.md.
From-SVN: r188622
Eric Botcazou [Thu, 14 Jun 2012 14:09:05 +0000 (14:09 +0000)]
 
dwarf2out.c (function_possibly_abstracted_p): New static function.
	* dwarf2out.c (function_possibly_abstracted_p): New static function.
	(gen_subprogram_die): Use it function_possibly_abstracted_p in lieu of
	cgraph_function_possibly_inlined_p.
	(gen_inlined_subroutine_die): Return if the origin is to be ignored.
	(process_scope_var): Do not emit concrete instances of abstracted
	nested functions from here.
	(gen_decl_die): Emit the abstract instance if the function is possibly
	abstracted and not only possibly inlined.
	(dwarf2out_finish): Find the first non-abstract parent instance and
	attach concrete instances on the limbo list to it.
From-SVN: r188621
Richard Earnshaw [Thu, 14 Jun 2012 13:02:52 +0000 (13:02 +0000)]
 
arm.md (divsf3, divdf3): Remove FPA support.
	* arm.md (divsf3, divdf3): Remove FPA support.
	(negsf2, negdf2): Likewise.
	(sqrtsf2, sqrtdf2): Likewise.
	(movdfcc): Likewise.
	(modsf3, moddf3, movxf): Delete.
	(push_fp_multi): Delete.
	(fpa.md): Don't include it.
	* fpa.md: Delete file.
	* t-arm (MD_INCLUDES): Remove fpa.md.
From-SVN: r188616
Jose Ruiz [Thu, 14 Jun 2012 12:48:22 +0000 (12:48 +0000)]
 
Make-lang.in (ada.install-common, [...]): Use the prefix specified with the --program-prefix configure option to...
2012-06-14  Jose Ruiz  <ruiz@adacore.com>
	* gcc-interface/Make-lang.in (ada.install-common, ada.uninstall):
	Use the prefix specified with the --program-prefix configure option
	to determine the install name of the Ada tools.
	(ada.all.cross): Use a for loop to iterate over the set of Ada tools
	instead of duplicate the same processing.
	Update dependencies.
From-SVN: r188612
Bill Schmidt [Thu, 14 Jun 2012 12:21:36 +0000 (12:21 +0000)]
 
tree-vectorizer.h (vect_get_stmt_cost): Move from tree-vect-stmts.c.
2012-06-14  Bill Schmidt  <wschmidt@linux.ibm.com>
	* tree-vectorizer.h (vect_get_stmt_cost): Move from tree-vect-stmts.c.
	(cost_for_stmt): Remove decl.
	(vect_get_single_scalar_iteration_cost): Correct typo in name.
	* tree-vect-loop.c (vect_get_cost): Remove.
	(vect_get_single_scalar_iteration_cost): Correct typo in name; use
	vect_get_stmt_cost rather than vect_get_cost.
	(vect_get_known_peeling_cost): Use vect_get_stmt_cost rather than
	vect_get_cost.
	(vect_estimate_min_profitable_iters): Correct typo in call to
	vect_get_single_scalar_iteration_cost; use vect_get_stmt_cost rather
	than vect_get_cost.
	(vect_model_reduction_cost): Use vect_get_stmt_cost rather than
	vect_get_cost.
	(vect_model_induction_cost): Likewise.
	* tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost): Correct
	typo in call to vect_get_single_scalar_iteration_cost.
	* tree-vect-stmts.c (vect_get_stmt_cost): Move to tree-vectorizer.h.
	(cost_for_stmt): Remove unnecessary function.
	* Makefile.in (TREE_VECTORIZER_H): Update dependencies.
From-SVN: r188611
Arnaud Charlet [Thu, 14 Jun 2012 10:56:22 +0000 (12:56 +0200)]
 
[multiple changes]
2012-06-14  Vincent Pucci  <pucci@adacore.com>
	* exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_Symbol
	call replaced by Expand_Put_Call_With_Symbol call.
	* sem_dim.adb: New fields Unit_Names, Unit_Symbols
	and Dim_Symbols for record type System_Type.
	(From_Dimension_To_String_Of_Symbols): Removed.
	(From_Dim_To_Str_Of_Dim_Symbols): Renames previous
	routine From_Dimension_To_String_Of_Symbols.
	(From_Dim_To_Str_Of_Unit_Symbols): New routine.
	(Analyze_Aspect_Dimension): argument Symbol in aspect
	Dimension aggregate is optional. Named association implemented.
	(Has_Compile_Time_Known_Expressions): Removed.
	(Analyze_Aspect_Dimension_System): New
	component Dim_Symbol in each Dimension aggregate in
	aspect Dimension_System. Named associations implemented.
	(Add_Dimension_Vector_To_Buffer): Removed.
	(Add_Whole_To_Buffer): Removed.
	(Expand_Put_Call_With_Dimension_Symbol.): Removed.
	(Expand_Put_Call_With_Symbol): Renames previous routine
	Expand_Put_Call_With_Dimension_Symbol.
	(Has_Dimension_Symbols): Removed.
	(Has_Symbols): Renames previous routine
	Has_Dimension_Symbols.	(Store_String_Oexpon): New routine.
	* sem_dim.ads (Expand_Put_Call_With_Dimension_Symbol.): Removed.
	(Expand_Put_Call_With_Symbol): Renames previous routine
	Expand_Put_Call_With_Dimension_Symbol.
	* s-diflio.adb, s-diinio.adb (Put): Symbol renames Symbols.
	(Put_Dim_Of): New routines.
	* s-diflio.ads, s-diinio.ads: documentation updated.
	(Put): Symbol renames Symbols.
	(Put_Dim_Of): New routines.
	* s-dim.ads: documentation updated.
	* s-dimmks.ads: dimensioned type and subtypes updated.
	* snames.ads-tmpl: Name_Dim_Symbol, Name_Put_Dim_Of, Name_Symbol,
	and Name_Unit_Symbol added. Name_Symbols removed.
2012-06-14  Vincent Pucci  <pucci@adacore.com>
	* freeze.adb (In_Exp_Body): Expression function case added.
	(Freeze_Expression): Insert the Freeze_Nodes
	list before the correct current scope in case of a quantified
	expression.
2012-06-14  Pascal Obry  <obry@adacore.com>
	* projects.texi: Document the Install package for gprinstall.
2012-06-14  Ed Schonberg  <schonberg@adacore.com>
	* sem_elim.adb (Check_For_Eliminated_Subprogram): Do not check within
	a default expression.
	* sem_res.adb (Resolve_Call): simplify code.
2012-06-14  Ed Schonberg  <schonberg@adacore.com>
	* sem_case.adb (Check, Issue_Msg): within an instance, non-other
	values in a variant part or a case expression do not have to
	belong to the actual subtype.
2012-06-14  Ed Schonberg  <schonberg@adacore.com>
	* sem_ch12.adb (Validate_Derived_Type_Instance): If parent is
	an interface type, check whether it is itself a previous formal
	already instantiated in the current list of actuals.
2012-06-14  Ed Schonberg  <schonberg@adacore.com>
	* sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): The
	expression for a stream attribute is a name that may be overloaded
	with other declarations. To determine whether it matches the
	aspect at the freeze point, it is necessary to verify that one
	of its interpretations matches.
From-SVN: r188610
Arnaud Charlet [Thu, 14 Jun 2012 10:49:59 +0000 (12:49 +0200)]
 
[multiple changes]
2012-06-14  Robert Dewar  <dewar@adacore.com>
	* exp_ch7.adb, exp_util.adb, sem_aux.ads, exp_ch9.adb,
	sem_ch10.adb, freeze.adb, sem_util.adb, exp_ch4.adb,
	s-taprop-dummy.adb: Minor reformatting.
2012-06-14  Vincent Pucci  <pucci@adacore.com>
	* exp_attr.adb (Expand_N_Attribute_Reference): Lock_Free
	attribute case added.
	* par-prag.adb (Prag): Lock_Free pragma case added.
	* sem_attr.adb (Analyze_Attribute_Reference): Lock_Free attribute
	case added.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Record_Rep_Item
	call added for Aspect_Lock_Free.
	* sem_ch9.adb (Allows_Lock_Free_Implementation): New Lock_Free
	error messages for subprogram bodies.
	(Lock_Free_Disabled): New routine.
	(Analyze_Protected_Body): Call to Lock_Free_Disabled added.
	* sem_prag.adb (Analyze_Pragma): Lock_Free pragma case added.
	* snames.adb-tmpl (Get_Pragma_Id): Name_Lock_Free case added.
	(Is_Pragma_Name): Name_Lock_Free case added.
	* snames.ads-tmpl: Attribute_Lock_Free and Pragma_Lock_Free added.
2012-06-14  Ed Schonberg  <schonberg@adacore.com>
	* a-coorma.adb, a-cborma.adb, a-cbhama.adb, a-ciorma.adb: Add missing
	aliased keyword.
2012-06-14  Bob Duff  <duff@adacore.com>
	* lib.ads, lib.adb, sem.adb (Write_Unit_Info): Move this
	procedure from Sem body to Lib spec, so it can be used for
	debugging elsewhere.
2012-06-14  Ed Schonberg  <schonberg@adacore.com>
	* sem_ch6.adb (Check_Conformance): Add Ada 2012 check on mode
	conformance: "aliased" must apply to both or neither formal
	parameters.
From-SVN: r188609
Arnaud Charlet [Thu, 14 Jun 2012 10:46:14 +0000 (12:46 +0200)]
 
[multiple changes]
2012-06-14  Gary Dismukes  <dismukes@adacore.com>
	* exp_ch9.adb: Minor reformatting.
2012-06-14  Thomas Quinot  <quinot@adacore.com>
	* freeze.adb (Freeze_Record_Type): Warn about useless bit order
	specification [when there's no component clause] regardless
	of whether the specified bit order is reversed or not.
2012-06-14  Tristan Gingold  <gingold@adacore.com>
	* raise-gcc.c (__gnat_personality_seh0): New function.
2012-06-14  Tristan Gingold  <gingold@adacore.com>
	* gnatname.adb (Gnatname): Make sure that dynamic table
	argument_data is initialized.
2012-06-14  Robert Dewar  <dewar@adacore.com>
	* sem_aux.adb: Minor code reorganization.
From-SVN: r188608
Vincent Pucci [Thu, 14 Jun 2012 10:43:53 +0000 (10:43 +0000)]
 
einfo.adb einfo.ads (Get_Rep_Item): Removed.
2012-06-14  Vincent Pucci  <pucci@adacore.com>
	* einfo.adb einfo.ads (Get_Rep_Item): Removed.
	(Get_Rep_Item_For_Entity): Removed.
	(Get_Rep_Pragma): Removed.
	(Get_Rep_Pragma_For_Entity): Removed.
	(Has_Rep_Item): Removed.
	(Has_Rep_Pragma): Removed.
	(Has_Rep_Pragma_For_Entity): Removed.
	* exp_ch9.adb (Expand_N_Task_Type_Declaration):
	Has_Rep_Pragma_For_Entity replaced by Has_Rep_Pragma
	and Get_Rep_Pragma_For_Entity replaced by Get_Rep_Pragma.
	(Make_Task_Create_Call): Has_Rep_Pragma_For_Entity replaced
	by Has_Rep_Pragma and Get_Rep_Pragma_For_Entity replaced by
	Get_Rep_Pragma.
	* exp_intr.adb: Dependency to Sem_Aux added for call to Get_Rep_Pragma.
	* sem_aux.adb (Get_Rep_Item): New routine.
	(Get_Rep_Pragma): New routine.
	(Has_Rep_Item): New routine.
	(Has_Rep_Pragma): New routine.
	(Nearest_Ancestor): Minor reformatting.
	* sem_aux.ads (Get_Rep_Item): New routine.
	(Get_Rep_Pragma): New routine.
	(Has_Rep_Item): New routine.
	(Has_Rep_Pragma): New routine.
	* sem_ch13.adb (Duplicate_Clause): Restore original error messages.
	* sem_eval.adb (Subtypes_Statically_Match): Get_Rep_Item_For_Entity
	replaced by Get_Rep_Item.
	* sem_prag.adb (Analyze_Pragma): Restore original error messages.
	(Check_Duplicate_Pragma): Restore original error messages.
From-SVN: r188607
Arnaud Charlet [Thu, 14 Jun 2012 10:39:51 +0000 (12:39 +0200)]
 
[multiple changes]
2012-06-14  Ed Schonberg  <schonberg@adacore.com>
	* sem_util.adb (Is_Object_Reference): in Ada 2012, qualified
	expressions are valid names.
2012-06-14  Ed Schonberg  <schonberg@adacore.com>
	* sem_ch10.adb (Analyze_Compilation_Unit): If the unit is an
	instantiation do not emit warnings for obsolescent units. The
	warnings belong on the corresponding generic.
2012-06-14  Hristian Kirtchev  <kirtchev@adacore.com>
	* einfo.adb: Update the usage of Node15.
	(Return_Flag_Or_Transient_Decl): Removed.
	(Set_Return_Flag_Or_Transient_Decl): Removed.
	(Set_Status_Flag_Or_Transient_Decl): New routine.
	(Status_Flag_Or_Transient_Decl): New routine.
	(Write_Field15_Name): Update the output for variables and constants.
	* einfo.ads: Remove attribute
	Return_Flag_Or_Transient_Decl along with occurrences in nodes.
	(Return_Flag_Or_Transient_Decl): Removed along with pragma Inline.
	(Set_Return_Flag_Or_Transient_Decl): Removed along with pragma Inline.
	(Set_Status_Flag_Or_Transient_Decl): New routine along with pragma
	Inline.
	(Status_Flag_Or_Transient_Decl): New routine along with pragma Inline.
	* exp_ch4.adb (Create_Alternative): New routine.
	(Expand_N_Conditional_Expression): Handle the case
	where at least one of the conditional expression
	alternatives prodices a controlled temporary by means of a function
	call.
	(Is_Controlled_Function_Call): New routine.
	(Process_Transient_Object): Update the call to
	Set_Return_Flag_Or_Transient_Decl.
	* exp_ch6.adb (Enclosing_Context): New routine.
	(Expand_N_Extended_Return_Statement): Update all calls to
	Set_Return_Flag_Or_Transient_Decl.
	(Expand_Ctrl_Function_Call): Prohibit the finalization of a controlled
	function result when the context is a conditional expression.
	* exp_ch7.adb (Process_Declarations): Update all calls to
	Return_Flag_Or_Transient_Decl. Add processing for intermediate
	results of conditional expressions where one of the alternatives
	uses a controlled function call.
	(Process_Object_Declaration): Update all calls to
	Return_Flag_Or_Transient_Decl and rearrange the logic to process
	"hook" objects first.
	(Process_Transient_Objects): Update the call to
	Set_Return_Flag_Or_Transient_Decl.
	* exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean,
	Boolean)): Update all calls to Return_Flag_Or_Transient_Decl. Add
	detection for intermediate results of conditional expressions
	where one of the alternatives uses a controlled function call.
From-SVN: r188606
Richard Guenther [Thu, 14 Jun 2012 09:38:47 +0000 (09:38 +0000)]
 
vrp.h: New testcase.
2012-06-14  Richard Guenther  <rguenther@suse.de>
	* gcc.dg/tree-ssa/vrp.h: New testcase.
	* gcc.dg/tree-ssa/vrp68.c: Likewise.
From-SVN: r188604
Richard Earnshaw [Thu, 14 Jun 2012 09:24:51 +0000 (09:24 +0000)]
 
arm.opt (mfp=2, [...]): Delete options.
	* arm.opt (mfp=2, mfp=3, mfpe, mfpe=2, mfpe=3): Delete options.
        * arm-fpus.def (fpa, fpe2, fpe3, maverick): Delete FPU types.
	* arm-tables.opt: Regenerated.
        * doc/invoke.texi: Remove references to deleted options.
From-SVN: r188603
Sandeep Kumar Singh [Thu, 14 Jun 2012 09:08:49 +0000 (09:08 +0000)]
 
Added offset bits of MOVA/Sz assembly instruction for memory access
From-SVN: r188602
Sandeep Kumar Singh [Thu, 14 Jun 2012 08:47:28 +0000 (08:47 +0000)]
 
Added offset bits of MOVA/Sz assembly instruction for memory access
From-SVN: r188600
Christian Bruel [Thu, 14 Jun 2012 08:38:22 +0000 (10:38 +0200)]
 
re PR target/53621 ([SH] Frame pointers not generated with -fno-omit-frame-pointer on GCC 4.7.0)
PR target/53621
* config/sh/sh.c (sh_option_override): Don't force
flag_omit_frame_pointer and maccumulate_outgoing_args.
* config/sh/sh.opt (maccumulate-outgoing-args): Init as Var.
* gcc.dg/stack-usage-1.c: Force -fomit-frame-pointer on SH.
From-SVN: r188598
Richard Guenther [Thu, 14 Jun 2012 07:52:32 +0000 (07:52 +0000)]
 
tree-vrp.c (VR_INITIALIZER): New define.
2012-06-14  Richard Guenther  <rguenther@suse.de>
	* tree-vrp.c (VR_INITIALIZER): New define.
	(ranges_from_anti_range): New function.
	(extract_range_from_binary_expr_1): Decompose operations on
	VR_ANTI_RANGEs to operations on VR_RANGE.
	(extract_range_from_unary_expr_1): Likewise.
	(extract_range_from_binary_expr_1, extract_range_from_binary_expr,
	extract_range_from_unary_expr_1, extract_range_from_unary_expr,
	extract_range_from_cond_expr, adjust_range_with_scev,
	vrp_visit_assignment_or_call, vrp_visit_phi_node,
	simplify_bit_ops_using_ranges): Use VR_INITIALIZER.
From-SVN: r188551
Richard Sandiford [Thu, 14 Jun 2012 07:05:25 +0000 (07:05 +0000)]
 
mips.exp (mips-dg-options): Handle -msynci.
gcc/testsuite/
	* gcc.target/mips/mips.exp (mips-dg-options): Handle -msynci.
From-SVN: r188550
Ian Lance Taylor [Thu, 14 Jun 2012 05:04:04 +0000 (05:04 +0000)]
 
compiler, reflect: Quote package path with tabs.
From-SVN: r188548
Ian Lance Taylor [Thu, 14 Jun 2012 04:47:45 +0000 (04:47 +0000)]
 
libgo: Make the subdirectory in the CHECK target.
From Andreas Schwab.
From-SVN: r188547
Ian Lance Taylor [Thu, 14 Jun 2012 00:47:38 +0000 (00:47 +0000)]
 
compiler: Avoid unnecessary interface conversions.
From-SVN: r188545
GCC Administrator [Thu, 14 Jun 2012 00:18:01 +0000 (00:18 +0000)]
 
Daily bump.
From-SVN: r188544
Janis Johnson [Wed, 13 Jun 2012 22:55:56 +0000 (22:55 +0000)]
 
re PR testsuite/20771 (Duplicate PCH test names)
	PR testsuite/20771
	* lib/dg-pch.exp (dg-flags-pch): Add flags to make compile lines in
	test summary unique.
From-SVN: r188540
Janis Johnson [Wed, 13 Jun 2012 22:55:15 +0000 (22:55 +0000)]
 
scanasm.exp (scan-assembler, [...]): Don't strip torture options from test name.
	* lib/scanasm.exp (scan-assembler, scan-assembler-not, scan-hidden,
	scan-not-hiddent, scan-file, scan-file-not, scan-stack-usage,
	scan-stack-usage-not): Don't strip torture options from test name.
From-SVN: r188539
Janis Johnson [Wed, 13 Jun 2012 22:54:24 +0000 (22:54 +0000)]
 
scandump.exp (scan-dump-times): Use printable version of regexp in test summary line.
	* lib/scandump.exp (scan-dump-times): Use printable version of
	regexp in test summary line.
From-SVN: r188538
Janis Johnson [Wed, 13 Jun 2012 22:53:42 +0000 (22:53 +0000)]
 
di-longlong64-sync-1.c: Add comments to checks for multiple messages reported for one line of source code.
	* gcc.dg/di-longlong64-sync-1.c: Add comments to checks for multiple
	messages reported for one line of source code.
	* gcc.dg/format/few-1.c: Likewise.
	* gcc.dg/ia64-sync-2.c: Likewise.
	* gcc.dg/sync-2.c: Likewise.
	* gcc.dg/noncompile/pr44517.c: Likewise.
From-SVN: r188537
Richard Henderson [Wed, 13 Jun 2012 21:52:47 +0000 (14:52 -0700)]
 
Add and use HOST_WIDEST_INT_C, HOST_WIDE_INT_C.
From-SVN: r188535
Joseph Myers [Wed, 13 Jun 2012 21:49:11 +0000 (22:49 +0100)]
 
* gcc.pot: Regenerate.
From-SVN: r188534
Joseph Myers [Wed, 13 Jun 2012 21:48:00 +0000 (22:48 +0100)]
 
* cpplib.pot: Regenerate.
From-SVN: r188533
Alexandre Oliva [Wed, 13 Jun 2012 21:43:51 +0000 (21:43 +0000)]
 
re PR debug/49888 (VTA: -O2 -g variable value changes, it does not change in the source)
gcc/ChangeLog:
PR debug/49888
* var-tracking.c: Include alias.h.
(overlapping_mems): New struct.
(drop_overlapping_mem_locs): New.
(clobber_overlapping_mems): New.
(var_mem_delete_and_set, var_mem_delete): Call it.
(val_bind): Likewise, but only if modified.
(compute_bb_dataflow, emit_notes_in_bb): Call it on MEMs.
* Makefile.in (var-tracking.o): Depend in $(ALIAS_H).
gcc/testsuite/ChangeLog:
PR debug/49888
* gcc.dg/guality/pr49888.c: New.
From-SVN: r188531
Alexandre Oliva [Wed, 13 Jun 2012 21:43:19 +0000 (21:43 +0000)]
 
re PR debug/47624 (FAIL: gcc.dg/guality/pr43077-1.c  -O1  line 42 c == 3)
PR debug/47624
* var-tracking.c (loc_exp_dep_pool): New.
(vt_emit_notes): Create and release the pool.
(compute_bb_dataflow): Use value-based locations in MO_VAL_SET.
(emit_notes_in_bb): Likewise.
(loc_exp_dep_insert): Deal with NOT_ONEPART vars.
(notify_dependents_of_changed_value): Likewise.
(notify_dependents_of_resolved_value): Check that NOT_ONEPART
variables don't have a VAR_LOC_DEP_LST.
(emit_note_insn_var_location): Expand NOT_ONEPART locs that are
VALUEs or MEMs of VALUEs.
From-SVN: r188530
Joseph Myers [Wed, 13 Jun 2012 21:39:19 +0000 (22:39 +0100)]
 
* sr.po: New.
From-SVN: r188528
Alexandre Oliva [Wed, 13 Jun 2012 20:41:55 +0000 (20:41 +0000)]
 
re PR debug/52983 (internal compiler error: in df_uses_record, at df-scan.c:3243)
PR debug/52983
PR debug/48866
* dce.c (word_dce_process_block): Insert debug temps only if the
insn is not marked.
(dce_process_block): Likewise, and if debug.used is not empty,
and only after iterating over all DEFs that might mark the insn.
From-SVN: r188527
Alexandre Oliva [Wed, 13 Jun 2012 20:41:41 +0000 (20:41 +0000)]
 
common.opt (ftree-coalesce-inlined-vars): New.
gcc/ChangeLog:
* common.opt (ftree-coalesce-inlined-vars): New.
(ftree-coalesce-vars): New.
* doc/invoke.texi: Document them.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce):
Implement them.
gcc/testsuite/ChangeLog:
* g++.dg/tree-ssa/ivopts-2.C: Adjust for coalescing.
* gcc.dg/tree-ssa/forwprop-11.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-1.c: Likewise.
From-SVN: r188526
Richard Sandiford [Wed, 13 Jun 2012 19:38:11 +0000 (19:38 +0000)]
 
read-rtl.c (mapping): Remove index field.
gcc/
	* read-rtl.c (mapping): Remove index field.  Add current_value field.
	Define heap vectors.
	(iterator_group): Fix long line.  Remove num_builtins field and
	uses_iterator fields.  Make apply_iterator take a void * parameter.
	(iterator_use, atttribute_use): New structures.
	(iterator_traverse_data, BELLWETHER_CODE, bellwether_codes): Delete.
	(current_iterators, iterator_uses, attribute_uses): New variables.
	(uses_mode_iterator_p, uses_code_iterator_p): Delete.
	(apply_mode_iterator, apply_code_iterator): Take a void * parameter.
	(map_attr_string, apply_iterator_to_string): Remove iterator
	and value parameters.  Look through all current iterator values
	for a matching attribute.
	(mode_attr_index, apply_mode_maps): Delete.
	(apply_iterator_to_rtx): Replace with...
	(copy_rtx_for_iterators): ...this new function.
	(uses_iterator_p, apply_iterator_traverse): Delete.
	(apply_attribute_uses, add_current_iterators, apply_iterators): New
	functions.
	(add_mapping): Remove index field.  Set current_value field.
	(initialize_iterators): Don't set num_builtins and uses_iterator_p
	fields.
	(find_iterator): Delete.
	(record_iterator_use, record_attribute_use): New functions.
	(record_potential_iterator_use): New function.
	(check_code_iterator): Remove handling of bellwether codes.
	(read_rtx): Remove mode maps.  Truncate iterator and attribute uses.
	(read_rtx_code, read_nested_rtx, read_rtx_variadic): Remove mode_maps
	parameter.  Use the first code iterator value instead of the
	bellwether_codes array.  Use record_potential_iterator_use
	for modes.
From-SVN: r188525
Oleg Endo [Wed, 13 Jun 2012 18:45:17 +0000 (18:45 +0000)]
 
re PR target/53568 (SH Target: Add support for bswap built-ins)
	PR target/53568
	* config/sh/sh.md (bswapsi2): New expander.
	(swapbsi2): New insn.
From-SVN: r188524
H.J. Lu [Wed, 13 Jun 2012 17:46:59 +0000 (17:46 +0000)]
 
Set cache values from -mtune
	PR target/53647
	* config/i386/i386.c (ix86_tune_cost): New variable.
	(ix86_option_override_internal): Set ix86_tune_cost.  Use
	ix86_tune_cost for simultaneous_prefetches, prefetch_block,
	l1_cache_size and l2_cache_size.
From-SVN: r188523
Uros Bizjak [Wed, 13 Jun 2012 15:59:15 +0000 (17:59 +0200)]
 
* ChangeLog: Fix whitespace.
From-SVN: r188521
Uros Bizjak [Wed, 13 Jun 2012 15:56:55 +0000 (17:56 +0200)]
 
sfp-machine.h (__sfp_handle_exceptions): New function declaration.
	* config/ia64/sfp-machine.h (__sfp_handle_exceptions): New
	function declaration.
	(FP_HANDLE_EXCEPTIONS): Use __sfp_handle_exceptions.
	(FP_RND_MASK): New.
	* config/ia64/sfp-exceptions.c: New.
	* config/ia64/t-softfp (LIB2ADD): Add sfp-exceptions.c.
From-SVN: r188520
Uros Bizjak [Wed, 13 Jun 2012 15:23:12 +0000 (17:23 +0200)]
 
sfp-machine.h (_FP_NANSIGN_S, [...]): Move ...
	* config/i386/32/sfp-machine.h (_FP_NANSIGN_S, _FP_NANSIGN_D,
	_FP_NANSIGN_E, _FP_NANSIGN_Q): Move ...
	* config/i386/64/sfp-machine: ... (delete here) ...
	* config/i386/sfp-machine.h: ... to here.
	(FP_EX_MASK): Remove.
	(FP_RND_MASK): New.
	(FP_INIT_ROUNDMODE): Declare asm as volatile.
From-SVN: r188518
Richard Guenther [Wed, 13 Jun 2012 15:12:02 +0000 (15:12 +0000)]
 
tree-vrp.c (vrp_meet): Properly meet equivalent ranges.
2012-06-13  Richard Guenther  <rguenther@suse.de>
	* tree-vrp.c (vrp_meet): Properly meet equivalent ranges.
	Handle meeting two VR_RANGE to an VR_ANTI_RANGE.  Implement
	all possible meetings of VR_RANGE with VR_ANTI_RANGE and
	VR_ANTI_RANGE with VR_ANTI_RANGE.
From-SVN: r188517
Eric Botcazou [Wed, 13 Jun 2012 13:30:29 +0000 (13:30 +0000)]
 
Revert
	2012-05-19  Eric Botcazou  <ebotcazou@adacore.com>
	* gcc-interface/decl.c (Has_Thiscall_Convention): New macro.
	(gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the thiscall
	calling convention
	(get_minimal_subprog_decl): Likewise.
	(gnat_first_param_is_class): New predicate.
From-SVN: r188512
Richard Earnshaw [Wed, 13 Jun 2012 12:45:27 +0000 (12:45 +0000)]
 
config.gcc (unsupported): Move obsoleted FPA-based configurations here from ...
	* config.gcc (unsupported): Move obsoleted FPA-based configurations
	here from ...
	(obsolete): ... here.
	(arm*-*-freebsd*): Remove.
	(arm*-*-linux*): Only accept EABI variants.  Simplify logic.
	(arm*-*-uclinux*): Likewise.
	(arm*-*-ecos-elf): Remove.
	(arm*-*-rtems*): Remove.
	(arm*-*-elf): Remove.
	(arm*-wince-pe*): Remove.
	(arm, --with-fpu): Remove support for fpa and Maverick variants.
	* arm/ecos-elf.h: Delete.
	* arm/t-strongarm-elf: Delete.
	* arm/rtems-elf.h: Delete.
	* arm/wince-pe.h: Delete.
	* arm/pe.c: Delete.
	* arm/pe.h: Delete.
	* arm/t-wince-pe: Delete.
From-SVN: r188510
Bill Schmidt [Wed, 13 Jun 2012 12:33:55 +0000 (12:33 +0000)]
 
re PR tree-optimization/53647 (gcc.c-torture/compile/
20011229-1.c and gcc.c-torture/compile/pr25311.c)
2012-06-13  Bill Schmidt  <wschmidt@linux.ibm.com>
	PR tree-optimization/53647
	* tree-ssa-phiopt.c (gate_hoist_loads): Skip transformation for
	targets with no defined cache line size.
From-SVN: r188509
 
Bill Schmidt [Wed, 13 Jun 2012 12:27:57 +0000 (12:27 +0000)]
 
targhooks.c (default_builtin_vectorized_conversion): Handle vec_construct, using vectype to base cost on subparts.
2012-06-13  Bill Schmidt  <wschmidt@linux.ibm.com>
	* targhooks.c (default_builtin_vectorized_conversion): Handle
	vec_construct, using vectype to base cost on subparts.
	* target.h (enum vect_cost_for_stmt): Add vec_construct.
	* tree-vect-stmts.c (vect_model_load_cost): Use vec_construct
	instead of scalar_to-vec.
	* config/spu/spu.c (spu_builtin_vectorization_cost): Handle
	vec_construct in same way as default for now.
	* config/i386/i386.c (ix86_builtin_vectorization_cost): Likewise.
	* config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost):
	Handle vec_construct, including special case for 32-bit loads.
From-SVN: r188508
Tobias Burnus [Wed, 13 Jun 2012 11:57:45 +0000 (13:57 +0200)]
 
re PR fortran/53643 ([OOP] ICE (segfault) with INTENT(OUT) CLASS array)
2012-06-13  Tobias Burnus  <burnus@net-b.de>
        PR fortran/53643
        * trans-decl.c (init_intent_out_dt): Fix for polymorphic arrays.
        * trans-array.c (structure_alloc_comps): Don't loop for
        scalar coarrays.
2012-06-13  Tobias Burnus  <burnus@net-b.de>
        PR fortran/53643
        * gfortran.dg/intent_out_7.f90: New.
From-SVN: r188507
Tobias Burnus [Wed, 13 Jun 2012 11:56:08 +0000 (13:56 +0200)]
 
re PR fortran/53597 (F95/F2003 constraint no longer triggers: un-SAVED default-initialized module variable)
2012-06-13  Tobias Burnus  <burnus@net-b.de>
        PR fortran/53597
        * decl.c (match_attr_spec): Only mark module variables
        as SAVE_IMPLICIT for Fortran 2008 and later.
2012-06-13  Tobias Burnus  <burnus@net-b.de>
        PR fortran/53597
        * gfortran.dg/save_4.f90: New.
From-SVN: r188506
Uros Bizjak [Wed, 13 Jun 2012 10:43:26 +0000 (12:43 +0200)]
 
* ChangeLog: Fix whitespace.
From-SVN: r188505
Uros Bizjak [Wed, 13 Jun 2012 10:39:27 +0000 (12:39 +0200)]
 
* ChangeLog: Fix whitespace.
From-SVN: r188504
Xinyu Qi [Wed, 13 Jun 2012 07:28:51 +0000 (07:28 +0000)]
 
arm.c (FL_IWMMXT2): New define.
	* config/arm/arm.c (FL_IWMMXT2): New define.
	(arm_arch_iwmmxt2): New variable.
	(arm_option_override): Enable use of iWMMXt with VFP.
	Disable use of iWMMXt with NEON. Disable use of iWMMXt under
	Thumb mode. Set arm_arch_iwmmxt2.
	(arm_expand_binop_builtin): Accept VOIDmode op.
	(enum arm_builtins): Revise built-in fcode.
	(IWMMXT2_BUILTIN): New define.
	(IWMMXT2_BUILTIN2): Likewise.
	(iwmmx2_mbuiltin): Likewise.
	(builtin_description bdesc_2arg): Revise built in declaration.
	(builtin_description bdesc_1arg): Likewise.
	(arm_init_iwmmxt_builtins): Revise built in initialization.
	(arm_expand_builtin): Revise built in expansion.
	(arm_output_iwmmxt_shift_immediate): New function.
	(arm_output_iwmmxt_tinsr): Likewise.
	* config/arm/arm-protos.h (arm_output_iwmmxt_shift_immediate): Declare.
	(arm_output_iwmmxt_tinsr): Likewise.
	* config/arm/iwmmxt.md (WCGR0, WCGR1, WCGR2, WCGR3): New constant.
	(iwmmxt_psadbw, iwmmxt_walign, iwmmxt_tmrc, iwmmxt_tmcr): Delete.
	(rorv4hi3, rorv2si3, rordi3): Likewise.
	(rorv4hi3_di, rorv2si3_di, rordi3_di): Likewise.
	(ashrv4hi3_di, ashrv2si3_di, ashrdi3_di): Likewise.
	(lshrv4hi3_di, lshrv2si3_di, lshrdi3_di): Likewise.
	(ashlv4hi3_di, ashlv2si3_di, ashldi3_di): Likewise.
	(iwmmxt_tbcstqi, iwmmxt_tbcsthi, iwmmxt_tbcstsi): Likewise
	(*iwmmxt_clrv8qi, *iwmmxt_clrv4hi, *iwmmxt_clrv2si): Likewise.
	(tbcstv8qi, tbcstv4hi, tbsctv2si): New pattern.
	(iwmmxt_clrv8qi, iwmmxt_clrv4hi, iwmmxt_clrv2si): Likewise.
	(*and<mode>3_iwmmxt, *ior<mode>3_iwmmxt, *xor<mode>3_iwmmxt): Likewise.
	(ror<mode>3, ror<mode>3_di): Likewise.
	(ashr<mode>3_di, lshr<mode>3_di, ashl<mode>3_di): Likewise.
	(ashli<mode>3_iwmmxt, iwmmxt_waligni, iwmmxt_walignr): Likewise.
	(iwmmxt_walignr0, iwmmxt_walignr1): Likewise.
	(iwmmxt_walignr2, iwmmxt_walignr3): Likewise.
	(iwmmxt_setwcgr0, iwmmxt_setwcgr1): Likewise.
	(iwmmxt_setwcgr2, iwmmxt_setwcgr3): Likewise.
	(iwmmxt_getwcgr0, iwmmxt_getwcgr1): Likewise.
	(iwmmxt_getwcgr2, iwmmxt_getwcgr3): Likewise.
	(All instruction patterns): Add wtype attribute.
	(*iwmmxt_arm_movdi, *iwmmxt_movsi_insn): iWMMXt coexist with vfp.
	(iwmmxt_uavgrndv8qi3, iwmmxt_uavgrndv4hi3): Revise the pattern.
	(iwmmxt_uavgv8qi3, iwmmxt_uavgv4hi3): Likewise.
	(ashr<mode>3_iwmmxt, ashl<mode>3_iwmmxt, lshr<mode>3_iwmmxt): Likewise.
	(iwmmxt_tinsrb, iwmmxt_tinsrh, iwmmxt_tinsrw):Likewise.
	(eqv8qi3, eqv4hi3, eqv2si3, gtuv8qi3): Likewise.
	(gtuv4hi3, gtuv2si3, gtv8qi3, gtv4hi3, gtv2si3): Likewise.
	(iwmmxt_wunpckihh, iwmmxt_wunpckihw, iwmmxt_wunpckilh): Likewise.
	(iwmmxt_wunpckilw, iwmmxt_wunpckehub, iwmmxt_wunpckehuh): Likewise.
	(iwmmxt_wunpckehuw, iwmmxt_wunpckehsb, iwmmxt_wunpckehsh): Likewise.
	(iwmmxt_wunpckehsw, iwmmxt_wunpckelub, iwmmxt_wunpckeluh): Likewise.
	(iwmmxt_wunpckeluw, iwmmxt_wunpckelsb, iwmmxt_wunpckelsh): Likewise.
	(iwmmxt_wunpckelsw, iwmmxt_wmadds, iwmmxt_wmaddu): Likewise.
	(iwmmxt_wsadb, iwmmxt_wsadh, iwmmxt_wsadbz, iwmmxt_wsadhz): Likewise.
	(iwmmxt2.md): Include.
	* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __IWMMXT2__.
	(TARGET_IWMMXT2): New define.
	(TARGET_REALLY_IWMMXT2): Likewise.
	(arm_arch_iwmmxt2): Declare.
	* config/arm/mmintrin.h: Use __IWMMXT__ to enable iWMMXt intrinsics.
	Use __IWMMXT2__ to enable iWMMXt2 intrinsics.
	Use C name-mangling for intrinsics.
	(__v8qi): Redefine.
	(_mm_cvtsi32_si64, _mm_andnot_si64, _mm_sad_pu8): Revise.
	(_mm_sad_pu16, _mm_align_si64, _mm_setwcx, _mm_getwcx): Likewise.
	(_m_from_int): Likewise.
	(_mm_sada_pu8, _mm_sada_pu16): New intrinsic.
	(_mm_alignr0_si64, _mm_alignr1_si64, _mm_alignr2_si64): Likewise.
	(_mm_alignr3_si64, _mm_tandcb, _mm_tandch, _mm_tandcw): Likewise.
	(_mm_textrcb, _mm_textrch, _mm_textrcw, _mm_torcb): Likewise.
	(_mm_torch, _mm_torcw, _mm_tbcst_pi8, _mm_tbcst_pi16): Likewise.
	(_mm_tbcst_pi32): Likewise.
	(_mm_abs_pi8, _mm_abs_pi16, _mm_abs_pi32): New iWMMXt2 intrinsic.
	(_mm_addsubhx_pi16, _mm_absdiff_pu8, _mm_absdiff_pu16): Likewise.
	(_mm_absdiff_pu32, _mm_addc_pu16, _mm_addc_pu32): Likewise.
	(_mm_avg4_pu8, _mm_avg4r_pu8, _mm_maddx_pi16, _mm_maddx_pu16): Likewise.
	(_mm_msub_pi16, _mm_msub_pu16, _mm_mulhi_pi32): Likewise.
	(_mm_mulhi_pu32, _mm_mulhir_pi16, _mm_mulhir_pi32): Likewise.
	(_mm_mulhir_pu16, _mm_mulhir_pu32, _mm_mullo_pi32): Likewise.
	(_mm_qmulm_pi16, _mm_qmulm_pi32, _mm_qmulmr_pi16): Likewise.
	(_mm_qmulmr_pi32, _mm_subaddhx_pi16, _mm_addbhusl_pu8): Likewise.
	(_mm_addbhusm_pu8, _mm_qmiabb_pi32, _mm_qmiabbn_pi32): Likewise.
	(_mm_qmiabt_pi32, _mm_qmiabtn_pi32, _mm_qmiatb_pi32): Likewise.
	(_mm_qmiatbn_pi32, _mm_qmiatt_pi32, _mm_qmiattn_pi32): Likewise.
	(_mm_wmiabb_si64, _mm_wmiabbn_si64, _mm_wmiabt_si64): Likewise.
	(_mm_wmiabtn_si64, _mm_wmiatb_si64, _mm_wmiatbn_si64): Likewise.
	(_mm_wmiatt_si64, _mm_wmiattn_si64, _mm_wmiawbb_si64): Likewise.
	(_mm_wmiawbbn_si64, _mm_wmiawbt_si64, _mm_wmiawbtn_si64): Likewise.
	(_mm_wmiawtb_si64, _mm_wmiawtbn_si64, _mm_wmiawtt_si64): Likewise.
	(_mm_wmiawttn_si64, _mm_merge_si64): Likewise.
	(_mm_torvscb, _mm_torvsch, _mm_torvscw): Likewise.
	(_m_to_int): New define.
	* config/arm/arm-cores.def (iwmmxt2): Add FL_IWMMXT2.
	* config/arm/arm-arches.def (iwmmxt2): Likewise.
	* config/arm/t-arm (MD_INCLUDES): Add marvell-f-iwmmxt.md and
	iwmmxt2.md.
	* config/arm/arm.md (marvell-f-iwmmxt.md): Include.
	(arch): Add "iwmmxt2".
	(arch_enabled): Handle "iwmmxt2".
	(wtype): New attribute.
	(UNSPEC_WMADDS, UNSPEC_WMADDU): Delete.
	(UNSPEC_WALIGNI): New unspec.
	* config/arm/predicates.md (imm_or_reg_operand): New predicate.
	* config/arm/iterators.md (VMMX2): New mode_iterator.
	* config/arm/marvell-f-iwmmxt.md: New file.
	* config/arm/iwmmxt2.md: New file.
From-SVN: r188497
Ian Lance Taylor [Wed, 13 Jun 2012 05:56:09 +0000 (05:56 +0000)]
 
os/user: Use Entersyscall.
From-SVN: r188496
Ian Lance Taylor [Wed, 13 Jun 2012 04:47:25 +0000 (04:47 +0000)]
 
os: Use Entersyscall when reading directories.
From-SVN: r188494
GCC Administrator [Wed, 13 Jun 2012 00:18:01 +0000 (00:18 +0000)]
 
Daily bump.
From-SVN: r188492
Rafael Ávila de Espíndola [Tue, 12 Jun 2012 21:35:42 +0000 (21:35 +0000)]
 
plugin-api.h (ld_plugin_output_file_type): Add LDPO_PIE.
2012-06-12  Rafael Ávila de Espíndola <respindola@mozilla.com>
	* plugin-api.h (ld_plugin_output_file_type): Add LDPO_PIE.
From-SVN: r188484
Jakub Jelinek [Tue, 12 Jun 2012 21:16:20 +0000 (23:16 +0200)]
 
re PR c/53532 (function call ignored when called with argument of incompatible, undefined structure)
	PR c/53532
	PR c/51034
	PR c/53196
	* c-decl.c (build_compound_literal): Call c_incomplete_type_error
	if type isn't complete.
	* gcc.dg/pr53532.c: New test.
	* gcc.dg/c99-complit-2.c: Add two new dg-error directives,
	adjust line numbers.
	* gcc.dg/noncompile/950825-1.c: Expect incomplete type error message.
	* gcc.dg/Wcxx-compat-8.c: Likewise.
	* gcc.dg/pr51034.c: New test.
	* gcc.dg/pr53196-1.c: New test.
	* gcc.dg/pr53196-2.c: New test.
From-SVN: r188483
Ian Lance Taylor [Tue, 12 Jun 2012 20:33:22 +0000 (20:33 +0000)]
 
compiler, reflect: Handle package path like gc compiler.
From-SVN: r188482
Janis Johnson [Tue, 12 Jun 2012 20:27:49 +0000 (20:27 +0000)]
 
stackalign.exp: Combine stack alignment torture options with usual torture options.
	* gcc.dg/torture/stackalign/stackalign.exp: Combine stack
	alignment torture options with usual torture options.
	* gcc.dg/torture/stackalign/alloca-2.c: Use dg-additional-options
	instead of dg-options.
	* gcc.dg/torture/stackalign/alloca-3.c: Likewise.
	* gcc.dg/torture/stackalign/alloca-4.c: Likewise.
	* gcc.dg/torture/stackalign/alloca-5.c: Likewise.
	* gcc.dg/torture/stackalign/alloca-6.c: Likewise.
	* gcc.dg/torture/stackalign/push-1.c: Likewise.
	* gcc.dg/torture/stackalign/vararg-3.c: Likewise.
From-SVN: r188481
Janis Johnson [Tue, 12 Jun 2012 20:27:13 +0000 (20:27 +0000)]
 
di-longlong64-sync-withhelpers.c: Add comments to checks for multiple messages reported for one line of source code.
	* gcc.target/arm/di-longlong64-sync-withhelpers.c: Add comments
	to checks for multiple messages reported for one line of source code.
	* gcc.target/arm/di-longlong64-sync-withldrexd.c: Likewise.
From-SVN: r188480
Janis Johnson [Tue, 12 Jun 2012 20:25:48 +0000 (20:25 +0000)]
 
sync-1.c: Add comments to checks for multiple messages reported for one line of source code.
	* gcc.c-torture/compile/sync-1.c: Add comments to checks for multiple
	messages reported for one line of source code.
From-SVN: r188479
Janis Johnson [Tue, 12 Jun 2012 20:25:16 +0000 (20:25 +0000)]
 
20031223-1.c: Add comments to check for multiple messages reported for one line of source code.
	* gcc.dg/
20031223-1.c: Add comments to check for multiple
	messages reported for one line of source code.
	* gcc.dg/Wconversion-integer.c: Likewise.
	* gcc.dg/Wfatal-2.c: Likewise.
	* gcc.dg/Wfatal.c: Likewise.
	* gcc.dg/Wobjsize-1.c: Likewise.
	* gcc.dg/c99-vla-jump-1.c: Likewise.
	* gcc.dg/c99-vla-jump-2.c: Likewise.
	* gcc.dg/c99-vla-jump-3.c: Likewise.
	* gcc.dg/c99-vla-jump-4.c: Likewise.
	* gcc.dg/c99-vla-jump-5.c: Likewise.
	* gcc.dg/decl-9.c: Likewise.
	* gcc.dg/declspec-10.c: Likewise.
	* gcc.dg/declspec-18.c: Likewise.
	* gcc.dg/mtune.c: Likewise.
	* gcc.dg/parser-pr28152-2.c: Likewise.
	* gcc.dg/parser-pr28152.c: Likewise.
	* gcc.dg/pr14475.c: Likewise.
	* gcc.dg/pr27953.c: Likewise.
	* gcc.dg/pr28322-3.c: Likewise.
	* gcc.dg/pr30457.c: Likewise.
	* gcc.dg/pr30551-2.c: Likewise.
	* gcc.dg/pr30551-3.c: Likewise.
	* gcc.dg/pr30551-4.c: Likewise.
	* gcc.dg/pr30551-5.c: Likewise.
	* gcc.dg/pr30551-6.c: Likewise.
	* gcc.dg/pr30551.c: Likewise.
	* gcc.dg/pr45461.c: Likewise.
	* gcc.dg/pr48552-1.c: Likewise.
	* gcc.dg/pr48552-2.c: Likewise.
	* gcc.dg/redecl-1.c: Likewise.
	* gcc.dg/transparent-union-3.c: Likewise.
	* gcc.dg/utf-dflt.c: Likewise.
	* gcc.dg/utf-dflt2.c: Likewise.
	* gcc.dg/vla-8.c: Likewise.
	* gcc.dg/vla-init-1.c: Likewise.
	* gcc.dg/wtr-int-type-1.c: Likewise.
From-SVN: r188478
 
Janis Johnson [Tue, 12 Jun 2012 20:24:28 +0000 (20:24 +0000)]
 
raw-string-3.c: Add comments to checks for multiple messages reported for for one line of...
	* c-c++-common/raw-string-3.c: Add comments to checks for multiple
	messages reported for for one line of source code.
	* c-c++-common/raw-string-5.c: Likewise.
	* c-c++-common/raw-string-4.c: Likewise.
	* c-c++-common/raw-string-6.c: Likewise.
	* c-c++-common/pr20000.c: Likewise.
From-SVN: r188477
Janis Johnson [Tue, 12 Jun 2012 20:23:36 +0000 (20:23 +0000)]
 
include2a.c: Add comments to checks for multiple messages reported for one line of source code.
	* gcc.dg/cpp/include2a.c: Add comments to checks for multiple
	messages reported for one line of source code.
	* gcc.dg/cpp/pr30786.c: Likewise.
	* gcc.dg/cpp/pr28709.c: Likewise.
	* gcc.dg/cpp/missing-header-MD.c: Likewise.
	* gcc.dg/cpp/macspace2.c: Likewise.
	* gcc.dg/cpp/missing-header-1.c: Likewise.
	* gcc.dg/cpp/missing-header-MMD.c: Likewise.
	* gcc.dg/cpp/missing-sysheader-MD.c: Likewise.
	* gcc.dg/cpp/missing-sysheader-MMD.c: Likewise.
From-SVN: r188476
Uros Bizjak [Tue, 12 Jun 2012 19:02:09 +0000 (21:02 +0200)]
 
sync.md (fetchop_name): Change ior attribute to "or".
	* config/ia64/sync.md (fetchop_name): Change ior attribute to "or".
From-SVN: r188475
Jason Merrill [Tue, 12 Jun 2012 18:32:13 +0000 (14:32 -0400)]
 
pt.c (tsubst_expr): Instantiate local class.
	* pt.c (tsubst_expr) [TAG_DEFN]: Instantiate local class.
	* class.c (finish_struct): Don't add a TAG_DEFN for a lambda.
	* decl2.c (finish_static_data_member_decl): Avoid redundant error.
From-SVN: r188474
Jason Merrill [Tue, 12 Jun 2012 18:32:04 +0000 (14:32 -0400)]
 
re PR c++/53599 (gcc-4.7.1_rc20120606 segfaults compiling boost.karma)
	PR c++/53599
	* name-lookup.c (pushtag_1): Add a DECL_EXPR for a local class.
	* semantics.c (finish_cond): Build a COMPOUND_EXPR.
	* pt.c (tsubst_expr) [COMPOUND_EXPR]: Handle.
	[DECL_EXPR]: Don't call cp_finish_decl for an implicit typedef.
	Don't return the decl.
From-SVN: r188473
Jason Merrill [Tue, 12 Jun 2012 18:31:54 +0000 (14:31 -0400)]
 
utf8
From-SVN: r188472
Oleg Endo [Tue, 12 Jun 2012 18:25:40 +0000 (18:25 +0000)]
 
re PR target/53511 (SH Target: Add support for fma patterns)
	PR target/53511
	* gcc.target/sh/pr51340-1.c: Delete obsolete test case.
	* gcc.target/sh/pr51340-2.c: Likewise.
	* gcc.target/sh/pr51340-3.c: Likewise.
From-SVN: r188471
Richard Henderson [Tue, 12 Jun 2012 15:38:21 +0000 (08:38 -0700)]
 
sync.md (atomic_load, [...]): Use INT1 mode iterator instead of INT.
        * config/rs6000/sync.md (atomic_load, atomic_store): Use INT1 mode
        iterator instead of INT.
From-SVN: r188463
Olivier Hainque [Tue, 12 Jun 2012 15:09:11 +0000 (15:09 +0000)]
 
Move Ada specific ChangeLog entry to Ada specific ChangeLog file.
From-SVN: r188461
Bill Schmidt [Tue, 12 Jun 2012 13:38:16 +0000 (13:38 +0000)]
 
opts.c: Add -fhoist-adjacent-loads to -O2 and above.
2012-06-12  Bill Schmidt  <wschmidt@linux.ibm.com>
	* opts.c: Add -fhoist-adjacent-loads to -O2 and above.
	* tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Add argument to forward
	declaration.
	(hoist_adjacent_loads, gate_hoist_loads): New forward declarations.
	(tree_ssa_phiopt): Call gate_hoist_loads.
	(tree_ssa_cs_elim): Add parm to tree_ssa_phiopt_worker call.
	(tree_ssa_phiopt_worker): Add do_hoist_loads to formal arg list; call
	hoist_adjacent_loads.
	(local_mem_dependence): New function.
	(hoist_adjacent_loads): Likewise.
	(gate_hoist_loads): Likewise.
	* common.opt (fhoist-adjacent-loads): New switch.
	* Makefile.in (tree-ssa-phiopt.o): Added dependencies.
From-SVN: r188457
Arnaud Charlet [Tue, 12 Jun 2012 13:16:38 +0000 (15:16 +0200)]
 
[multiple changes]
2012-06-12  Robert Dewar  <dewar@adacore.com>
        * gcc-interface/Make-lang.in: Update dependencies.
	* sem_ch9.ads, einfo.adb, einfo.ads, sem_prag.adb, freeze.adb,
	sem_util.adb, sem_ch13.adb, sem_ch13.ads, exp_ch3.adb: Add comments.
	Minor reformatting.
2012-06-12  Ed Schonberg  <schonberg@adacore.com>
	* sem_ch12.adb (Instantiate_Formal_Subprogram): Remove code that
	implements AI05-0296, because the actual may be overloaded.
	* sem_ch8.adb (Analyze_Subprogram_Renaming): and move it here,
	to be applied once the actual subprogram is properly resolved.
From-SVN: r188456
Arnaud Charlet [Tue, 12 Jun 2012 13:01:22 +0000 (15:01 +0200)]
 
[multiple changes]
2012-06-12  Robert Dewar  <dewar@adacore.com>
	* switch-c.adb, a-exexpr-gcc.adb: Minor reformatting.
2012-06-12  Vincent Pucci  <pucci@adacore.com>
	* checks.adb (Tag_Checks_Suppressed): Remove Kill_Tag_Checks check.
	* einfo.adb (Universal_Aliasing): Apply to the implementation
	base type instead of the base type.
	(Get_Rep_Item_For_Entity):
	Return a pragma if the pragma node is not present in the Rep
	Item chain of the parent.
	(Kill_Tag_Checks): Removed (unused flag).
	(Set_Kill_Tag_Checks): Removed.
	(Get_First_Rep_Item): New routine.
	(Get_Rep_Pragma_For_Entity): New routine.
	(Has_Rep_Item): New routine.
	(Has_Rep_Pragma_For_Entity): New routine.
	(Present_In_Rep_Item): New routine.
	* einfo.ads (Kill_Tag_Checks): Removed.
	(Set_Kill_Tag_Checks): Removed.
	(Get_First_Rep_Item): New routine.
	(Get_Rep_Pragma_For_Entity): New routine.
	(Has_Rep_Item): New routine.
	(Has_Rep_Pragma_For_Entity): New routine.
	(Present_In_Rep_Item): New routine.
	* exp_attr.adb, sem_attr.adb: Attribute_CPU,
	Attribute_Dispatching_Domain and Attribute_Interrupt_Priority
	case added.
	* exp_ch13.adb (Expand_N_Attribute_Definition_Clause): For
	attribute Storage_Size, insert the new assignement statement
	after the Size variable declaration.
	* exp_ch3.adb (Build_Init_Statements): Fill the CPU,
	Dispatching_Domain, Priority and Size components with the Rep
	Item expression (if any).
	* exp_ch9.adb (Expand_N_Task_Type_Declaration): _CPU,
	_Priority, _Domain fields are always present in the
	corresponding record type.
	(Find_Task_Or_Protected_Pragma): Removed.
	(Get_Relative_Deadline_Pragma): New routine.
	(Make_Initialize_Protection): Find_Task_Or_Protected_Pragma removed.
	(Make_Task_Create_Call): Check CPU, Size or
	Dispatching_Domain Rep Item is present using new routine Has_Rep_Item.
	* freeze.adb (Freeze_All): Push_Scope_And_Install_Discriminants
	and Uninstall_Discriminants_And_Pop_Scope calls added.
	(Freeze_Entity): Evaluate_Aspects_At_Freeze_Point call added.
	* sem_aux.adb (Nearest_Ancestor): Retrieve the nearest ancestor
	for private derived types.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Clean-up
	and reordering. Delay analysis for all aspects (except some
	peculiar cases).
	(Analyze_Attribute_Definition_Clause):
	Attribute_CPU, Attribute_Dispatching_Domain,
	Interrupt_Priority and Attribute_Priority cases added.
	(Analyze_Freeze_Entity): Push_Scope_And_Install_Discriminants
	and Uninstall_Discriminants_And_Pop_Scope calls added.
	(Check_Aspect_At_Freeze_Point): Reordering and clean-up.
	(Duplicate_Clause): Issue an explicit error msg when the current
	clause duplicates an aspect specification, an attribute definition
	clause or a pragma.
	(Evaluate_Aspects_At_Freeze_Point): New routine.
	* sem_ch13.ads (Evaluate_Aspects_At_Freeze_Point): New routine.
	* sem_ch9.adb, sem_ch9.ads (Install_Discriminants): New routine.
	(Push_Scope_And_Install_Discriminants): New routine.
	(Uninstall_Discriminants): New routine.
	(Uninstall_Discriminants_And_Pop_Scope): New routine.
	* sem_prag.adb (Check_Duplicate_Pragma): Issue an explicit error
	msg when the current pragma duplicates an aspect specification,
	an attribute definition clause or a pragma.
	(Analyze_Pragma): Remove use of flags Has_Pragma_CPU,
	Has_Pragma_Priority and Has_Pragma_Dispatching_Domain.
	* sem_util.adb (Compile_Time_Constraint_Error): Don't complain
	about the type if the corresponding concurrent type doesn't come
	from source.
	* sinfo.adb, sinfo.ads (Has_Pragma_CPU): Removed.
	(Has_Pragma_Dispatching_Domain): Removed.
	(Has_Pragma_Priority): Removed.
	(Has_Task_Info_Pragma): Removed.
	(Has_Task_Name_Pragma): Removed.
	(Set_Has_Pragma_CPU): Removed.
	(Set_Has_Pragma_Dispatching_Domain): Removed.
	(Set_Has_Pragma_Priority): Removed.
	(Set_Has_Task_Info_Pragma): Removed.
	(Set_Has_Task_Name_Pragma): Removed.
	* snames.adb-tmpl (Get_Pragma_Id): Pragma_CPU,
	Pragma_Dispatching_Domain and Pragma_Interrupt_Priority added.
	(Is_Pragma_Name): Name_CPU, Name_Dispatching_Domain and
	Name_Interrupt_Priority added.
	* snames.ads-tmpl: Name_Dispatching_Domain, Name_CPU
	and Name_Interrupt_Priority moved to the list of
	Attribute_Name. Attribute_CPU, Attribute_Dispatching_Domain and
	Attribute_Interrupt_Priority added.  Pragma_Dispatching_Domain,
	Pragma_CPU and Pragma_Interrupt_Priority moved to the end of
	the Pragma_Name list.
From-SVN: r188455
Arnaud Charlet [Tue, 12 Jun 2012 12:32:29 +0000 (14:32 +0200)]
 
[multiple changes]
2012-06-12  Arnaud Charlet  <charlet@adacore.com>
	* xref_lib.adb (Get_Full_Type): Add support for 'G'.
2012-06-12  Tristan Gingold  <gingold@adacore.com>
	* a-exexpr-gcc.adb (Unwind_Exception): Add 4 more private fields.
2012-06-12  Fedor Rybin  <frybin@adacore.com>
	* gnat_ugn.texi: Update doc on gnattest.
2012-06-12  Robert Dewar  <dewar@adacore.com>
	* sem_ch12.adb: Add comments.
From-SVN: r188453
Robert Dewar [Tue, 12 Jun 2012 12:19:14 +0000 (12:19 +0000)]
 
switch-c.adb, [...]: Minor reformatting.
2012-06-12  Robert Dewar  <dewar@adacore.com>
	* switch-c.adb, inline.adb, usage.adb, opt.ads: Minor reformatting.
From-SVN: r188452
Arnaud Charlet [Tue, 12 Jun 2012 12:11:50 +0000 (14:11 +0200)]
 
[multiple changes]
2012-06-12  Robert Dewar  <dewar@adacore.com>
	* sem_ch12.adb: Minor reformatting.
2012-06-12  Eric Botcazou  <ebotcazou@adacore.com>
	* opt.ads (Inline_Level): New variable.
	* gnat1drv.adb (Adjust_Global_Switches): Set it based on optimization
	level if it has not been set by the user.
	* switch-c.adb (Scan_Front_End_Switches): Accept -gnatn1 and -gnatn2
	and set Inline_Level accordingly.
	* inline.adb (Add_Inlined_Body): Declate new Inline_Level_Type type.
	(Must_Inline): Return Inline_Level_T instead of Boolean to indicate
	whether the package of the inlined subprogram must be compiled.
	If Inline_Level is set to 1, only compile packages of subprograms
	directly called from the main unit.
	* usage.adb (Usage): Adjust line for -gnatn switch.
	* gnat_ugn.texi (Switches for gcc): Document -gnatn1 and -gnatn2.
From-SVN: r188451
Ed Schonberg [Tue, 12 Jun 2012 12:07:11 +0000 (12:07 +0000)]
 
sem_ch12.adb (Instantiate_Formal_Subprogram): Do not apply AI05-296 if the actual is overloaded.
2012-06-12  Ed Schonberg  <schonberg@adacore.com>
	* sem_ch12.adb (Instantiate_Formal_Subprogram): Do not apply
	AI05-296 if the actual is overloaded. In this case The rule must
	be applied after resolution, in Analyze_Subprogram_Renaming.
From-SVN: r188450
Arnaud Charlet [Tue, 12 Jun 2012 11:59:32 +0000 (13:59 +0200)]
 
[multiple changes]
2012-06-12  Robert Dewar  <dewar@adacore.com>
	* stringt.adb: Minor reformatting.
2012-06-12  Robert Dewar  <dewar@adacore.com>
	* ali-util.adb, stringt.ads: Minor reformatting.
2012-06-12  Hristian Kirtchev  <kirtchev@adacore.com>
	* exp_ch7.adb (Process_Declarations): Handle the case where
	the original context has been wrapped in a block to avoid
	interference between exception handlers and At_End handlers.
	(Wrap_HSS_In_Block): Mark the block which contains the original
	statements of the context as being a finalization wrapper.
	* sinfo.adb (Is_Finalization_Wrapper): New routine.
	(Set_Is_Finalization_Wrapper): New routine.
	* sinfo.ads: Add new attribute Is_Finalization_Wrapper applicable
	to block statemnts.
	(Is_Finalization_Wrapper): New routine with corresponding pragma Inline.
	(Set_Is_Finalization_Wrapper): New routine with corresponding pragma
	Inline.
2012-06-12  Steve Baird  <baird@adacore.com>
	* gnat1drv.adb (Adjust_Global_Switches): No longer need to set
	Exception_Extra_Info in CodePeer_Mode.
From-SVN: r188449