PR sanitizer/63697
	* tree-vrp.c (simplify_internal_call_using_ranges): For subcode ==
	MINUS_EXPR, check overflow on vr0.min - vr1.max and vr0.max - vr1.min
	instead of vr0.min - vr1.min and vr0.max - vr1.max.

	* c-c++-common/ubsan/overflow-sub-3.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216962 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

	* exp_ch4.adb: Minor tweak.

2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

	* sem_ch12.adb (Analyze_Package_Instantiation): Do not inline with
	back-end inlining.
	(Must_Inline_Subp): Delete.
	* sem_util.ads, sem_util.adb (Must_Inline): Likewise.

2014-10-31  Ed Schonberg  <schonberg@adacore.com>

	* freeze.adb (Freeze_Entity): A default_pool does not apply to
	internal access types generated for 'access references.
	* sem_prag (Analyze_Pragma, case Default_Pool): If the name is
	not null it must designate a variable.

2014-10-31  Eric Botcazou  <ebotcazou@adacore.com>

	* inline.adb: Minor reformatting.

2014-10-31  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Build_Derived_Private_Type): If the derived
	type has access discriminants, create itype references for their
	anonymous types, so that they are elaborated before the generated
	bodies for the primitive operations of the type.

2014-10-31  Tristan Gingold  <gingold@adacore.com>

	* prj-conf.adb (Locate_Runtime): Remove procedure.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216963 138bc75d-0d04-0410-961f-82ee72b054a4
	* Makefile.def (libcc1): Remove bootstrap=true;.
	* Makefile.in: Regenerated.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216964 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-31  Vincent Celier  <celier@adacore.com>

	* prj-conf.adb (Look_For_Project_Paths): New procedure
	(Parse_Project_And_Apply_Config): Initially, parse the project
	files ignoring missing withs. If there are missing withs, extend
	the project path with directories rooted at the compiler roots,
	including directories rooted at the runtime roots, if there are
	non default runtimes, in the PATH orser.
	* prj-env.adb (Initialize_Default_Project_Path): Do not add
	any directory from the prefix if the target is "-".
	* prj-part.adb (Parse): Initialize the tables, as Parse may be
	call several times by gprbuild.
	* prj.adb (Update_Ignore_Missing_With): New procedure.

2014-10-31  Ed Schonberg  <schonberg@adacore.com>

	* sem_aux.adb (First_Stored_Discriminant,
	Has_Completely_Hidden_Discriminant): When scanning the list of
	discriminants to locate possibly hidden (inherited) discriminants,
	ignore itypes that may appear in the entity list, when an access
	discriminants is constrained by an access attribute reference.

2014-10-31  Javier Miranda  <miranda@adacore.com>

	* freeze.adb (Freeze_Record_Type): Add missing
	check to verify that all the primitives of an interface type
	are abstract or null procedures.

2014-10-31  Vincent Celier  <celier@adacore.com>

	* s-os_lib.adb, s-os_lib.ads: New function Non_Blocking_Spawn that
	redirects standard output and standard error to two different files.

2014-10-31  Bob Duff  <duff@adacore.com>

	* makeutl.ads: Minor comment fix.

2014-10-31  Arnaud Charlet  <charlet@adacore.com>

	* system-linux-x86_64.ads, system-mingw-x86_64.ads (Word_Size,
	Memory_Size): Use Standard'Word_Size so that the value can be changed
	via a target configuration file.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216965 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-31  Vasiliy Fofanov  <fofanov@adacore.com>

	* prj-conf.adb (Do_Autoconf): Refactor the code so that empty
	Normalized_Pathname doesn't inhibit the custom Selected_Target
	value.
	* prj-conf.adb (Parse_Project_And_Apply_Config): Make sure that
	Automatically_Generated is correctly set after the first call
	to Process_Project_And_Apply_Config and not modified after the
	second call, if any.

2014-10-31  Yannick Moy  <moy@adacore.com>

	* Makefile.rtl, gnat_rm.texi, impunit.adb: Add mention of new library
	files.
	* a-cfinve.adb, a-cfinve.ads: New unit for formal indefinite
	vectors, suitable for use in client SPARK code, also more
	efficient than the standard vectors.
	* a-coboho.adb, a-coboho.ads New unit for bounded holders, that
	are used to define formal indefinite vectors in terms of formal
	definite ones.
	* a-cofove.adb, a-cofove.ads: Simplification of the API of formal
	definite vectors, similar to the API of the new indefinite ones. A
	new formal parameter of the generic unit called Bounded allows
	to define growable vectors that use dynamic allocation.



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

	* sem_ch12.adb (Analyze_Generic_Package_Declaration): If there
	is a default storage pool, add a corresponding aspect to the
	generic unit, to be used at the point of instantiation.
	(Analyze_Package_Instantiation): If generic unit has aspect
	specifications, propagate them to instance. If instance has a
	Default_Storage_Pool aspect, make sure that it overrides the
	one that may be inherited from the generic.

2014-10-31  Vincent Celier  <celier@adacore.com>

	* prj-attr.adb: Minor removal of attributes of package Linker
	that have never been used and never been documented.
	* projects.texi: Add documentation for attribute Runtime.
	* prj-nmsc.adb (Check_Configuration): Do not report a warning
	for unknown compilers when the project is externally built.



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

	* sem_attr.adb (Analyze_Access_Attribute): Do not emit error
	message if reference does not come from source, as in the case
	for the controlling argument of a dispatching call. Error is
	diagnosed when call is resolved.
	* sem_ch4.adb (Complete_Object_Operation); Fix incorrect RM
	reference in error message.
	* sem_res.adb (Check_Prefixed_Call): ditto.

2014-10-31  Yannick Moy  <moy@adacore.com>

	* sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): Do not
	suppress checks when pragma Restrictions (No_Exception) is used in
	CodePeer or GNATprove mode.

2014-10-31  Yannick Moy  <moy@adacore.com>

	* gnat1drv.adb (Adjust_Global_Switches): Explicitly mark language
	checks as not suppressed in GNATprove mode.

2014-10-31  Ed Schonberg  <schonberg@adacore.com>

	* sem_elab.adb (Check_Elab_Call): Nothing to check if call is
	being pre-analyzed.
	* sem_ch3.adb (Complete_Private_Subtype): If all rep items of full
	view are those of the base, use rep_item chain of partial view,
	which may include aspects.
	* sem_cat.adb (Is_non_Remote_Access_Type): Use underlying type
	of base type, to handle properly declared subtypes.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216969 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-31  Vincent Celier  <celier@adacore.com>

	* prj-proc.adb (Recursive_Process): Make sure that the project
	display name is never No_Name.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216970 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-31  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR tree-optimization/63259
    * tree-ssa-math-opts.c (bswap_replace): Replace expression by a
    rotation left if it is a 16 bit byte swap.
    (pass_optimize_bswap::execute): Also consider bswap in LROTATE_EXPR
    and RROTATE_EXPR statements if it is a byte rotation.

    gcc/testsuite/
    PR tree-optimization/63259
    * optimize-bswapsi-1.c (swap32_f): New bswap pass test.
    * optimize-bswaphi-1.c: Drop useless SIType definition and fix typo in
    following comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216971 138bc75d-0d04-0410-961f-82ee72b054a4
	* gnat.dg/opt42.ad[sb]: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216972 138bc75d-0d04-0410-961f-82ee72b054a4
	* ipa-inline.c (want_inline_small_function_p): Fix typo and formatting.
	(want_inline_function_to_all_callers_p): Fix formatting and simplify.


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