2014-01-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb: Code and comments cleanup.

2014-01-20  Yannick Moy  <moy@adacore.com>

	* debug.adb Free debug flags -gnatd.D, -gnatd.G and -gnatd.V *
	* errout.adb (Compilation_Errors): Remove special handling in
	GNATprove mode.
	* gnat1drv.adb (Adjust_Global_Switches): Remove handling of the
	removed debug flags.
	* gnat_rm.texi: Initial documentation for Abstract_State, Depends,
	Global, Initial_Condition, Initializes and Refined_State pragmas and
	aspects.
	* opt.ads (Frame_Condition_Mode, Formal_Extensions,
	SPARK_Strict_Mode): Remove global flags.
	* sem_ch3.adb (Analyze_Object_Declaration): Check of no hidden state
	always performed now, on packages declaring a null state.
	(Signed_Integer_Type_Declaration): Remove ill-designed attempt
	at providing pedantic mode for bounds of integer types.
	* sem_ch4.adb (Analyze_Quantified_Expression): Warning on suspicious
	"some" quantified expression now issued under control of -gnatw.t,
	like the other warning on unused bound variable.
	* sem_prag.adb (Check_Precondition_Postcondition): Remove useless test
	on removed flag.
	(Analyze_Pragma): Remove tests for SPARK 2014
	pragmas, not officially allowed by GNAT.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206837 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Analyze_Attribute, case 'Constrained): In an
	instance the attribute is legal, and its value is determined
	statically if the type has no discriminants. This choice is
	more useful than rechecking the legality rule in the instance,
	is consistent with older usage, and is also consistent with all
	existing tests.

2014-01-20  Arnaud Charlet  <charlet@adacore.com>

	* sem_cat.adb (Validate_Static_Object_Name): Change error into
	warning in Relaxed_Semantic_Mode.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206838 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-20  Robert Dewar  <dewar@adacore.com>

	* errout.ads, errout.adb: Implement >? >x? >X? sequences in error
	messages.
	* sem_ch6.adb (Check_Statement_Sequence): Missing return is an
	error in GNATprove mode.

2014-01-20  Ed Schonberg  <schonberg@adacore.com>

	* par-ch4.adb (Is_Parameterless_Attribute): The Ada2012 attribute
	reference 'Old takes no parameters, and thus can appear as a
	prefix of a slice.

2014-01-20  Eric Botcazou  <ebotcazou@adacore.com>

	* exp_aggr.adb: Fix minor typos.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206839 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64 Documentation] Clarify meaning of -mcpu, -mtune, -march

gcc/

	* doc/invoke.texi (-march): Clarify documentation for AArch64.
	(-mtune): Likewise.
	(-mcpu): Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206840 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-20  Robert Dewar  <dewar@adacore.com>

	* checks.adb: Make warnings on exceptions into errors in GNATprove mode.
	* errout.adb: Implement [ and ] insertion characters.
	* errout.ads: Document new [ and ] insertion characters.
	* sem_ch12.adb, restrict.adb, frontend.adb, exp_ch7.adb: Minor
	addition of ??? comment.
	* lib-xref.adb, exp_util.adb, gnat1drv.adb: Minor reformatting
	* exp_ch4.adb, sem_ch3.adb, sem_ch4.adb, sem_ch6.adb, sem_elab.adb,
	sem_eval.adb, sem_res.adb, sem_util.adb, sem_attr.adb, sem_aggr.adb:
	Make warnings on exceptions into errors in GNATprove mode.
	* sem_dim.adb: Minor reformatting throughout Quote [ and ]
	in error messages.

2014-01-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb: Code clean up.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206841 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch4.adb (Analyze_Quantified_Expression): If after
	pre-analysis  the loop parameter specification has been
	rewritten as a iterator specification, propagate the change to
	the quantified expression, for ASIS navigtion needs.

