2013-04-22  Yannick Moy  <moy@adacore.com>

	* aspects.ads, aspects.adb, sem_ch13.adb: Removal of references to
	Contract_Case.
	* gnat_ugn.texi, gnat_rm.texi Description of Contract_Case replaced by
	description of Contract_Cases.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198127 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Yannick Moy  <moy@adacore.com>

	* par-prag.adb, sem_attr.adb, sem_ch6.adb, sem_prag.adb, sem_warn.adb,
	snames.ads-tmpl, sinfo.ads, sem_util.ads: Remove all references to
	Pragma_Contract_Case and Name_Contract_Case.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198128 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Yannick Moy  <moy@adacore.com>

	* gnat_rm.texi, exp_util.adb, sem_prag.adb, sem_prag.ads, par-ch2.adb,
	opt.ads, sem_ch13.adb: Minor correction of typos in comments/doc.

2013-04-22  Vincent Celier  <celier@adacore.com>

	* prj-nmsc.adb (Check_Library_Attributes): Set Library_Dir to
	No_Path_Information only when Directories_Must_Exist_In_Projects
	is False.
	(Get_Directories): Set Object_Directory
	or Exec_Directory to No_Path_Information only when
	Directories_Must_Exist_In_Projects is False.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198129 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Pascal Obry  <obry@adacore.com>

	* gnat_ugn.texi, prj-nmsc.adb, projects.texi: Add check for
	Library_Standalone and Library_Kind.

2013-04-22  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch6.adb (Expand_Actuals): If the call is to an
	inherited operation and the actual is a by-reference type with
	predicates, add predicate call to post-call actions.
	* sem_util.adb (Is_Inherited_Operation_For_Type): Fix coding
	error: a type declaration has a defining identifier, not an Etype.
	* sem_res.adb: Restore code removed because of above error.

2013-04-22  Doug Rupp  <rupp@adacore.com>

	* init.c (__gnat_handle_vms_condition): Also match C$_SIGINT.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198130 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch6.adb: Omit check for init proc.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198131 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb, sem_util.adb, sem_util.ads, sem_res.adb, exp_ch6.adb,
	sem_ch6.adb, opt.ads: Minor reformatting.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198132 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Yannick Moy  <moy@adacore.com>

	* exp_prag.adb, sinfo.ads, sem_prag.ads: Minor correction of typos in
	comments.
	* sem_ch6.adb (Expand_Contract_Cases): Add location to message.

2013-04-22  Thomas Quinot  <quinot@adacore.com>

	* sem_prag.adb (Fix_Error): For a pragma rewritten from another
	pragma, fix up error message to include original pragma name.
	* par_sco.adb: Minor reformatting.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198133 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Contract_Case): New routine.
	(Analyze_Pragma): Aspect/pragma Contract_Cases can
	now be associated with a library level subprogram.
	Add circuitry to detect illegal uses of aspect/pragma Contract_Cases
	in a subprogram body.
	(Chain_Contract_Cases): Rename formal parameter Subp_Decl to
	Subp_Id. Remove local constant Subp. The entity of the subprogram
	is now obtained via the formal paramter.

2013-04-22  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Analyze_Object_Declaration): Do not set
	Is_Constr_Subt_For_Unc_Aliased on the subtype of the expression,
	if the expression is a source entity.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198134 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Yannick Moy  <moy@adacore.com>

	* exp_prag.adb (Expand_Pragma_Loop_Variant): Rewrite pragma as
	null statement if ignored.
	* sem_ch6.adb (Expand_Contract_Cases): Do nothing if pragma is ignored.
	* sem_prag.adb (Analyze_Pragma): Keep analyzing ignored pragmas.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198135 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Support vrecp<esx> neon intrinsics in RTL.

