1. 17 Jul, 2014 40 commits
    • linux-atomic.c (__sync_lock_release_4): New. · a4137090
      	* config/pa/linux-atomic.c (__sync_lock_release_4): New.
      	(SYNC_LOCK_RELEASE): Update to use __kernel_cmpxchg for release.
      	Don't use SYNC_LOCK_RELEASE for int type.
      
      From-SVN: r212767
      John David Anglin committed
    • p5600.md: Add missing cpu tests. · 1435fa48
      gcc/
      	* config/mips/p5600.md: Add missing cpu tests.
      
      From-SVN: r212765
      Richard Sandiford committed
    • umips-lwp-1.c (foo): Use a shift/add sequence involving both inputs rather than a multiplication... · 13caea3d
      gcc/testsuite/
      	* gcc.target/mips/umips-lwp-1.c (foo): Use a shift/add sequence
      	involving both inputs rather than a multiplication involving one.
      	* gcc.target/mips/umips-lwp-2.c (foo): Likewise.
      	* gcc.target/mips/umips-lwp-3.c (foo): Likewise.
      	* gcc.target/mips/umips-lwp-4.c (foo): Likewise.
      
      From-SVN: r212763
      Richard Sandiford committed
    • re PR c++/50961 (Fails to decay template function properly(?)) · 835dee55
      /cp
      2014-07-17  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50961
      	* call.c (standard_conversion): Use resolve_nondeduced_context
      	for type_unknown_p (EXPR) && TREE_CODE (TO) == BOOLEAN_TYPE.
      
      /testsuite
      2014-07-17  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50961
      	* g++.dg/template/operator13.C: New.
      
      From-SVN: r212760
      Paolo Carlini committed
    • configure.ac: Don't accept isl 0.11. · 37738b0f
      
      	* configure.ac: Don't accept isl 0.11.
      	* configure: Regenerate.
      
      From-SVN: r212758
      Roman Gareev committed
    • [AArch64] Implement vfma_f64, vmla_f64, vfms_f64, vmls_f64 intrinsics. · 1f960ced
      [gcc/]
      	* config/aarch64/arm_neon.h (vfma_f64): New intrinsic.
      	(vmla_f64): Likewise.
      	(vfms_f64): Likewise.
      	(vmls_f64): Likewise.
      
      [testsuite/]
      	* gcc.target/aarch64/simd/vfma_f64.c: New test.
      	* gcc.target/aarch64/simd/vmla_f64.c: Likewise.
      	* gcc.target/aarch64/simd/vfms_f64.c: Likewise.
      	* gcc.target/aarch64/simd/vmls_f64.c: Likewise.
      
      From-SVN: r212756
      Kyrylo Tkachov committed
    • bounds-2.c: Change output pattern. · 0d894170
      gcc/testsuite/
      2014-07-17  Max Ostapenko  <m.ostapenko@partner.samsung.com>
      
      	* c-c++-common/ubsan/bounds-2.c: Change output pattern.
      	* c-c++-common/ubsan/bounds-5.c: Likewise.
      	* c-c++-common/ubsan/bounds-6.c: Likewise.
      	* c-c++-common/ubsan/bounds-7.c: Likewise.
      	* c-c++-common/ubsan/float-cast-overflow-1.c: Likewise.
      	* c-c++-common/ubsan/float-cast-overflow-10.c: Likewise.
      	* c-c++-common/ubsan/float-cast-overflow-2.c: Likewise.
      	* c-c++-common/ubsan/float-cast-overflow-3.c: Likewise.
      	* c-c++-common/ubsan/float-cast-overflow-4.c: Likewise.
      	* c-c++-common/ubsan/float-cast-overflow-5.c: Likewise.
      	* c-c++-common/ubsan/float-cast-overflow-6.c: Likewise.
      	* c-c++-common/ubsan/float-cast-overflow-8.c: Likewise.
      	* gcc.dg/ubsan/float-cast-overflow-bf.c: Likewise.
      	* g++.dg/ubsan/float-cast-overflow-bf.C: Likewise.
      
      From-SVN: r212755
      Max Ostapenko committed
    • [AArch64][tests] Mark vca*_f* tests variable as volatile. · 6ffb7ba3
      	* gcc.target/aarch64/simd/vcaled_f64.c: Mark expected value volatile.
      	* gcc.target/aarch64/simd/vcales_f32.c: Likewise.
      	* gcc.target/aarch64/simd/vcaltd_f64.c: Likewise.
      	* gcc.target/aarch64/simd/vcalts_f32.c: Likewise.
      
      From-SVN: r212754
      Kyrylo Tkachov committed
    • [AArch64] Handle fcvta[su] and frint in RTX cost function. · 61263118
      	* config/aarch64/aarch64.c (aarch64_frint_unspec_p): New function.
      	(aarch64_rtx_costs): Handle FIX, UNSIGNED_FIX, UNSPEC.
      
      From-SVN: r212753
      Kyrylo Tkachov committed
    • [AArch64] Fix argument types for some high_lane* intrinsics implemented in assembly. · ec454483
      	* config/aarch64/arm_neon.h (vmlal_high_lane_s16): Fix type.
      	(vmlal_high_lane_s32): Likewise.
      	(vmlal_high_lane_u16): Likewise.
      	(vmlal_high_lane_u32): Likewise.
      	(vmlsl_high_lane_s16): Likewise.
      	(vmlsl_high_lane_s32): Likewise.
      	(vmlsl_high_lane_u16): Likewise.
      	(vmlsl_high_lane_u32): Likewise.
      
      From-SVN: r212752
      Kyrylo Tkachov committed
    • types.md (alu_reg): Replaced by alu_sreg and alu_dsp_reg. · 1d61feeb
      2014-07-17  Terry Guo  <terry.guo@arm.com>
      
      	* config/arm/types.md (alu_reg): Replaced by alu_sreg and alu_dsp_reg.
      	(alus_reg): Renamed to alus_sreg.
      	* config/arm/arm-fixed.md: Change type of non-dsp instructions
      	from alu_reg to alu_sreg.  Change type of dsp instructions from
      	alu_reg to alu_dsp_reg.
      	* config/arm/thumb1.md: Likewise.
      	* config/arm/thumb2.md: Likewise.
      	* config/arm/arm.c (cortexa7_older_only): Use new ALU type names.
      	* config/arm/arm1020e.md (1020alu_op): Replace alu_reg and alus_reg
      	with alu_sreg and alus_sreg.
      	* config/arm/arm1026ejs.md (alu_op): Likewise.
      	* config/arm/arm1136jfs.md (11_alu_op): Likewise.
      	* config/arm/arm926ejs.md (9_alu_op): Likewise.
      	* config/arm/fa526.md (526_alu_op): Likewise.
      	* config/arm/fa606te.md (606te_alu_op): Likewise.
      	* config/arm/fa626te.md (626te_alu_op): Likewise.
      	* config/arm/fa726te.md (726te_alu_op): Likewise.
      	* config/arm/fmp626.md (mp626_alu_op): Likewise.
      	* config/arm/arm.md (core_cycles): Replace alu_reg and alus_reg with
      	alu_sreg, alu_dsp_reg and alus_sreg.     
      	* config/arm/cortex-a15.md (cortex_a15_alu): Likewise.
      	* config/arm/cortex-a5.md (cortex_a5_alu): Likewise.
      	* config/arm/cortex-a53.md (cortex_a53_alu): Likewise.
      	* config/arm/cortex-a7.md (cortex_a7_alu_sreg): Likewise.
      	* config/arm/cortex-a8.md (cortex_a8_alu): Likewise.
      	* config/arm/cortex-a9.md (cortex_a9_dp): Likewise.
      	* config/arm/cortex-m4.md (cortex_m4_alu): Likewise.
      	* config/arm/cortex-r4.md (cortex_r4_alu): Likewise.
      	* config/arm/marvell-pj4.md (pj4_alu, pj4_alu_conds): Likewise.
      	* config/aarch64/aarch64.md (*addsi3_aarch64, *addsi3_aarch64_uxtw,
      	subsi3, *adddi3_aarch64, *subsi3_uxtw, subdi3, absdi2, neg<mode>2,
      	*negsi2_uxtw, tlsle_small_<mode>): Rename type alu_reg to alu_sreg.     
      	(add<mode>3_compare0, *addsi3_compare0_uxtw, *add<mode>3nr_compare0,
      	sub<mode>3_compare0, *compare_neg<mode>, *neg<mode>2_compare0,
      	subsi3_compare0_uxtw, *negsi2_compare0_uxtw, *cmp<mode>): Rename type 
      	alus_reg to alus_sreg.
      
      From-SVN: r212750
      Terry Guo committed
    • c11-atomic-exec-5.c (dg-additional-options): Use -mfp-trap-mode=sui instead of… · 72b9a00b
      c11-atomic-exec-5.c (dg-additional-options): Use -mfp-trap-mode=sui instead of -miee-with-inexact for alpha*-*-*.
      
      	* gcc.dg/atomic/c11-atomic-exec-5.c (dg-additional-options): Use
      	-mfp-trap-mode=sui instead of -miee-with-inexact for alpha*-*-*.
      	* gfortran.dg/ieee/ieee_1.F90 (dg-additional-options): Ditto.
      
      From-SVN: r212748
      Uros Bizjak committed
    • Summary: Generate canonical infinity for the Motorola extended real format · 4b1d78b4
      * real.c (encode_ieee_extended_motorola): Clear integer bit in the
      infinity format.
      
      From-SVN: r212744
      Andreas Schwab committed
    • re PR c++/61804 (rejects-valid if parenthesized temporary is incremented) · cfe309a1
      /cp
      2014-07-17  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/61804
      	* parser.c (cp_parser_tokens_start_cast_expression): Return -1
      	for '++' and '--'.
      
      /testsuite
      2014-07-17  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/61804
      	* g++.dg/parse/pr61804.C: New.
      
      From-SVN: r212743
      Paolo Carlini committed
    • re PR rtl-optimization/61801 (sched2 miscompiles syscall sequence with -g) · bf95b629
      2014-07-17  Richard Biener  <rguenther@suse.de>
      
      	PR rtl-optimization/61801
      	* sched-deps.c (sched_analyze_2): For ASM_OPERANDS and
      	ASM_INPUT don't set reg_pending_barrier if it appears in a
      	debug-insn.
      
      From-SVN: r212738
      Richard Biener committed
    • [multiple changes] · 6782b1ef
      2014-07-17  Gary Dismukes  <dismukes@adacore.com>
      
      	* exp_disp.adb: Minor reformatting.
      	* exp_disp.adb: Minor code reorganization.
      
      2014-07-17  Thomas Quinot  <quinot@adacore.com>
      
      	* gnat_rm.texi, freeze.adb (Check_Component_Storage_Order): Do not
      	require an explicit SSO attribute definition clause on a composite type
      	just because one of its components has one.
      
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* sem_attr.adb (Analyze_Attribute, case Loop_Entry): Rewrite
      	attribute out of existence if the enclosing pragma is ignored.
      	* sem_util.adb: Minor reformatting.
      
      2014-07-17  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_aggr.adb (Expand_Array_Aggregate): Handle properly an
      	array aggregate expanded into assignments when it appears as a
      	local declaration in an inlined body.
      
      2014-07-17  Doug Rupp  <rupp@adacore.com>
      
      	* init.c [__ANDROID__]: Modify for ZCX.
      	* exp_aggr.adb: Minor reformatting
      	* sigtramp-armvxw.c, sigtramp-ppcvxw.c: Update comments.
      
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* a-strunb-shared.ads, a-stwiun-shared.ads, a-stzunb-shared.ads,
      	exp_ch7.adb, g-pehage.ads, g-socket.ads, gnat_ugn.texi, gnat_ugx.texi,
      	scng.adb: Remove incorrect usage "allow to" and "allows to".
      
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* exp_dist.adb: Minor reformatting.
      
      From-SVN: r212737
      Arnaud Charlet committed
    • [multiple changes] · 6ccdd977
      2014-07-17  Bob Duff  <duff@adacore.com>
      
      	* gnat_ugn.texi: Improve documentation of Unrestricted_Access.
      
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch13.adb (Build_Invariant_Procedure): Add variable Nam
      	(Add_Invariants): Set Nam to Name_Type_Invariant if from aspect.
      
      2014-07-17  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_pakd.adb (Create_Packed_Array_Type.Install_PAT): For a
      	non-bit-packed array, propagate Reverse_Storage_Order to the
      	packed array type.
      
      2014-07-17  Javier Miranda  <miranda@adacore.com>
      
      	* exp_disp.adb: Fix comment.
      	* exp_pakd.adb: Minor reformatting.
      
      From-SVN: r212736
      Arnaud Charlet committed
    • bindgen.adb (Gen_Elab_Calls): Skip reference to elab entity if none exists… · d8941160
      bindgen.adb (Gen_Elab_Calls): Skip reference to elab entity if none exists (Gen_Elab_Calls): Complain if...
      
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* bindgen.adb (Gen_Elab_Calls): Skip reference to elab
      	entity if none exists (Gen_Elab_Calls): Complain if clash with
      	No_Multiple_Elaboration.
      	* s-rident.ads, restrict.ads: Add restriction No_Multiple_Elaboration.
      	* sem_util.adb (Build_Elaboration_Entity): Skip building entity
      	if not needed.
      	* gnat_rm.texi: Document restriction No_Multiple_Elaboration.
      	* sem_ch4.adb: Minor comment updates.
      
      From-SVN: r212735
      Robert Dewar committed
    • [multiple changes] · bf561f2b
      2014-07-17  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch9.adb (Buid_Protected_Subprogram_Call): Preserve type
      	of function call for later use when shared passive objects
      	are involved.
      
      2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* par-ch13.adb (Get_Aspect_Specifications):
      	Catch a case where the argument of SPARK aspect Refined_State
      	is not properly parenthesized.
      
      2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch6.adb (Expand_Ctrl_Function_Call): Do not extend
      	the lifetime of a reference to an Ada 2012 container element.
      	(Is_Element_Reference): New routine.
      
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* ali.ads: Minor comment fix.
      	* lib-writ.adb: Minor reformatting.
      
      2014-07-17  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch10.adb (Analyze_Proper_Body): When analyzing a subunit
      	in ASIS mode, load another subunit only if it a subunit of the
      	current one, not a sibling that has been reached through the
      	analysis of an ancestor. This allows the construction of the
      	ASIS tree for the subunit even when sibling subunits have errors.
      
      2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch3.adb (Analyze_Declarations): Remove the guard which
      	prevents the analysis of various contracts when the associated
      	construct is erroneous.
      	* sem_util.adb (Save_SPARK_Mode_And_Set): Do not query the
      	SPARK_Pragma of an illegal or a partially decorated construct.
      
      From-SVN: r212734
      Arnaud Charlet committed
    • [multiple changes] · 8a5e4b2a
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* s-imguns.ads: Minor reformatting.
      
      2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch7.adb (Build_Finalization_Master): Move all local
      	variables to the proper code section. When looking for an existing
      	finalization master, inspect the ultimate ancestor type of the
      	full view.
      	* sem_util.ads, sem_util.adb (Root_Type_Of_Full_View): New routine.
      
      From-SVN: r212733
      Arnaud Charlet committed
    • [multiple changes] · 52d9ba4d
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* aspects.ads, aspects.adb: Add entries for aspect Annotate.
      	* gnat_rm.texi: Document Entity argument for pragma Annotate and
      	Annotate aspect.
      	* sem_ch13.adb (Analyze_Aspect_Specification): Add processing
      	for Annotate aspect.
      	* sem_prag.adb (Analyze_Pragma, case Annotate): Allow optional
      	Entity argument at end.
      	* sinfo.ads (N_Aspect_Specification): Add note on Annotate aspect.
      
      2014-07-17  Tristan Gingold  <gingold@adacore.com>
      
      	* s-imguns.ads: Fix minor typo.
      
      2014-07-17  Thomas Quinot  <quinot@adacore.com>
      
      	* sprint.adb: Minor reformatting.
      
      From-SVN: r212732
      Arnaud Charlet committed
    • [multiple changes] · b16ffa33
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* sprint.adb (Write_Itype): Print proper header for string
      	literal subtype.
      
      2014-07-17  Steve Baird  <baird@adacore.com>
      
      	* sinfo.ads, sem_scil.ads: Improve comments, minor reformatting.
      
      From-SVN: r212731
      Arnaud Charlet committed
    • [multiple changes] · 7b966a95
      2014-07-17  Vincent Celier  <celier@adacore.com>
      
      	* gnatbind.adb: Change in message "try ... for more information".
      
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* sprint.adb: Code clean up.
      
      2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch7.adb (Find_Last_Init): Relocate local variables to
      	the relevant code section. Add new local constant Obj_Id. When
      	a limited controlled object is initialized by a function call,
      	the build-in-place object access function call acts as the last
      	initialization statement.
      	* exp_util.adb (Is_Object_Access_BIP_Func_Call): New routine.
      	(Is_Secondary_Stack_BIP_Func_Call): Code reformatting.
      	* exp_util.ads (Is_Object_Access_BIP_Func_Call): New routine.
      
      2014-07-17  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch8.adb (Analyze_Generic_Renaming): For generic subprograms,
      	propagate intrinsic flag to renamed entity, to allow e.g. renaming
      	of Unchecked_Conversion.
      	* sem_ch3.adb (Analyze_Declarations): Do not analyze contracts
      	if the declaration has errors.
      
      2014-07-17  Ed Schonberg  <schonberg@adacore.com>
      
      	* a-rbtgbk.adb: a-rbtgbk.adb (Generic_Insert_Post): Check whether
      	container is busy before checking whether capacity allows for
      	a further insertion. Insertion in a busy container that is full
      	raises Program_Error rather than Capacity_Error. Previous to that
      	patch which exception was raised varied among container types.
      
      From-SVN: r212730
      Arnaud Charlet committed
    • [multiple changes] · 44ccf4b4
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* g-comlin.ads, g-comlin.adb: Minor clean up.
      
      2014-07-17  Bob Duff  <duff@adacore.com>
      
      	* gnat_ugn.texi: Update gnatpp doc.
      
      From-SVN: r212729
      Arnaud Charlet committed
    • [multiple changes] · bb012790
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Document new restriction No_Long_Long_Integers.
      	* exp_ch4.adb (Make_Array_Comparison_Op): Add note that we
      	could do this by actually expanding a real generic.
      	* a-tags.ads: Add comments about performance.
      	* sprint.adb (Sprint_Node_Actual, case N_Object_Declaration):
      	Print Etype of defining identifier, rather than the object
      	definition. More information.
      
      2014-07-17  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_dist.adb: Minor documentation clarification.
      
      2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_util.adb (Is_Aliased): Revert previous change.
      
      2014-07-17  Vincent Celier  <celier@adacore.com>
      
      	* g-comlin.adb (Try_Help): New procedure.
      	(Getopt): Use new procedure Try_Help.
      	* g-comlin.ads (Try_Help): New procedure.
      
      2014-07-17  Bob Duff  <duff@adacore.com>
      
      	* gnat_ugn.texi: Minor update.
      
      From-SVN: r212728
      Arnaud Charlet committed
    • gnat_rm.texi: Improve documentation of Unrestricted_Access. · ee10c0ec
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Improve documentation of Unrestricted_Access.
      	* sinfo.ads: Document restriction on aggregates (must expand to
      	assignments if one or more assignments needs expansion, e.g. for
      	controlled types).
      	* sem_ch13.adb: All warning messages regarding bit order should
      	be info: messages.
      	* gnat_ugn.texi: Minor correction of missing @ on @code
      
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* restrict.ads (Implementation_Restriction): Add No_Long_Long_Integer.
      	* s-rident.ads (Partition_Boolean_Restrictions): Add
      	No_Long_Long_Integer.
      	* sem_ch3.adb (Modular_Type_Declaration): Size must be <=
      	Long_Integer'Size if restriction No_Long_Long_Integer is active.
      	(Signed_Integer_Type_Declaration): Do not allow Long_Long_Integer
      	as the implicit base type for a signed integer type declaration
      	if restriction No_Long_Long_Integer is active.
      	* sem_util.ads, sem_util.adb (Set_Entity_With_Checks): Include check for
      	No_Long_Long_Integer.
      
      From-SVN: r212727
      Robert Dewar committed
    • sem_ch3.adb, [...]: Remove the word kludge from ada sources. · e80f0cb0
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.adb, a-ztexio.ads, exp_imgv.adb, casing.adb, casing.ads,
      	einfo.ads, checks.adb, sem_ch12.adb, a-textio.ads, freeze.adb,
      	repinfo.adb, exp_ch6.adb, sem_ch4.adb, a-witeio.ads, sem_ch8.adb,
      	sem_warn.adb, exp_aggr.adb, exp_dist.adb, par-tchk.adb, s-fatgen.adb,
      	treepr.adb, lib-xref.adb: Remove the word kludge from ada sources.
      
      From-SVN: r212726
      Robert Dewar committed
    • debug.adb: Remove -gnatdQ. · 2bd67690
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* debug.adb: Remove -gnatdQ.
      	* exp_disp.adb: Remove -gnatdQ.
      	* a-ztenio.ads, a-wtinio.ads, a-wtmoio.ads, a-ztcoau.ads, a-tiinio.ads,
      	a-wtfiio.ads, a-timoio.ads, sem_ch12.adb, a-tifiio.ads, a-ztinio.ads,
      	rtsfind.adb, rtsfind.ads, a-ztmoio.ads, a-wtdeio.ads, a-ztfiio.ads,
      	a-tideio.ads, a-wtflio.ads, a-ztdeio.ads, sem_ch8.adb, a-tiflio.ads,
      	sprint.adb, a-ztflio.ads, snames.ads-tmpl, a-wtenio.ads,
      	a-tienio.ads: Rename Text_IO_Kludge to Text_IO_Special_Unit.
      
      From-SVN: r212725
      Robert Dewar committed
    • back_end.adb: Minor reformatting and comment additions. · 59f4d038
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* back_end.adb: Minor reformatting and comment additions.
      	* checks.ads, checks.adb (Duplicated_Tag_Checks_Suppressed): New
      	function.
      	* exp_disp.adb (Make_DT): Use Duplicated_Tag_Checks_Suppressed.
      	(Make_VM_TSD): Use Duplicated_Tag_Checks_Suppressed.
      	* gnat_rm.texi: Document new check Duplicated_Tag_Checks_Suppressed.
      	* gnat_ugn.texi: Additional documentation for Duplicated_Tag_Check.
      	* snames.ads-tmpl (Duplicated_Tag_Checks_Suppressed): New check.
      	* types.ads (Duplicated_Tag_Checks_Suppressed): New check.
      
      From-SVN: r212724
      Robert Dewar committed
    • [multiple changes] · 26d5fb62
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Minor comment updates.
      
      2014-07-17  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_util.adb (Make_Explicit_Dereference): If the expression
      	being dereferenced is a generalized indexing, reset the overloaded
      	flag on the generalized indexing call, consistent with the
      	resetting of the flag on the original indexed component.
      
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_ugn.texi: Document advise not to mix -gnatV? and
      	optimization.
      
      From-SVN: r212723
      Arnaud Charlet committed
    • [multiple changes] · c61ef416
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* sem_aux.ads: Minor comment addition.
      
      2014-07-17  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_res.adb (Make_Call_Into_Operator): If the call is already
      	a rewriting of an operator node, there are no actuals to be
      	propagated from original node to rewritten node when in ASIS mode.
      
      2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch6.adb (Analyze_Subprogram_Body_Contract,
      	Analyze_Subprogram_Contract): Add new local variable Mode. Save
      	and restore the SPARK mode of the related construct in a
      	stack-like fashion.
      	* sem_ch7.adb (Analyze_Package_Body_Contract,
      	Analyze_Package_Contract): Add new local variable Mode. Save and
      	restore the SPARK mode of the related construct in a stack-like fashion.
      	* sem_util.adb Remove with and use clause for Opt.
      	(Restore_SPARK_Mode): New routine.
      	(Save_SPARK_Mode_And_Set): New routine.
      	* sem_util.ads Add with and use clause for Opt.
      	(Restore_SPARK_Mode): New routine.
      	(Save_SPARK_Mode_And_Set): New routine.
      
      2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_util.adb (Is_Aliased): Transient objects
      	within an expression with actions cannot be considered aliased.
      
      From-SVN: r212721
      Arnaud Charlet committed
    • [multiple changes] · 36295779
      2014-07-17  Thomas Quinot  <quinot@adacore.com>
      
      	* sem.ads (Scope_Stack_Entry): Reorganize storage of action lists;
      	introduce a new list (cleanup actions) for each (transient) scope.
      	* sinfo.ads, sinfo.adb (Cleanup_Actions): New attribute for
      	N_Block_Statement
      	* exp_ch7.ads (Store_Cleanup_Actions_In_Scope): New subprogram.
      	* exp_ch7.adb (Store_Actions_In_Scope): New subprogram, common
      	processing for Store_xxx_Actions_In_Scope.
      	(Build_Cleanup_Statements): Allow for a list of additional
      	cleanup statements to be passed by the caller.
      	(Expand_Cleanup_Actions): Take custom cleanup actions associated
      	with an N_Block_Statement into account.
      	(Insert_Actions_In_Scope_Around): Account for Scope_Stack_Entry
      	reorganization (refactoring only, no behaviour change).
      	(Make_Transient_Block): Add assertion to ensure that the current
      	scope is indeed a block (namely, the entity for the transient
      	block being constructed syntactically, which has already been
      	established as a scope).  If cleanup actions are present in the
      	transient scope, transfer them now to the transient block.
      	* exp_ch6.adb (Expand_Protected_Subprogram_Call): Freeze the
      	called function while it is still present as the name in a call
      	in the tree. This may not be the case later on if the call is
      	rewritten into a transient block.
      	* exp_smem.adb (Add_Shared_Var_Lock_Procs): The post-actions
      	inserted after calling a protected operation on a shared passive
      	protected must be performed in a block finalizer, not just
      	inserted in the tree, so that they are executed even in case of
      	a normal (RETURN) or abnormal (exception) transfer of control
      	outside of the current scope.
      	* exp_smem.ads (Add_Shared_Var_Lock_Procs): Update documentation
      	* sem_ch8.adb, expander.adb, exp_ch11.adb: Adjust for
      	Scope_Stack_Entry reorganization.
      
      2014-07-17  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_disp.adb (Make_DT, Make_VM_TSD): Do not omit Check_TSD
      	call for types that do not have an explicit attribute definition
      	clause for External_Tag, as their default tag may clash with an
      	explicit tag defined for some other type.
      
      2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_util.adb (Is_Controlled_Function_Call): Recognize a
      	controlled function call with multiple actual parameters that
      	appears in Object.Operation form.
      
      2014-07-17  Thomas Quinot  <quinot@adacore.com>
      
      	* einfo.ads, einfo.adb (Has_External_Tag_Rep_Clause): Remove
      	entity flag.
      	* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
      	External_Tag): No need to set entity flag.
      	* sem_aux.ads, sem_aux.adb (Has_External_Tag_Rep_Clause):
      	Reimplement correctly in terms of Has_Rep_Item.
      
      From-SVN: r212719
      Arnaud Charlet committed
    • exp_ch7.adb (Establish_Transient_Scope.Find_Node_To_Be_Wrapped): Start examining… · f65c67d3
      exp_ch7.adb (Establish_Transient_Scope.Find_Node_To_Be_Wrapped): Start examining the tree at the node passed to Establish_Transient_Scope (not...
      
      2014-07-17  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_ch7.adb (Establish_Transient_Scope.Find_Node_To_Be_Wrapped):
      	Start examining the tree at the node passed to
      	Establish_Transient_Scope (not its parent).
      	* exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
      	The access type for the variable storing the reference to
      	the call must be declared and frozen prior to establishing a
      	transient scope.
      	* exp_ch9.adb: Minor reformatting.
      
      From-SVN: r212718
      Thomas Quinot committed
    • [multiple changes] · a1d3851b
      2014-07-17  Pascal Obry  <obry@adacore.com>
      
      	* s-os_lib.ads: Minor comment update.
      
      2014-07-17  Tristan Gingold  <gingold@adacore.com>
      
      	* sysdep.c: Add ATTRIBUTE_UNUSED to avoid warnings.  Fix some
      	indentation.
      	* socket.c: Remove #warning to avoid warning.
      	* expect.c: Indent some preprocessor directives to clarify
      	nested if.  Do not use wait.h on PikeOS.  Add ATTRIBUTE_UNUSED
      	to remove warnings.
      	* env.c: Fix indentation.  Port to PikeOS.
      	* gsocket.h: Port to PikeOS.  Remove #warning.
      	* terminals.c: Port to PikeOS.	Fix indentation of the stubs.
      	Add ATTRIBUTE_UNUSED to stubs arguments.  Fix return statement
      	of stubbed __gnat_setup_parent_communication.
      	* adaint.c: Port to PikeOS.  Reindent some preprocessor
      	directives to clarify nested if.  Fix indentation.  Add missing
      	ATTRIBUTE_UNUSED.
      
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* sem_attr.adb: Minor reformatting.
      
      From-SVN: r212717
      Arnaud Charlet committed
    • [multiple changes] · d2d8b2a7
      2014-07-17  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch7.adb, exp_ch7.ads, sinfo.ads: Minor reformatting.
      
      2014-07-17  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_case.adb (Check_Choice_Set): If the case expression is the
      	expression in a predicate, do not recheck coverage against itself,
      	to prevent spurious errors.
      	* sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): Indicate that
      	expression comes from an aspect specification, to prevent spurious
      	errors when expression is a case expression in a predicate.
      
      2014-07-17  Pascal Obry  <obry@adacore.com>
      
      	* adaint.c, adaint.h (__gnat_set_executable): Add mode parameter.
      	* s-os_lib.ads, s-os_lib.adb (Set_Executable): Add Mode parameter.
      
      2014-07-17  Vincent Celier  <celier@adacore.com>
      
      	* gnatchop.adb, make.adb, gnatbind.adb, clean.adb, gprep.adb,
      	gnatxref.adb, gnatls.adb, gnatfind.adb, gnatname.adb: Do not output
      	the usage for an erroneous invocation of a gnat tool.
      
      From-SVN: r212716
      Arnaud Charlet committed
    • rx.c (rx_option_override): Fix alignment values. · 3fad4d00
      * config/rx/rx.c (rx_option_override): Fix alignment values.
      (rx_align_for_label): Likewise.
      
      From-SVN: r212710
      DJ Delorie committed
    • Tweak date last change. · e832590c
      From-SVN: r212709
      Hans-Peter Nilsson committed
    • re PR target/61737 (ICE when building libgcc for cris cross-compiler) · ab4e53fe
      	PR target/61737.
      	* config/cris/cris.c (TARGET_LEGITIMATE_CONSTANT_P)
      	(TARGET_CANNOT_FORCE_CONST_MEM): Define.
      	(cris_cannot_force_const_mem, cris_legitimate_constant_p): New
      	functions.
      	(cris_print_index, cris_print_operand, cris_constant_index_p)
      	(cris_side_effect_mode_ok): Replace CONSTANT_P with CRIS_CONSTANT_P.
      	(cris_address_cost): Ditto last CONSTANT_P.
      	(cris_symbol_type_of): Rename from cris_pic_symbol_type_of.  All
              callers changed.  Yield cris_offsettable_symbol for non-PIC
              constant symbolic expressions including labels.  Yield cris_unspec
      	for all unspecs.
      	(cris_expand_pic_call_address): New parameter MARKERP.  Set its
              target to pic_offset_table_rtx for calls that will likely go
              through PLT, const0_rtx when they can't.  All callers changed.
      	Assert flag_pic.  Use CONSTANT_P, not CONSTANT_ADDRESS_P, for
      	symbolic expressions to be PICified.  Remove second, redundant,
      	assert on can_create_pseudo_p returning non-zero.  Use
      	replace_equiv_address_nv, not replace_equiv_address, for final
      	operand update.
      	* config/cris/cris.md ("movsi"): Move variable t to pattern
      	toplevel. Adjust assert for new cris_symbol_type member.  Use
      	CONSTANT_P instead of CONSTANT_ADDRESS_P.
      	("*movsi_internal") <case 9>: Make check for valid unspec operands
      	for lapc stricter.
      	<case CRIS_UNSPEC_PCREL, CRIS_UNSPEC_PLT_PCREL>: Clear condition
      	codes.
      	("call", "call_value"): Use second incoming operand as a marker
      	for pic-offset-table-register being used.
      	("*expanded_call_non_v32", "*expanded_call_v32")
              ("*expanded_call_value_non_v32", "*expanded_call_value_v32"): For
      	second incoming operand to CALL, match cris_call_type_marker.
      	("*expanded_call_value_side"): Ditto.  Disable before
      	reload_completed.
      	("*expanded_call_side"): Ditto.  Fix typo in comment.
      	(moverside, movemside peepholes): Check for CRIS_CONSTANT_P, not
      	CONSTANT_P.
      	* config/cris/predicates.md ("cris_call_type_marker"): New predicate.
      	* config/cris/cris.h (CRIS_CONSTANT_P): New macro.
      	(enum cris_symbol_type): Rename from cris_pic_symbol_type.  All
              users changed.  Add members cris_offsettable_symbol and
      	cris_unspec.
      	(cris_symbol_type): Rename from cris_pic_symbol_type.
      	* config/cris/constraints.md ("T"): Use CRIS_CONSTANT_P, not
              just CONSTANT_P.
      	* config/cris/cris-protos.h (cris_symbol_type_of,
      	cris_expand_pic_call_address): Adjust prototypes.
      	(cris_legitimate_constant_p): New prototype.
      
      From-SVN: r212708
      Hans-Peter Nilsson committed
    • config.gcc (crisv32-*-linux* | cris-*-linux*): Do not override an existing tmake_file. · 3a213afb
      	* config.gcc (crisv32-*-linux* | cris-*-linux*): Do not override
      	an existing tmake_file.  Don't add t-slibgcc and t-linux.
      
      From-SVN: r212707
      Hans-Peter Nilsson committed
    • re PR c++/61623 (ICE: verify_symtab failed: Two symbols with same comdat_group… · c6f884c0
      re PR c++/61623 (ICE: verify_symtab failed: Two symbols with same comdat_group are not linked by the same_comdat_group list.)
      
      	PR c++/61623
      	* symtab.c (symtab_remove_from_same_comdat_group): Also
      	set_comdat_group to NULL_TREE.
      	(verify_symtab): Fix diagnostic.
      
      From-SVN: r212705
      Jason Merrill committed