2014-01-20  Vincent Celier  <celier@adacore.com>

	* par-ch10.adb: Minor error message change: escape [ and ].



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206842 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-20  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi, sem_ch4.adb: Minor reformatting.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206843 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-20  Robert Dewar  <dewar@adacore.com>

	* checks.adb: Check SPARK_Mode instead of GNATProve_Mode for
	converting warnings on inevitable exceptions to errors.
	* exp_ch4.adb: Check SPARK_Mode instead of GNATProve_Mode for
	converting warnings on inevitable exceptions to errors.
	* opt.adb (SPARK_Mode_Config): Handled like other config flags
	* opt.ads (SPARK_Mode_Type): Moved here from types (renamed from
	SPARK_Mode_Id) (SPARK_Mode_Type): Add pragma Ordered, remove
	SPARK_ from names (SPARK_Mode): New flag (SPARK_Mode_Config):
	New flag (Config_Switches_Type): Add SPARK_Mode field
	* sem.adb: Minor code reorganization (remove unnecessary with)
	* sem.ads (Scope_Stack_Entry): Add Save_SPARK_Mode field
	* sem_aggr.adb: Check SPARK_Mode instead of GNATProve_Mode for
	converting warnings on inevitable exceptions to errors.
	* sem_attr.adb: Check SPARK_Mode instead of GNATProve_Mode for
	converting warnings on inevitable exceptions to errors.
	* sem_ch3.adb: Check SPARK_Mode instead of GNATProve_Mode for
	converting warnings on inevitable exceptions to errors.
	* sem_ch4.adb: Check SPARK_Mode instead of GNATProve_Mode for
	converting warnings on inevitable exceptions to errors.
	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Reset SPARK_Mode
	from spec if needed
	* sem_ch7.adb (Analyze_Package_Body_Helper): Reset SPARK_Mode
	from spec if needed
	* sem_ch8.adb (Push_Scope): Save SPARK_Mode (Pop_Scope):
	Restore SPARK_Mode
	* sem_elab.adb: Check SPARK_Mode instead of GNATProve_Mode for
	converting warnings on inevitable exceptions to errors.
	* sem_prag.adb (Get_SPARK_Mode_From_Pragma): New function
	(Get_SPARK_Mode_Id): Removed (Get_SPARK_Mode_Type): New name
	of Get_SPARK_Mode_Id
	* sem_prag.ads (Get_SPARK_Mode_From_Pragma): New function
	* sem_res.adb: Check SPARK_Mode instead of GNATProve_Mode for
	converting warnings on inevitable exceptions to errors.
	* sem_util.adb: Check SPARK_Mode instead of GNATProve_Mode for
	converting warnings on inevitable exceptions to errors.
	* types.ads (SPARK_Mode_Id): Moved to opt.ads and renamed
	SPARK_Mode_Type

2014-01-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb: Add semantic information to rewritten type
	reference.

2014-01-20  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch5.adb (Expand_N_Assignment_Statement): If both sides
	are of a type with unknown discriminants, convert both to the
	underlying view of the type, so that the proper constraint check
	can be applied to the right-hand side.

2014-01-20  Robert Dewar  <dewar@adacore.com>

	* atree.adb (Copy_Node): Fix failure to copy last component
	(Exchange_Entities): Fix failure to exchange last entity

2014-01-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb: Code clean up.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206844 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Define BE loader name.

2014-01-20  Marcus Shawcroft  <marcus.shawcroft@arm.com>

	    * config/aarch64/aarch64-linux.h (GLIBC_DYNAMIC_LINKER): Expand
	    loader name using mbig-endian.
	    (LINUX_TARGET_LINK_SPEC): Pass linker -m flag.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206845 138bc75d-0d04-0410-961f-82ee72b054a4
Fix for PR other/58996.
+2014-01-20  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       PR other/58996
+       * configure.ac: Added a check for pthread affinity support.
+       * runtime/os-unix.c: Likewise.
+       * configure: Regenerate.
+



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206846 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/i386/i386.c (ix86_avoid_lea_for_addr): Return false
	for SImode_address_operand operands, having only a REG argument.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206847 138bc75d-0d04-0410-961f-82ee72b054a4
	PR middle-end/59860
	* tree.h (fold_builtin_strcat): New prototype.
	* builtins.c (fold_builtin_strcat): No longer static.  Add len
	argument, if non-NULL, don't call c_strlen.  Optimize
	directly into __builtin_memcpy instead of __builtin_strcpy.
	(fold_builtin_2): Adjust fold_builtin_strcat caller.
	* gimple-fold.c (gimple_fold_builtin): Handle BUILT_IN_STRCAT.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206848 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] vneg floating point testcase BE fixed.