gcc/
	* config/aarch64/aarch64-builtins.c
	(aarch64_simd_builtin_type_mode): Handle SF types.
	(sf_UP): Define.
	(BUILTIN_GPF): Define.
	(aarch64_init_simd_builtins): Handle SF types.
	* config/aarch64/aarch64-simd-builtins.def (frecpe): Add support.
	(frecps): Likewise.
	(frecpx): Likewise.
	* config/aarch64/aarch64-simd.md
	(simd_types): Update simd_frcp<esx> to simd_frecp<esx>.
	(aarch64_frecpe<mode>): New.
	(aarch64_frecps<mode>): Likewise.
	* config/aarch64/aarch64.md (unspec): Add UNSPEC_FRECP<ESX>.
	(v8type): Add frecp<esx>.
	(aarch64_frecp<FRECP:frecp_suffix><mode>): New.
	(aarch64_frecps<mode>): Likewise.
	* config/aarch64/iterators.md (FRECP): New.
	(frecp_suffix): Likewise.
	* config/aarch64/arm_neon.h
	(vrecp<esx><qsd>_<fd><32, 64>): Convert to using builtins.

gcc/testsuite/
	* gcc.target/aarch64/vrecps.c: New.
	* gcc.target/aarch64/vrecpx.c: Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198136 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Map standard pattern names to NEON intrinsics directly.

gcc/
	* config/aarch64/aarch64-builtins.c
	(CF): Remove.
	(CF0, CF1, CF2, CF3, CF4, CF10): New.
	(VAR<1-12>): Add MAP parameter.
	(BUILTIN_*): Likewise.
	* config/aarch64/aarch64-simd-builtins.def: Set MAP parameter.
	* config/aarch64/aarch64-simd.md (aarch64_sshl_n<mode>): Remove.
	(aarch64_ushl_n<mode>): Likewise.
	(aarch64_sshr_n<mode>): Likewise.
	(aarch64_ushr_n<mode>): Likewise.
	(aarch64_<maxmin><mode>): Likewise.
	(aarch64_sqrt<mode>): Likewise.
	* config/aarch64/arm_neon.h (vshl<q>_n_*): Use new builtin names.
	(vshr<q>_n_*): Likewise.




git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198137 138bc75d-0d04-0410-961f-82ee72b054a4
	* config.gcc (tilegx-linux): Extend extra_objs rather than
	overwriting it.
	(tilepro-linux): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198138 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/57018
	* lra-eliminations.c (mark_not_eliminable): Prevent elimination of
	a set sp if no stack realignment.

2013-04-22  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/57018
	* gcc.target/i386/pr57018.c: New test.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198140 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>

	N3669
	* include/std/complex (complex<float>::real, complex<float>::imag,
	complex<double>::real, complex<double>::imag,
	complex<long double>::real, complex<long double>::imag): Declare
	as const member functions.
	* include/std/type_traits (integral_constant<>::operator value_type):
	Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198141 138bc75d-0d04-0410-961f-82ee72b054a4
[Mid-end] Add TARGET_GIMPLE_FOLD_BUILTIN target hook.

gcc/

	* coretypes.h (gimple_stmt_iterator_d): Forward declare.
	(gimple_stmt_iterator): New typedef.
	* gimple.h (gimple_stmt_iterator): Rename to...
	(gimple_stmt_iterator_d): ... This.
	* doc/tm.texi.in (TARGET_FOLD_BUILTIN): Detail restriction that
	trees be valid for GIMPLE and GENERIC.
	(TARGET_GIMPLE_FOLD_BUILTIN): New.
	* gimple-fold.c (gimple_fold_call): Call target hook
	gimple_fold_builtin.
	* hooks.c (hook_bool_gsiptr_false): New.
	* hooks.h (hook_bool_gsiptr_false): New.
	* target.def (fold_stmt): New.
	* doc/tm.texi: Regenerate.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198142 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/type_traits (is_signed): Simplify.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
	Adjust dg-error line numbers.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.
	* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198144 138bc75d-0d04-0410-961f-82ee72b054a4
	PR target/57032
	Revert:
	2013-03-17  Uros Bizjak  <ubizjak@gmail.com>

	* config/alpha/alpha.c (TARGET_LRA_P): New define.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198145 138bc75d-0d04-0410-961f-82ee72b054a4
	PR sanitizer/56990
	* tsan.c (instrument_expr): Don't instrument expression
	in case its size is zero.

	* gcc.dg/pr56990.c: New test.



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


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198148 138bc75d-0d04-0410-961f-82ee72b054a4
	* mangle.c (write_type): Mangle decltype(auto).

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