1. 20 Oct, 2015 40 commits
    • Pass --secure-plt to the linker · efbab234
      	* config/rs6000/secureplt.h (LINK_SECURE_PLT_DEFAULT_SPEC): Define.
      	* config/rs6000/sysv4.h (LINK_SECURE_PLT_SPEC): Define.
      	(LINK_SPEC): Add %(link_secure_plt).
      	(SUBTARGET_EXTRA_SPECS): Add "link_secure_plt".
      	* config/rs6000/linux64.h (LINK_SECURE_PLT_SPEC): Redefine.
      
      
      Co-Authored-By: Alan Modra <amodra@gmail.com>
      Co-Authored-By: Szabolcs Nagy <szabolcs.nagy@arm.com>
      
      From-SVN: r229102
      Gregor Richards committed
    • reduction-5.c: Set sane vector_length. · 9ef83c04
      	* testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Set sane
      	vector_length.
      	* testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
      
      From-SVN: r229100
      Nathan Sidwell committed
    • array-notation-common.c (is_cilkplus_vector_p): Define. · fa60eeb9
      	* array-notation-common.c (is_cilkplus_vector_p): Define.
      	* c-common.h (is_cilkplus_vector_p): Declare.
      
      	* c-parser.c (is_cilkplus_vector_p): Don't define here.
      
      	* parser.c (is_cilkplus_vector_p): Don't define here.
      
      From-SVN: r229099
      Marek Polacek committed
    • compiler: Report errors after evaluating invalid constant. · 0e993e39
          
          The fix for golang/go#11541 made the assertion that getting an invalid
          Numeric_constant after evaluating an invalid constant must result in
          an error in a binary expression.  However, a Numeric_constant can be
          invalid if it is unset, which occurs when either operand cannot be
          converted to the right type.  These errors are issued after the
          Numeric_constant is lowered.
          
          Fixes golang/go#12615.
          
          Reviewed-on: https://go-review.googlesource.com/14646
      
      From-SVN: r229098
      Ian Lance Taylor committed
    • compiler: Report errors for non-integral shift counts. · 28c64f64
          
          Fixes golang/go#12618.
          
          Reviewed-on: https://go-review.googlesource.com/14647
      
      From-SVN: r229096
      Ian Lance Taylor committed
    • musl support for sh · 51090a41
      	* config/sh/linux.h (MUSL_DYNAMIC_LINKER): Define.
      	(MUSL_DYNAMIC_LINKER_E, MUSL_DYNAMIC_LINKER_FP): Define.
      
      
      Co-Authored-By: Szabolcs Nagy <szabolcs.nagy@arm.com>
      
      From-SVN: r229095
      Gregor Richards committed
    • [AArch64] Add support for 64-bit vector-mode ldp/stp · abc52318
      	* config/aarch64/aarch64.c (aarch64_mode_valid_for_sched_fusion_p):
      	New function.
      	(fusion_load_store): Use it.
      	* config/aarch64/aarch64-ldpstp.md: Add new peephole2s for
      	ldp and stp in VD modes.
      	* config/aarch64/aarch64-simd.md (load_pair<mode>, VD): New pattern.
      	(store_pair<mode>, VD): Likewise.
      
      	* gcc.target/aarch64/stp_vec_64_1.c: New test.
      	* gcc.target/aarch64/ldp_vec_64_1.c: Likewise.
      
      From-SVN: r229094
      Kyrylo Tkachov committed
    • [Testsuite] Turn on 64-bit-vector tests for AArch64. · 361efe05
      	* lib/target-supports.exp (check_effective_target_vect64): Add AArch64.
      
      From-SVN: r229092
      Alan Lawrence committed
    • re PR c/67964 (Multiple attributes wrongly accepted without commas) · 2c7020eb
      	PR c/67964
      	* c-parser.c (c_parser_attributes): Break out of the loop if the
      	token after an attribute isn't a comma.
      
      	* gcc.dg/pr67964.c: New test.
      
      From-SVN: r229091
      Marek Polacek committed
    • Add --enable-compressed-debug-sections={all,gas,gold,ld} · 78edb32f
      This patch removes the gas configure option:
      
      --enable-compressed-debug-sections
      
      and adds a toplevel configure option:
      
      --enable-compressed-debug-sections={all,gas,gold,ld}
      
      to enable compressed debug sections for gas, gold or ld by default.  At
      the moment, this configure option is ignored by gold and ld.  For x86
      Linux targets, default to compressing debug sections in gas.
      
      	Sync with binutils-gdb:
      	PR gas/19109
      	* configure.ac: Add
      	--enable-compressed-debug-sections={all,gas,gold,ld}.
      	* configure: Regenerated.
      
      From-SVN: r229088
      H.J. Lu committed
    • re PR rtl-optimization/67609 (Generates wrong code for SSE2 _mm_load_pd) · 8cda1c3e
      2015-10-20  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR rtl-optimization/67609
      	* lra-splill.c (lra_final_code_change): Don't remove all
      	sub-registers.
      
      2015-10-20  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR rtl-optimization/67609
      	* gcc.target/i386/pr67609.c: New.
      
      From-SVN: r229087
      Vladimir Makarov committed
    • [simplify-rtx][2/2] Use constants from pool when simplifying binops · bfb792b6
      	* simplify-rtx.c (simplify_binary_operation): If either operand was
      	a constant pool reference use them if all other simplifications failed.
      
      	* gcc.target/aarch64/fmul_fcvt_1.c: Add multiply-by-32 cases.
      
      From-SVN: r229086
      Kyrylo Tkachov committed
    • [AArch64][1/2] Add fmul-by-power-of-2+fcvt optimisation · 39252973
      	* config/aarch64/aarch64.md
      	(*aarch64_fcvt<su_optab><GPF:mode><GPI:mode>2_mult): New pattern.
      	* config/aarch64/aarch64-simd.md
      	(*aarch64_fcvt<su_optab><VDQF:mode><fcvt_target>2_mult): Likewise.
      	* config/aarch64/aarch64.c (aarch64_rtx_costs): Handle above patterns.
      	(aarch64_fpconst_pow_of_2): New function.
      	(aarch64_vec_fpconst_pow_of_2): Likewise.
      	* config/aarch64/aarch64-protos.h (aarch64_fpconst_pow_of_2): Declare
      	prototype.
      	(aarch64_vec_fpconst_pow_of_2): Likewise.
      	* config/aarch64/predicates.md (aarch64_fp_pow2): New predicate.
      	(aarch64_fp_vec_pow2): Likewise.
      
      	* gcc.target/aarch64/fmul_fcvt_1.c: New test.
      	* gcc.target/aarch64/fmul_fcvt_2.c: Likewise.
      
      From-SVN: r229085
      Kyrylo Tkachov committed
    • alpha.h (HARD_REGNO_NREGS): Use CEIL macro. · 6c27ebdb
      	* config/alpha/alpha.h (HARD_REGNO_NREGS): Use CEIL macro.
      	(ALPHA_ARG_SIZE): Ditto.  Remove unused NAMED argument.
      	* config/alpha/alpha.c (alpha_function_arg_advance): Update
      	ALPHA_ARG_SIZE usage.
      	(alpha_arg_partial_bytes): Ditto.
      
      From-SVN: r229084
      Uros Bizjak committed
    • Skip local error_mark_node decls · fabb2a3d
      There is no need to finalize local error_mark_node decls.
      
      gcc/
      
      	PR target/66810
      	* cgraphbuild.c (pass_build_cgraph_edges::execute): Skip local
      	error_mark_node decls.
      
      gcc/testsuite/
      
      	PR target/66810
      	* gcc.target/i386/pr66810.c: New test.
      
      From-SVN: r229083
      H.J. Lu committed
    • Properly handle -miamcu and -march=lakemont · c207fd99
      -miamcu specifies how parameters are passed to functions and how value
      is returned from a function.  Inside function,  we can use instructions
      supported by -march=XXX.  -miamcu -march=haswell can generate x87, SSE
      and AVX instructions as long as the IA MCU psABI is followed.  But since
      Lakemont processor doesn't support x87 instructions, we shouldn't
      generate x87 instructions with -march=lakemont.  This patch separates
      code generation from -miamcu and makes -march=lakemont not to generate
      x87 instructions.
      
      gcc/
      
      	PR target/67963
      	PR target/67985
      	* common/config/i386/i386-common.c (ix86_handle_option): Remove
      	OPT_miamcu handling.
      	* config/i386/i386.c (PTA_NO_80387): New macro.
      	(processor_alias_table): Add PTA_NO_80387 to lakemont.
      	(ix86_option_override_internal): Update MASK_80387 from
      	PTA_NO_80387.  Don't warn x87/MMX/SSE/AVX for -miamcu.  Warn
      	SSE math only if 80387 is supported.  Don't change
      	MASK_FLOAT_RETURNS.
      	(ix86_valid_target_attribute_tree): Enable FPMATH_387 only if
      	80387 is supported.
      	* config/i386/i386.h (TARGET_FLOAT_RETURNS_IN_80387): True only
      	if TARGET_80387 is true and TARGET_IAMCU is false.
      	(TARGET_FLOAT_RETURNS_IN_80387_P): True only if TARGET_80387_P
      	is true and TARGET_IAMCU_P is false.
      
      gcc/testsuite/
      
      	PR target/67963
      	PR target/67985
      	* gcc.target/i386/pr67963-1.c: New test.
      	* gcc.target/i386/pr67963-2.c: Likewise.
      	* gcc.target/i386/pr67963-3.c: Likewise.
      	* gcc.target/i386/pr67985-1.c: Likewise.
      	* gcc.target/i386/pr67985-2.c: Likewise.
      	* gcc.target/i386/pr67985-3.c: Likewise.
      
      From-SVN: r229082
      H.J. Lu committed
    • c.opt (std=gnu++11): Do not describe as experimental. · 95979049
      	* c.opt (std=gnu++11): Do not describe as experimental.
      	(std=gnu++14): Likewise.
      
      From-SVN: r229081
      Marek Polacek committed
    • [AArch64] Remove divisions-to-produce-NaN from vdiv_f.c · 0dd7c0b8
      	* gcc.target/aarch64/vdiv_f.c: Use __builtin_nan.
      
      From-SVN: r229080
      Alan Lawrence committed
    • fmap.adb, [...]: Fix coding style for marking start of processing of subprograms. · 704228bd
      2015-10-20  Yannick Moy  <moy@adacore.com>
      
      	* fmap.adb, a-cihama.adb, sem_ch5.adb, make.adb, inline.adb,
      	a-cfhase.adb, scng.adb, sem_ch12.adb, freeze.adb, tempdir.adb,
      	sem_util.adb, sem_res.adb, s-regexp.adb, a-clrefi.adb: Fix coding
      	style for marking start of processing of subprograms.
      
      2015-10-20  Yannick Moy  <moy@adacore.com>
      
      	* lib-xref-spark_specific.adb (Add_SPARK_File): Start traversal
      	by requesting info from stubs.	(Traverse_All_Compilation_Units):
      	Remove unused procedure.
      	(Traverse_Declarations_Or_Statements): Handle protected and task units.
      	* lib-xref.ads (Traverse_All_Compilation_Units): Remove unused
      	procedure.
      	* restrict.adb (Check_Restriction): Do not ignore
      	restrictions in GNATprove_Mode.
      
      From-SVN: r229078
      Yannick Moy committed
    • s-valllu.adb, [...]: Fix typos. · c8307596
      2015-10-20  Arnaud Charlet  <charlet@adacore.com>
      
      	* s-valllu.adb, sem_ch3.adb, layout.adb, a-crbtgo.adb, exp_ch9.adb,
      	make.adb, g-diopit.adb, s-valuns.adb, sem_ch9.adb, sem_ch10.adb,
      	sem_ch12.adb, a-tifiio.adb, g-dynhta.adb, uintp.adb,
      	sem_util.adb, sem_res.adb, s-htable.adb, exp_tss.adb, s-soflin.ads,
      	exp_ch6.adb, sem_ch6.adb, a-rbtgbo.adb, par-ch12.adb, sem_ch8.adb,
      	sem_eval.adb, mdll.adb, par-ch5.adb, s-poosiz.adb, sem_ch4.adb,
      	a-ngelfu.adb, s-taspri-solaris.ads, a-cforse.adb: Fix typos.
      
      From-SVN: r229077
      Arnaud Charlet committed
    • sem_aggr.adb, [...]: Fix typos. · 1b1d88b1
      2015-10-20  Arnaud Charlet  <charlet@adacore.com>
      
      	* sem_aggr.adb, mlib-prj.adb, prep.adb, eval_fat.adb, rtsfind.adb,
      	freeze.adb, sem_util.adb, sem_res.adb, sem_attr.adb, gnatlink.adb,
      	par-ch6.adb, exp_tss.adb, exp_ch4.adb, s-shasto.adb, exp_fixd.adb,
      	sem_ch6.adb, clean.adb, sem_ch8.adb, sem_eval.adb, sem_ch9.adb: Fix
      	typos.
      
      From-SVN: r229074
      Arnaud Charlet committed
    • re PR tree-optimization/68017 (ICE on valid code at -O3 with -g enabled on… · d5c1a5f1
      re PR tree-optimization/68017 (ICE on valid code at -O3 with -g enabled on x86_64-linux-gnu: cannot update SSA form)
      
      2015-10-20  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/68017
      	* tree-tailcall.c (eliminate_tail_call): Remove stmts backwards.
      
      	* gcc.dg/torture/pr68017.c: New testcase.
      
      From-SVN: r229073
      Richard Biener committed
    • [multiple changes] · 744c73a5
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch11.adb (Analyze_Handled_Statements): If the scope is a
      	postcondition subprogram, do not check for useless assignments
      	because there are no source references in such a body, and the
      	call will lose deferred references from the enclosing subprogram.
      
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb: nalyze_Attribute_Definition_Clause, case
      	'Address):  If either object is controlled the overlay is
      	erroneous, but analysis must be completed so that back-end sees
      	address clause and completes code generation.  Improve text
      	of warning.
      
      2015-10-20  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_ch4.adb: Minor reformatting.
      
      From-SVN: r229072
      Arnaud Charlet committed
    • [multiple changes] · 9fe696a3
      2015-10-20  Bob Duff  <duff@adacore.com>
      
      	* s-mudido-affinity.adb (Create): Correct subranges of slices of CPU
      	arrays.
      
      2015-10-20  Arnaud Charlet  <charlet@adacore.com>
      
      	* sinfo.ads, g-pehage.adb, par-ch12.adb,
      	layout.adb, exp_util.adb, sem_aux.adb, make.adb, checks.adb,
      	sem_ch12.adb, sem_res.adb, sem_attr.adb, a-ngelfu.adb, sem_ch4.adb,
      	switch-b.adb, sem_ch6.adb, prj-dect.adb, gnatxref.adb, sem_ch13.adb,
      	lib-xref.adb: Fix typos.
      
      2015-10-20  Tristan Gingold  <gingold@adacore.com>
      
      	* exp_ch4.adb (Expand_Array_Comparison): Use
      	generic code if runtime routine is not available.
      
      From-SVN: r229071
      Arnaud Charlet committed
    • [multiple changes] · 635ffc52
      2015-10-20  Yannick Moy  <moy@adacore.com>
      
      	* a-sytaco.ads (Ada.Synchronous_Task_Control): Package
      	now withs System.Task_Identification. The visible part
      	of the spec has SPARK_Mode. The private part has pragma
      	SPARK_Mode (Off).
      	(Set_True): Added Global and Depends aspects
      	(Set_False): Added Global and Depends aspects (Current_State):
      	Added Volatile_Function aspect and added external state
      	Ada.Task_Identification.Tasking_State as a Global input.
      	(Suspend_Until_True): Added Global and Depends aspects
      	* a-sytaco.adb (Ada.Synchronous_Task_Control):
      	Package body has SPARK_Mode => Off
      	* a-extiin.ads (Ada.Execution_Time.Interrupts):
      	Package now withs Ada.Real_Time and has SPARK_Mode.
      	(Clock): Added Volatile_Function aspect and added external state
      	Ada.Real_Time.Clock_Time as a Global input.
      	* a-reatim.ads (Ada.Real_Time): The visible part of the spec has
      	SPARK_Mode. The private part has pragma SPARK_Mode (Off). The package
      	declares external state Clock_Time with properties Async_Readers and
      	Async_Writers.
      	(Clock): Added Volatile_Function aspect and
      	added external state Clock_Time as a Global input.
      	* a-reatim.adb (Ada.Real_Time): Package body has SPARK_Mode => Off
      	* a-exetim-default.ads, a-exetim-mingw.ads (Ada.Execution_Time):
      	The visible part of the spec has SPARK_Mode. The private part
      	has pragma SPARK_Mode (Off).
      	(Clock): Added Volatile_Function
      	aspect and added external state Clock_Time as a Global input.
      	(Clock_For_Interrupts): Added Volatile_Function aspect and added
      	external state Ada.Real_Time.Clock_Time as a Global input.
      	* a-exetim-mingw.adb (Ada.Execution_Time): Package body has
      	SPARK_Mode => Off
      	* a-interr.ads (Ada.Interrupts): Package now
      	withs Ada.Task_Identification (Is_Reserved): Added
      	SPARK_Mode, Volatile_Function and external state
      	Ada.Task_Identification.Tasking_State as a Global input.
      	(Is_Attached): Added SPARK_Mode, Volatile_Function and external
      	state Ada.Task_Identification.Tasking_State as a Global input.
      	(Attach_Handler): Added SPARK_Mode => Off (Exchange_Handler):
      	Added SPARK_Mode => Off (Detach_Handler): Added SPARK_Mode
      	and external state Ada.Task_Identification.Tasking_State as a
      	Global In_Out.	(Reference): Added SPARK_Mode => Off
      	* a-disedf.ads (Get_Deadline): Added SPARK_Mode, Volatile_Function
      	and external state Ada.Task_Identification.Tasking_State as a
      	Global input.
      	* a-taside.ads (Ada.Task_Identification): The visible part of
      	the spec has SPARK_Mode.  The private part has pragma SPARK_Mode
      	(Off). The package declares external state Tasking_State with
      	properties Async_Readers and Async_Writers.
      	(Current_Task): Added
      	Volatile_Function aspect and added external state Tasking_State
      	as a Global input.
      	(Environment_Task): Added SPARK_Mode => Off
      	(Is_Terminated): Added Volatile_Function aspect and added external
      	state Tasking_State as a Global input.	(Is_Callable): Added
      	Volatile_Function aspect and added external state Tasking_State as
      	a Global input.
      	(Activation_Is_Complete): Added Volatile_Function
      	aspect and added external state Tasking_State as a Global input.
      	* a-taside.adb (Ada.Task_Identification): Package body has
      	SPARK_Mode => Off.
      
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* atree.ads, atree.adb: Enable List38 and List39 on entities.
      	* einfo.ads, einfo.adb (Class_Wide_Preconds) new attribute defined
      	on subprograms. Holds the list of class-wide precondition
      	functions inherited from ancestors. Each such function is an
      	instantiation of the generic function generated from an explicit
      	aspect specification for a class-wide precondition. A type is
      	an ancestor of itself, and therefore a root type has such an
      	instance on its own list.
      	(Class_Wide_Postconds): ditto for postconditions.
      
      2015-10-20  Vincent Celier  <celier@adacore.com>
      
      	* prj-attr.adb: Add packages Prove and GnatTest.
      
      2015-10-20  Steve Baird  <baird@adacore.com>
      
      	* a-conhel.adb: Add an Annotate pragma to help suppress CodePeer's
      	analysis of internals of container generic instances. This pragma
      	has no other effect.
      	* a-conhel.adb (Generic_Implementation) Add "pragma Annotate
      	(CodePeer, Skip_Analysis);".
      
      From-SVN: r229070
      Arnaud Charlet committed
    • [multiple changes] · fb159eb7
      2015-10-20  Steve Baird  <baird@adacore.com>
      
      	* pprint.adb: Code clean up.
      
      2015-10-20  Bob Duff  <duff@adacore.com>
      
      	* a-cfinve.ads, a-coboho.ads: Improve comments.
      	* a-coboho.adb (Size_In_Storage_Elements): Improve error message
      	in case of "Size is too big" exception.
      
      2015-10-20  Bob Duff  <duff@adacore.com>
      
      	* a-contai.ads: Remove check names (moved to snames.ads-tmpl).
      	* snames.ads-tmpl: Add check names that were previously in
      	a-contai.ads, so they are now visible in configuration files.
      	* types.ads: Add checks corresponding to snames.ads-tmpl.
      
      From-SVN: r229069
      Arnaud Charlet committed
    • [multiple changes] · 78cef47f
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch5.adb (Analyze_Loop_Statement): Attach generated loop
      	identifier to the tree, because it may be the root of a tree
      	traversal in Pop_Scope when freeze actions are pending.
      
      2015-10-20  Steve Baird  <baird@adacore.com>
      
      	* pprint.ads (Expression_Image) Add new generic formal flag
      	Hide_Parameter_Blocks.
      	* pprint.adb (Expression_Image) If new flag is set, then display
      	dereferences of parameter block components accordingly.
      
      From-SVN: r229068
      Arnaud Charlet committed
    • [multiple changes] · e5f2c03c
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.adb: Code clean up.
      
      2015-10-20  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch6.adb (Expand_N_Extended_Return_Statement): Code cleanup.
      	(Make_Build_In_Place_Call_In_Object_Declaration): Update the
      	parameter profile.  Code cleanup. Request debug info for the
      	object renaming declaration.
      	(Move_Activation_Chain): Add new formal parameter and update the
      	comment on usage.
      	* exp_ch6.ads (Make_Build_In_Place_Call_In_Object_Declaration):
      	Update the parameter profile and comment on usage.
      	* sem_util.ads, sem_util.adb (Remove_Overloaded_Entity): New routine,
      	currently unused.
      
      From-SVN: r229067
      Arnaud Charlet committed
    • sem_ch13.adb (Analyze_One_Aspect, [...]): If expander is not active... · 58ef3d30
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Analyze_One_Aspect, case
      	Aspect_Disable_Controlled): If expander is not active, pre-analyze
      	expression anyway for ASIS and other tools use.
      	* sem_prag.adb (Build_Generic_Class_Condition): Handle properly
      	anonymous access types in parameter specifications. Make the
      	formal type a formal derived type of the controlling type of
      	the subprogram.
      
      From-SVN: r229064
      Ed Schonberg committed
    • s-rident.ads: No_Task_At_Interrupt_Priority: New restriction. · 6bf8c157
      2015-10-20  Tristan Gingold  <gingold@adacore.com>
      
      	* s-rident.ads: No_Task_At_Interrupt_Priority: New restriction.
      	* sem_prag.adb (Analyze_Pragma): Check the restriction.
      	* sem_ch13.adb (Analyze_Attribute_Definition_Clause):
      	Check the restriction (for aspects).
      
      From-SVN: r229063
      Tristan Gingold committed
    • sem_prag.adb: Minor reformatting. · da160026
      2015-10-20  Gary Dismukes  <dismukes@adacore.com>
      
      	* sem_prag.adb: Minor reformatting.
      
      From-SVN: r229061
      Gary Dismukes committed
    • [multiple changes] · a015ef67
      2015-10-20  Tristan Gingold  <gingold@adacore.com>
      
      	* sem_util.adb (Is_Protected_Self_Reference): Remove reference to
      	UET_Address in comment.
      	* sem_attr.adb (Check_Unit_Name): Adjust comment.
      	(Analyze_Attribute): Remove handling of UET_Address.
      	* sem_attr.ads (Attribute_Impl_Def): Remove Attribute_UET_Address.
      	* snames.ads-tmpl Remove Name_UET_Address, Attribute_UET_Address.
      	* exp_attr.adb (Expand_N_Attribute_Reference): Remove
      	Attribute_UET_Address.
      
      2015-10-20  Bob Duff  <duff@adacore.com>
      
      	* a-cbdlli.adb, a-cdlili.adb, a-chtgop.adb, a-cidlli.adb,
      	* a-cobove.adb, a-coinve.adb, a-convec.adb, a-crbtgo.adb ("="): Avoid
      	modifying the tampering counts unnecessarily.
      	(Adjust): Zero tampering counts unconditionally.
      
      2015-10-20  Jerome Lambourg  <lambourg@adacore.com>
      
      	* init.c: Fix build issue on arm-vx6 when building the RTP
      	run-time.
      
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Analyze_Object_Declaration): If the expression
      	is an aggregate and compilation is in -gnatI mode (ignore rep
      	clauses) do not delay resolution of aggregate, to prevent freeze
      	actions out of order in the backend.
      
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.ads, sem_prag.adb (Build_Generic_Class_Condition):
      	New procedure to construct a generic function for a class-wide
      	precondition, to implement AI12-0113  concerning the new semantics
      	of class-wide preconditions for overriding uperations.
      
      From-SVN: r229060
      Arnaud Charlet committed
    • [multiple changes] · c386239f
      2015-10-20  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_util.adb (Find_Actual): The routine is
      	now capable of operating on entry calls.
      
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_res.adb: Remove redundant check.
      
      From-SVN: r229059
      Arnaud Charlet committed
    • [multiple changes] · c96c518f
      2015-10-20  Jerome Lambourg  <lambourg@adacore.com>
      
      	* init.c (__gnat_vxsim_error_handler): Completely disable on
      	VxWorks-7 as the VSBs used to build gcc do not support vxsim
      	architecture.
      
      2015-10-20  Claire Dross  <dross@adacore.com>
      
      	* a-cfdlli.ads, a-cfinve.ads, a-cofove.ads (Generic_Sorting): Explicit
      	SPARK_Mode.
      	* a-cfhase.ads, a-cforse.ads (Generic_Keys): Explicit SPARK_Mode.
      
      2015-10-20  Tristan Gingold  <gingold@adacore.com>
      
      	* exp_ch9.adb (Expand_N_Protected_Type_Declaration):
      	Check for No_Implicit_Protected_Object_Allocations.
      	* fe.h (Check_No_Implicit_Task_Alloc,
      	Check_No_Implicit_Protected_Alloc): Define and declare.
      	* restrict.ads, restrict.adb (Check_No_Implicit_Task_Alloc,
      	Check_No_Implicit_Protected_Alloc): New procedures to check the
      	restrictions.
      	* s-rident.ads (No_Implicit_Task_Allocations)
      	(No_Implicit_Protected_Object_Allocations): Declare new
      	restrictions.
      
      2015-10-20  Yannick Moy  <moy@adacore.com>
      
      	* sem_res.adb (Resolve_Selected_Component): Only set flag
      	when component is defined in a variant part.
      	* sem_util.adb,
      	* sem_util.ads (Is_Declared_Within_Variant): Promote local query
      	as publicy visible one for use in Resolve_Selected_Component.
      
      2015-10-20  Philippe Gil  <gil@adacore.com>
      
      	* g-debpoo.adb: allow instrumented System.Memory to use Debug_Pool
      	from foreign threads.
      	* g-debpoo.adb (Print_Traceback): NEW print traceback if available
      	added to support Stack_Trace_Depth = 0.
      	(Print_Address): NEW print System.Address without no secondary
      	stack use (Address_Image uses secondary stack)
      
      From-SVN: r229058
      Arnaud Charlet committed
    • [multiple changes] · 03a72cd3
      2015-10-20  Yannick Moy  <moy@adacore.com>
      
      	* exp_ch9.adb (Expand_Entry_Barrier): Default initialize local variable
      	Func.
      
      2015-10-20  Jerome Lambourg  <lambourg@adacore.com>
      
      	* init.c (__gnat_error_handler for vxworks): Force
      	SPE bit in the MSR when handling signals
      
      2015-10-20  Arnaud Charlet  <charlet@adacore.com>
      
      	* einfo.ads, sem_ch12.adb, sem_ch6.adb, table.ads, s-stposu.ads,
      	g-table.ads, g-dyntab.ads, makeutl.ads, a-crdlli.ads: Fix typos.
      
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch5.adb (Analyze_Loop_Statement): Element iterators
      	over multidimensional arrays create additional loops during
      	expansion. For such loops we create a label as a scope
      	name. Attach this label  properly to tree, for use in GNATProve
      	over such element iterators.
      	* sem_attr.adb (Analyze_Attribute, case Loop_Entry): The loop to
      	which the attribute applies comes from source, not from expansion
      	of an element iterator or a quantified expression.
      	* exp_attr.adb (Expand_N_Attribute_Reference): Ditto.
      
      From-SVN: r229057
      Arnaud Charlet committed
    • [multiple changes] · fc90cc62
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch6.adb (Expand_Call): Check for a call to a function
      	declared in a Dimension I/O package, to handle the new Image
      	function.
      
      2015-10-20  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* inline.ads: Minor comment fixes.
      
      2015-10-20  Bob Duff  <duff@adacore.com>
      
      	* a-comutr.ads (Tree_Node_Access): Add No_Strict_Aliasing, because
      	we're doing unchecked conversions with this pointer.
      
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch9.adb (Next_Protected_Operation): An expression function
      	used as a completion can be the next protected operation in a
      	protected body.
      
      2015-10-20  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_res.adb (Is_OK_Volatile_Context): Add a guard when checking a
      	possible call to an instance of Ada.Unchecked_Conversion to avoid
      	testing protected function calls. Allow references to protected objects
      	in prefixed protected calls.
      	(Is_Protected_Operation_Call): New routine.
      
      2015-10-20  Yannick Moy  <moy@adacore.com>
      
      	* exp_ch5.adb, exp_ch5.ads (Expand_Iterator_Loop_Over_Array): Make
      	query public. Remove code handling with iterator loop over array
      	of the 'in' form, which is not allowed in Ada.	* exp_spark.adb
      	(Expand_SPARK): Expand loop statements that take the form of an
      	iterator over an array.
      	* sem_ch5.adb (Analyze_Loop_Statement): Do not analyze loop statements
      	that take the form of an iterator over an array, so that the rewritten
      	form gets analyzed instead.
      	* sem_util.adb, sem_util.ads (Is_Iterator_Over_Array): New query
      	to recognize iterators over arrays.
      
      2015-10-20  Arnaud Charlet  <charlet@adacore.com>
      
      	* s-excdeb.ads, s-excdeb.adb (Debug_Raise_Exception): Add
      	parameter Message.
      	* a-except.adb (Raise_Current_Excep): Update call to
      	Debug_Raise_Exception.
      	* a-except-2005.adb (Complete_Occurrence): Ditto.
      	* sem_ch12.adb: Whitespace fix.
      
      From-SVN: r229056
      Arnaud Charlet committed
    • Correctly fill up cgraph_node::local.versionable flag. · 7e729474
      	* cgraphclones.c (cgraph_node::create_virtual_clone):
      	Verify cgraph_node.local.versionable instead of calling
      	tree_versionable_function_p.
      	* ipa-cp.c (determine_versionability): Save the information
      	to ipa_node_params summary.
      	(ipcp_versionable_function_p): Use it.
      	(ipcp_propagate_stage): Pass IPA_NODE_REF to a called function.
      	(ipcp_generate_summary): Do not compute cgraph_node
      	versionability.
      	* ipa-inline-analysis.c (inline_generate_summary): Compute
      	versionability for all cgraph nodes.
      	* ipa-prop.c (ipa_node_params_t::duplicate): Duplicate
      	ipa_node_params::versionability.
      	* ipa-prop.h (struct ipa_node_params): Declare it.
      
      From-SVN: r229055
      Martin Liska committed
    • Fix typos. · 5f0a92e5
      From-SVN: r229054
      Arnaud Charlet committed
    • [multiple changes] · 319c6161
      2015-10-20  Yannick Moy  <moy@adacore.com>
      
      	* sem_warn.adb (Is_OK_Fully_Initialized): Consider types with DIC as
      	fully default initialized.
      	* sem_ch6.adb: minor style fix in comment
      
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* s-diflio.ads, s-diflio.adb (Image): New function for dimensioned
      	quantities, to produce a string that includes the dimension
      	synbol for the quantity, or the vector of dimensions in standard
      	notation.
      	* sem_dim.adb (Expand_Put_Call_With_Symbol): Process new function
      	Image, to include dimension information in the generated string,
      	identical to the string produced by the Put procedure on a string
      	for a dimensioned quantity.
      
      From-SVN: r229053
      Arnaud Charlet committed
    • [multiple changes] · d29f68cf
      2015-10-20  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch7.adb (Process_Declarations): A loop
      	parameter does not require finalization actions.
      
      2015-10-20  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* exp_ch6.adb (Expand_Simple_Function_Return): Do not create an
      	actual subtype for a mutable record return type if the expression
      	is itself a function call.
      
      2015-10-20  Dmitriy Anisimkov  <anisimko@adacore.com>
      
      	* s-atocou.adb, s-atocou-builtin.adb: Fix implementation description
      	related to new type support.
      
      2015-10-20  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_res.adb (Resolve_Explicit_Dererence): Call Analyze_Dimension
      	to propagate dimension information from prefix.
      	* sem_dim.adb (Analyze_Dimension): Handle Explicit_Dereference.
      	* inline.ads: minor whitespace fix in comment
      	* sem_ch6.adb: minor gramar fix in comment
      
      2015-10-20  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch3.adb (Analyze_Object_Contract):
      	A protected type or a protected object is allowed to have a
      	discriminated part.
      
      2015-10-20  Bob Duff  <duff@adacore.com>
      
      	* sem_util.adb (Requires_Transient_Scope):
      	Return true for mutable records if the maximum size is very large.
      
      2015-10-20  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* a-except-2005.adb (To_Stderr): Import Put_Char_Stderr with
      	the same signature as in System.IO.Put.
      
      From-SVN: r229052
      Arnaud Charlet committed