2013-01-20  Alex Velenko  <Alex.Velenko@arm.com>

	* gcc.target/aarch64/vneg_f.c (STORE_INST): New macro.
	(RUN_TEST): Use new macro.
	(INDEX64_32): Delete.
	(INDEX64_64): Likewise.
	(INDEX128_32): Likewise.
	(INDEX128_64): Likewise.
	(INDEX): Likewise.
	(test_vneg_f32): Use fixed RUN_TEST.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206850 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Disable vec_perm patterns for aarch64_be.




git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206851 138bc75d-0d04-0410-961f-82ee72b054a4
Fixing ChangeLog entry for earlier commit.


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

	* g++.dg/debug/ra1.C (struct tree_base): Change the width of
	the 'code' bitfield from 16 to 8.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206853 138bc75d-0d04-0410-961f-82ee72b054a4
	* output.h (output_constant): Delete.
	* varasm.c (output_constant): Make private.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206855 138bc75d-0d04-0410-961f-82ee72b054a4
	PR target/59685
	* config/i386/sse.md (*andnot<mode>3<mask_name>): Handle MODE_V16SF
	mode attribute in insn output.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206856 138bc75d-0d04-0410-961f-82ee72b054a4
Add type to DEFCIFCODE to describe the inline failure

Report inline error during early inlining if the inline failure is
CIF_FINAL_ERROR.

gcc/

	PR middle-end/59789
	* cgraph.c (cgraph_inline_failed_string): Add type to DEFCIFCODE.
	(cgraph_inline_failed_type): New function.
	* cgraph.h (DEFCIFCODE): Add type.
	(cgraph_inline_failed_type_t): New enum.
	(cgraph_inline_failed_type): New prototype.
	* cif-code.def: Add CIF_FINAL_NORMAL to OK, FUNCTION_NOT_CONSIDERED,
	FUNCTION_NOT_OPTIMIZED, REDEFINED_EXTERN_INLINE,
	FUNCTION_NOT_INLINE_CANDIDATE, LARGE_FUNCTION_GROWTH_LIMIT,
	LARGE_STACK_FRAME_GROWTH_LIMIT, MAX_INLINE_INSNS_SINGLE_LIMIT,
	MAX_INLINE_INSNS_AUTO_LIMIT, INLINE_UNIT_GROWTH_LIMIT,
	RECURSIVE_INLINING, UNLIKELY_CALL, NOT_DECLARED_INLINED,
	OPTIMIZING_FOR_SIZE, ORIGINALLY_INDIRECT_CALL,
	INDIRECT_UNKNOWN_CALL, USES_COMDAT_LOCAL. 
	Add CIF_FINAL_ERROR to UNSPECIFIED, BODY_NOT_AVAILABLE,
	FUNCTION_NOT_INLINABLE, OVERWRITABLE, MISMATCHED_ARGUMENTS,
	EH_PERSONALITY, NON_CALL_EXCEPTIONS, TARGET_OPTION_MISMATCH,
	OPTIMIZATION_MISMATCH.
	* tree-inline.c (expand_call_inline): Emit errors during
	early_inlining if cgraph_inline_failed_type returns
	CIF_FINAL_ERROR.

gcc/testsuite/

	PR middle-end/59789
	* gcc.target/i386/pr59789.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206858 138bc75d-0d04-0410-961f-82ee72b054a4
2014-01-20  François Dumont  <fdumont@gcc.gnu.org>

	* scripts/create_testsuite_files: Add testsuite/experimental in
	the list of folders to search for tests.
	* include/experimental/string_view
	(basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
	incompatible with constexpr qualifier.
	(basic_string_view<>::front()): Likewise.
	(basic_string_view<>::back()): Likewise.
	* testsuite/experimental/string_view/element_access/wchar_t/2.cc:
	Merge dg-options directives into one.
	* testsuite/experimental/string_view/element_access/char/2.cc:
	Likewise. Remove invalid experimental namespace scope on
	string_view_type.


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