platform/upstream/gcc.git
10 years agopa.c (pa_output_move_double): Don't valididate when adjusting offsetable addresses.
John David Anglin [Tue, 25 Feb 2014 00:48:47 +0000 (00:48 +0000)]
pa.c (pa_output_move_double): Don't valididate when adjusting offsetable addresses.

* config/pa/pa.c (pa_output_move_double): Don't valididate when
adjusting offsetable addresses.

From-SVN: r208101

10 years agoDaily bump.
GCC Administrator [Tue, 25 Feb 2014 00:16:53 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r208100

10 years agore PR lto/60295 (Too many lto1-wpa-stream processes are forked)
Jan Hubicka [Mon, 24 Feb 2014 22:58:44 +0000 (23:58 +0100)]
re PR lto/60295 (Too many lto1-wpa-stream processes are forked)

PR lto/60295
* lto.c (stream_out): Avoid parallel streaming with
-flto=jobserver until we are able to throttle it down
resonably.

From-SVN: r208097

10 years agore PR c++/60146 (ICE when compiling this code with -fopenmp)
Jason Merrill [Mon, 24 Feb 2014 22:17:43 +0000 (17:17 -0500)]
re PR c++/60146 (ICE when compiling this code with -fopenmp)

PR c++/60146
* pt.c (tsubst_omp_for_iterator): Don't let substitution of the
DECL_EXPR initialize a non-class iterator.

From-SVN: r208094

10 years agore PR c++/60312 ([c++1y] ICE using auto as template parameter)
Jason Merrill [Mon, 24 Feb 2014 18:47:20 +0000 (13:47 -0500)]
re PR c++/60312 ([c++1y] ICE using auto as template parameter)

PR c++/60312
* parser.c (cp_parser_template_type_arg): Check for invalid 'auto'.

From-SVN: r208092

10 years agosparseset.h (sparseset_pop): Fix the wrong index.
Guozhi Wei [Mon, 24 Feb 2014 18:35:54 +0000 (18:35 +0000)]
sparseset.h (sparseset_pop): Fix the wrong index.

* sparseset.h (sparseset_pop): Fix the wrong index.

From-SVN: r208091

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 17:16:08 +0000 (18:16 +0100)]
[multiple changes]

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* s-os_lib.ads: Update comment.

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Expression_Function): Use sloc of
original defining identifiers in parameter specifications for
body. They may differ from parameter specification itself if a
list of identifiers appears in the tree and is expanded by parser.

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* par-ch3.adb (P_Basic_Declarative_Items): If an improper body
appears in a list of basic declarations, complete the tree with
an empty statement list, to prevent cascaded errors and crashes
if semantic analysis is attempted.

From-SVN: r208090

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 17:14:40 +0000 (18:14 +0100)]
[multiple changes]

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* g-sercom-mingw.adb (Open): Fix incorrect test for error return
value.
* erroutc.adb: Minor reformatting.

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Check_Clause_Syntax): Account
for a solitary input item in a dependency list.

2014-02-24  Yannick Moy  <moy@adacore.com>

* gnat1drv.adb (Adjust_Global_Switches): Do not
use validity checks at all in GNATprove_Mode.

From-SVN: r208089

10 years agog-sercom-mingw.adb, [...]: Minor reformatting.
Robert Dewar [Mon, 24 Feb 2014 17:13:34 +0000 (17:13 +0000)]
g-sercom-mingw.adb, [...]: Minor reformatting.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* g-sercom-mingw.adb, g-sercom-linux.adb, sem_prag.adb, freeze.adb,
atree.adb, atree.ads: Minor reformatting.

From-SVN: r208088

10 years agosem_ch6.adb (Analyze_Subprogram_Body_Contract): Do not enforce global and dependence...
Hristian Kirtchev [Mon, 24 Feb 2014 17:07:48 +0000 (17:07 +0000)]
sem_ch6.adb (Analyze_Subprogram_Body_Contract): Do not enforce global and dependence refinement when SPARK_Mode is off.

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Contract): Do not enforce
global and dependence refinement when SPARK_Mode is off.
* sem_ch7.adb (Analyze_Package_Body_Contract): Do not enforce
state refinement when SPARK_Mode is off.
* sem_ch13.adb (Analyze_Aspect_Specifications): Add local
variable Decl. Insert the generated pragma for Refined_State
after a potential pragma SPARK_Mode.
* sem_prag.adb (Analyze_Depends_In_Decl_Part): Add local
constant Deps. Remove local variable Expr. Check the syntax
of pragma Depends when SPARK_Mode is off. Factor out the
processing for extra parenthesis around individual clauses.
(Analyze_Global_In_Decl_List): Items is now a constant. Check
the syntax of pragma Global when SPARK_Mode is off.
(Analyze_Initializes_In_Decl_Part): Check the syntax of pragma
Initializes when SPARK_Mode is off.
(Analyze_Part_Of): Check
the syntax of the encapsulating state when SPARK_Mode is off.
(Analyze_Pragma): Check the syntax of pragma Abstract_State when
SPARK_Mode is off. Move the declaration order check with respect
to pragma Initializes to the end of the processing. Do not verify
the declaration order for pragma Initial_Condition when SPARK_Mode
is off. Do not complain about a useless package refinement when
SPARK_Mode is off.
(Analyze_Refined_Depends_In_Decl_Part): Refs
is now a constant. Check the syntax of pragma Refined_Depends
when SPARK_Mode is off.
(Analyze_Refined_Global_In_Decl_Part):
Check the syntax of pragma Refined_Global when SPARK_Mode is off.
(Analyze_Refined_State_In_Decl_Part): Check the syntax of pragma
Refined_State when SPARK_Mode is off.
(Check_Dependence_List_Syntax): New routine.
(Check_Global_List_Syntax): New routine.
(Check_Initialization_List_Syntax): New routine.
(Check_Item_Syntax): New routine.
(Check_State_Declaration_Syntax): New routine.
(Check_Refinement_List_Syntax): New routine.
(Has_Extra_Parentheses): Moved to the top level of Sem_Prag.

From-SVN: r208087

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 17:06:34 +0000 (18:06 +0100)]
[multiple changes]

2014-02-24  Robert Dewar  <dewar@adacore.com>

* a-tags.adb, s-os_lib.adb: Minor reformatting.

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* g-sercom-mingw.adb, g-sercom-linux.adb (Raise_Error): Include
strerror message, not just numeric errno value.

2014-02-24  Doug Rupp  <rupp@adacore.com>

* raise-gcc.c (exception_class_eq): Make endian neutral.

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* atree.ads, atree,adb (Copy_Separate_Tree): Remove Syntax_Only
flag, and reset Etype and Analyzed attributes unconditionally
when copying a tree that may be partly analyzed.
* freeze.adb: Change calls to Copy_Separate_Tree accordingly.
* sem_ch6.adb (Check_Inline_Pragma): If the Inline pragma appears
within a subprogram body and applies to it, remove it from the
body before making a copy of it, to prevent spurious errors when
analyzing the copied body.

From-SVN: r208086

10 years agoFix header.
Arnaud Charlet [Mon, 24 Feb 2014 17:04:26 +0000 (18:04 +0100)]
Fix header.

From-SVN: r208085

10 years agoMake-lang.in (GNAT_ADA_OBJS, [...]): Update deps.
Arnaud Charlet [Mon, 24 Feb 2014 17:03:02 +0000 (18:03 +0100)]
Make-lang.in (GNAT_ADA_OBJS, [...]): Update deps.

* gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Update
deps.

From-SVN: r208084

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 17:01:19 +0000 (18:01 +0100)]
[multiple changes]

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* s-os_lib.adb (Errno_Message): Do not depend on Integer'Image.
* s-oscons-tmplt.c: On VxWorks, include adaint.h only after
vxWorks.h has been included.  Also ensure that file attributes
related definitions are output even in cases where socket support
is not enabled.
* a-tags.adb: Code clean up.
* Make-generated.in (OSCONS_CPP, OSCONS_EXTRACT): Use -iquote
instead of -I to add the main ada source directory to the header
search path, in order to avoid conflict between our own "types.h"
and VxWork's <types.h>.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* atree.ads, atree.adb (Copy_Separate_Tree): Add Syntax_Only parameter.
* debug.adb: Remove documentation of -gnatd.X, no longer used.
* freeze.adb (Wrap_Imported_Subprogram): Fixed and activated.

2014-02-24  Bob Duff  <duff@adacore.com>

* gnat_ugn.texi: Improve documentation of gnatpp.

From-SVN: r208083

10 years agog-stheme.adb, [...] (Host_Error_Message): Return a string...
Thomas Quinot [Mon, 24 Feb 2014 16:59:24 +0000 (16:59 +0000)]
g-stheme.adb, [...] (Host_Error_Message): Return a string...

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* g-stheme.adb, g-socthi-vms.adb, g-socthi-vms.ads,
g-socthi-vxworks.adb, g-socthi-vxworks.ads, g-stseme.adb,
g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi.adb,
g-socthi.ads, g-socket.adb (Host_Error_Message): Return a string, not
a chars_ptr, because on Windows this is a renaming of
Socket_Error_Message.

From-SVN: r208082

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 16:58:19 +0000 (17:58 +0100)]
[multiple changes]

2014-02-24  Robert Dewar  <dewar@adacore.com>

* a-direct.adb, sem_ch5.adb, a-cfdlli.adb, a-cfhase.adb, a-tags.adb,
s-filatt.ads, a-cforma.adb, sem_ch6.adb, g-socthi-mingw.adb,
a-cfhama.adb, a-cforse.adb, a-cofove.adb: Minor reformatting and code
reorganization.

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* Make-generated.in (OSCONS_CPP, OSCONS_EXTRACT): Make sure
that the source directory containing s-oscons-tmplt.c is on the
include path, so that all internal header files are available.

From-SVN: r208081

10 years agosem_ch5.adb (Analyze_Loop_Parameter_Specification): If the domain of iteration is...
Ed Schonberg [Mon, 24 Feb 2014 16:56:25 +0000 (16:56 +0000)]
sem_ch5.adb (Analyze_Loop_Parameter_Specification): If the domain of iteration is an attribute reference 'Old...

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Loop_Parameter_Specification): If the
domain of iteration is an attribute reference 'Old, this is an
Ada 2012 iterator and the loop must be rewritten as such.

From-SVN: r208080

10 years agos-fileio.adb (Errno_Message): Remove, use shared version from s-os_lib instead.
Thomas Quinot [Mon, 24 Feb 2014 16:54:41 +0000 (16:54 +0000)]
s-fileio.adb (Errno_Message): Remove, use shared version from s-os_lib instead.

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* s-fileio.adb (Errno_Message): Remove, use shared version from
s-os_lib instead.
* s-crtrun.ads, Makefile.rtl: Remove now unused unit.
* g-stseme (Socket_Error_Message): Reimplement in terms of new
s-os_lib function.
* g-socthi.ads, g-socthi.adb: Change profile of
Socket_Error_Message to return String to allow the above.
* g-socket.adb, g-socthi-mingw.adb, g-socthi-mingw.ads,
* g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
* g-socthi-vxworks.ads: Update to account for the above profile
change.
* a-tags.adb: Use strlen builtin binding provided by s-crtl.
* s-crtl.ads (strncpy): New procedure.
* s-os_lib.adb (Copy_Attributes): Import just once (strncpy):
Use import from s-crtl.
* a-envvar.adb, osint.adb: Use imports of C runtime functions
from s-crtl instead of re-importing locally.

From-SVN: r208079

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 16:51:58 +0000 (17:51 +0100)]
[multiple changes]

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Analyze_Global_Item): Emit the
variable related checks concerning volatile objects only when
SPARK_Mode is on.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* sem_ch5.adb (Analyze_Iterator_Specification): use
Error_Msg_Ada_2012_Feature.

2014-02-24  Jose Ruiz  <ruiz@adacore.com>

* s-rident.ads (Profile_Info): For Ravenscar, the restrictions
No_Local_Timing_Events and No_Specific_Termination_Handlers
must be set, according to the Ravenscar profile definition
in D.13(6/3).

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Expression_Function): If this is a
completion, freeze return type and its designated type if needed.

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
'Address): When moving initialization statements to a freeze
entity, keep them under a single node (i.e. do not unwrap
expressions with actions), and set the Initialization_Statements
attribute again so that processing of a later pragma Import can
still remove them.

2014-02-24  Claire Dross  <dross@adacore.com>

* a-cfdlli.adb, a-cfdlli.ads, a-cfhama.adb, a-cfhama.ads,
a-cfhase.adb, a-cfhase.ads, a-cforma.adb, a-cforma.ads,
a-cforse.adb, a-cforse.ads, a-cofove.adb, a-cofove.ads: Rename
Left/Right to First_To_Previous/Current_To_Last.

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* adaint.h (struct file_attributes): New component "error"
(__gnat_error_attributes): Accessor for the above.
* adaint.c (__gnat_error_attributes): New subprogram
(__gnat_stat): Fix returned value (expect errno value)
(__gnat_stat_to_attr): Add management of error component (set to
stat errno value, except for missing files where it is set to 0,
and exists is set to 0).
* osint.ads (File_Attributes_Size): Update per change above,
also clarify documentation.
* s-filatt.ads: New file, binding to file attributes related
functions.
* Makefile.rtl (s-filatt): New runtime unit.
* s-crtl.ads (strlen): Expose binding to GCC builtin (falls back
to library function if not available on target).
* s-os_lib.ads, s-os_lib.adb (Errno_Message): New subprogram.
* s-oscons-tmplt.c (SIZEOF_struct_file_attributes,
SIZEOF_struct_dirent_alloc): New constants.
* Make-generated.in (s-oscons.ads): Now requires adaint.h.
* a-direct.adb (Fetch_Next_Entry): Fix incorrect buffer sizes.
Perform appropriate error checking if stat fails (do not just
ignore existing files if stat fails)
* gcc-interface/Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Update
dependencies.

From-SVN: r208078

10 years agosem_prag.adb (Analyze_Global_Item): Move the check concerning the use of volatile...
Hristian Kirtchev [Mon, 24 Feb 2014 16:32:04 +0000 (16:32 +0000)]
sem_prag.adb (Analyze_Global_Item): Move the check concerning the use of volatile objects as global items in a...

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Analyze_Global_Item): Move the check concerning
the use of volatile objects as global items in a function to
the variable related checks section.
* sem_util.adb (Async_Readers_Enabled): Directly call
Has_Enabled_Property.
(Async_Writers_Enabled): Directly call Has_Enabled_Property.
(Effective_Reads_Enabled): Directly call Has_Enabled_Property.
(Effective_Writes_Enabled): Directly call Has_Enabled_Property.
(Has_Enabled_Property): Rename formal parameter State_Id to Item_Id.
Update the comment on usage. State_Has_Enabled_Property how handles
the original logic of the routine. Add processing for variables.
(State_Has_Enabled_Property): New routine.
(Variable_Has_Enabled_Property): New routine.

From-SVN: r208077

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 16:30:08 +0000 (17:30 +0100)]
[multiple changes]

2014-02-24  Robert Dewar  <dewar@adacore.com>

* sinfo.ads, sem_ch12.adb, sem_res.adb, sem_ch4.adb, par-ch12.adb:
Minor reformatting.
* atree.ads, atree.adb (Node35): New function.
(Set_Node35): New procedure.
* debug.adb: Define new debug flag -gnatd.X.
* einfo.ads, einfo.adb (Import_Pragma): New field.
* freeze.adb (Wrap_Imported_Procedure): New procedure (not
really active yet, has to be activated with -gnatd.X.
* sem_prag.adb (Set_Imported): Set new Import_Pragma
field (Set_Imported): Don't set Is_Public (see
Freeze.Wrap_Imported_Subprogram)
* par-ch3.adb (P_Component_List): Handle unexpected null component.

2014-02-24  Yannick Moy  <moy@adacore.com>

* sem_ch3.adb: Correct reference to SPARK RM in error messages.
* gnat_rm.texi: Correct documentation of attribute Update.

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Iterator_Specification): Reject container
iterator in older versions of Ada.

From-SVN: r208076

10 years agosem_ch5.adb, [...]: Change spelling 'parametrization' to 'parameterization'.
Gary Dismukes [Mon, 24 Feb 2014 16:01:26 +0000 (16:01 +0000)]
sem_ch5.adb, [...]: Change spelling 'parametrization' to 'parameterization'.

2014-02-24  Gary Dismukes  <dismukes@adacore.com>

* sem_ch5.adb, sem_aux.ads, sem_ch12.adb, gnat_ugn.texi, par.adb,
par-ch12.adb: Change spelling 'parametrization' to 'parameterization'.

From-SVN: r208075

10 years agosinfo.ads, sinfo.adb: New attribute Generalized_Indexing...
Ed Schonberg [Mon, 24 Feb 2014 15:57:59 +0000 (15:57 +0000)]
sinfo.ads, sinfo.adb: New attribute Generalized_Indexing...

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sinfo.ads, sinfo.adb: New attribute Generalized_Indexing, for
indexed_components that are instances of Ada 2012 container
indexing operations. Analysis and resolution of such nodes
is performed on the attribute, and the original source is
preserved for ASIS operations. If expansion is enabled, the
indexed component is replaced by the value of this attribute,
which is in a call to an Indexing aspect, in most case wrapped
in a dereference operation.
* sem_ch4.adb (Analyze_Indexed_Component): Create
Generalized_Indexing attribute when appropriate.
(Analyze_Call): If prefix is not overloadable and has an indexing
aspect, transform into an indexed component so it can be analyzed
as a potential container indexing.
(Analyze_Expression): If node is an indexed component with a
Generalized_ Indexing, do not re-analyze.
* sem_res.adb (Resolve_Generalized_Indexing): Complete resolution
of an indexed_component that has been transformed into a container
indexing operation.
(Resolve_Indexed_Component): Call the above when required.
(Resolve): Do not insert an explicit dereference operation on
an indexed_component whose type has an implicit dereference:
the operation is inserted when resolving the related
Generalized_Indexing.

From-SVN: r208074

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 15:56:14 +0000 (16:56 +0100)]
[multiple changes]

2014-02-24  Olivier Ramonat  <ramonat@adacore.com>

* gnat_rm.texi, gnat_ugn.texi: Replace Ada Compiler by Ada Development
Environment.

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Check_Constituent_Usage): Remove leading spaces in
error messages.
(Inconsistent_Mode_Error): Remove leading spaces in error messages.
Merge the expected and available mode errors.
(Report_Unused_Constituents): Remove leading spaces in error messages.
(Report_Unused_States): Remove leading spaces in error messages.

From-SVN: r208073

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 15:52:45 +0000 (16:52 +0100)]
[multiple changes]

2014-02-24  Thomas Quinot  <quinot@adacore.com>

* par_sco.adb (Traverse_One): Refine categorization of statement
SCOs.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* aspects.ads, aspects.adb: Remove aspects Ada_2005 and Ada_2012,
Pure_05, Pure_12 and Preelaborate_05.
* gnat_rm.texi: Update accordingly.
* sem_prag.adb: Document one argument form of Ada_05/Ada_2005
pragmas Document one argument form of Ada_12/Ada_2012 pragmas
Recognize one argument form of these pragmas only in GNAT mode
(-gnatg).

From-SVN: r208072

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 15:49:39 +0000 (16:49 +0100)]
[multiple changes]

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* s-dimmks.ads: Replace symbol for temperature, previously the
Greek letter Theta, by the ASCII @ sign.
* s-diflio.ads: ditto.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* exp_ch4.adb: Minor code reorganization (use OR for boolean
variables).
* sem_ch3.adb, sem_prag.adb, freeze.adb: Minor reformatting.

2014-02-24  Ben Brosgol  <brosgol@adacore.com>

* gnat_ugn.texi, projects.texi: Added the necessary conditionalization
so that references to gnatmem and ASIS tools do not appear in the FSF
edition of the GNAT User's Guide.

From-SVN: r208071

10 years ago[multiple changes]
Arnaud Charlet [Mon, 24 Feb 2014 15:09:40 +0000 (16:09 +0100)]
[multiple changes]

2014-02-24  Yannick Moy  <moy@adacore.com>

* freeze.adb (Freeze_Entity): Do not issue warning
for pre/post being ignored on imported subprogram in GNATprove
mode.

2014-02-24  Robert Dewar  <dewar@adacore.com>

* exp_ch5.adb, sem_ch5.adb, sem_type.adb, sem_res.adb, sem_attr.adb,
stand.ads, sem_eval.adb: Minor reformatting.

2014-02-24  Yannick Moy  <moy@adacore.com>

* sem_prag.adb: Minor rewording in error message.

2014-02-24  Johannes Kanig  <kanig@adacore.com>

* exp_util.adb (Expand_Subtype_From_Expr): Do not expand subtypes in
GNATprove_mode, gnat2why doesn't need nor use these types.

2014-02-24  Gary Dismukes  <dismukes@adacore.com>

* exp_ch4.adb (Expand_N_Op_Expon): On the AAMP
target, in the case of signed integer exponentiation that uses a
run-time routine, always select the Exp_* versions, since overflow
checking is automatically done by AAMP arithmetic instructions.

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications):
When the related context is a package instace, insert pragma
Abstract_State after all internally-generated renamings related
to the instance "header".

2014-02-24  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Analyze_Declarations): Analyze Contract of abstract
subprograms.
* sem_disp.adb (Check_Dispatching_Context): A non-dispatching
call to an abstract subprogram is legal if it appears in a
pre/postcondition of another abstract operation.

From-SVN: r208070

10 years agoTILE-Gx big endian support.
Walter Lee [Mon, 24 Feb 2014 15:08:00 +0000 (15:08 +0000)]
TILE-Gx big endian support.

/:
* configure.ac (tilepro-*-*) Change to tilepro*-*-*.
(tilegx-*-*): Change to tilegx*-*-*.
* configure: Regenerate.

contrib/:
* config-list.mk (LIST): Add tilegxbe-linux-gnu.

libcpp/:
* configure.ac: Change "tilepro" triplet to "tilepro*".
* configure: Regenerate.

libgcc/:
* config.host: Support "tilegx*" and "tilepro*" triplets.
* config/tilegx/sfp-machine32.h (__BYTE_ORDER): Handle big endian.
* config/tilegx/sfp-machine64.h (__BYTE_ORDER): Handle big endian.

gcc/:
* config.gcc (tilepro-*-*): Change to tilepro*-*-*.
(tilegx-*-linux*): Change to tilegx*-*-linux*; Support tilegxbe
triplet.
* common/config/tilegx/tilegx-common.c
(TARGET_DEFAULT_TARGET_FLAGS): Define.
* config/tilegx/linux.h (ASM_SPEC): Add endian_spec.
(LINK_SPEC): Ditto.
* config/tilegx/sync.md (atomic_test_and_set): Handle big endian.
* config/tilegx/tilegx.c (tilegx_return_in_msb): New.
(tilegx_gimplify_va_arg_expr): Handle big endian.
(tilegx_expand_unaligned_load): Ditto.
(tilegx_expand_unaligned_store): Ditto.
(TARGET_RETURN_IN_MSB): New.
* config/tilegx/tilegx.h (TARGET_DEFAULT): New.
(TARGET_ENDIAN_DEFAULT): New.
(TARGET_BIG_ENDIAN): Handle big endian.
(BYTES_BIG_ENDIAN): Ditto.
(WORDS_BIG_ENDIAN): Ditto.
(FLOAT_WORDS_BIG_ENDIAN): Ditto.
(ENDIAN_SPEC): New.
(EXTRA_SPECS): New.
* config/tilegx/tilegx.md (extv): Handle big endian.
(extzv): Ditto.
(insn_st<n>): Ditto.
(insn_st<n>_add<bitsuffix>): Ditto.
(insn_stnt<n>): Ditto.
(insn_stnt<n>_add<bitsuffix>):Ditto.
(vec_interleave_highv8qi): Handle big endian.
(vec_interleave_highv8qi_be): New.
(vec_interleave_highv8qi_le): New.
(insn_v1int_h): Handle big endian.
(vec_interleave_lowv8qi): Handle big endian.
(vec_interleave_lowv8qi_be): New.
(vec_interleave_lowv8qi_le): New.
(insn_v1int_l): Handle big endian.
(vec_interleave_highv4hi): Handle big endian.
(vec_interleave_highv4hi_be): New.
(vec_interleave_highv4hi_le): New.
(insn_v2int_h): Handle big endian.
(vec_interleave_lowv4hi): Handle big endian.
(vec_interleave_lowv4hi_be): New.
(vec_interleave_lowv4hi_le): New.
(insn_v2int_l): Handle big endian.
(vec_interleave_highv2si): Handle big endian.
(vec_interleave_highv2si_be): New.
(vec_interleave_highv2si_le): New.
(insn_v4int_h): Handle big endian.
(vec_interleave_lowv2si): Handle big endian.
(vec_interleave_lowv2si_be): New.
(vec_interleave_lowv2si_le): New.
(insn_v4int_l): Handle big endian.
* config/tilegx/tilegx.opt (mbig-endian): New option.
(mlittle-endian): New option.
* doc/install.texi: Document tilegxbe-linux.
* doc/invoke.texi: Document -mbig-endian and -mlittle-endian.

From-SVN: r208069

10 years ago2014-02-24 Sergey Rybin <rybin@adacore.com frybin>
Arnaud Charlet [Mon, 24 Feb 2014 15:07:09 +0000 (16:07 +0100)]
2014-02-24  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi: Misc updates.

2014-02-24  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_prag.adb (Expand_Old): Set the type of the generated temporary.

2014-02-24  Gary Dismukes  <dismukes@adacore.com>

* layout.adb (Layout_Variant_Record): Instantiate
Generic_Check_Choices and call Check_Choices before calling
Build_Discr_Checking_Funcs, since we need Others_Discrete_Choices
set to prevent generating incorrect discriminant-checking
functions for 'others' variants (functions that unconditionally
return True rather than accounting for the values covered by the
'others' choice).
* sem_eval.ads (Subtypes_Statically_Compatible): Add formal
Formal_Derived_Matching.
(Subtypes_Statically_Match): Add formal Formal_Derived_Matching.
* sem_eval.adb (Subtypes_Statically_Compatible): Pass new
Formal_Derived_Matching formal to Subtypes_Statically_Match.
(Subtypes_Statically_Match): Suppress the Object_Size matching
test in the case where Formal_Derived_Matching is True.
* sem_ch12.adb (Validate_Derived_Type_Instance): Pass
True for Formal_Derived_Matching_Formal on the call to
Subtypes_Statically_Compatible.

From-SVN: r208068

10 years agore PR ipa/60266 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:261 during LibreOffice...
Martin Jambor [Mon, 24 Feb 2014 12:39:52 +0000 (13:39 +0100)]
re PR ipa/60266 (ICE: in ipa_get_parm_lattices, at ipa-cp.c:261 during LibreOffice LTO build)

2014-02-24  Martin Jambor  <mjambor@suse.cz>

PR ipa/60266
* ipa-cp.c (propagate_constants_accross_call): Bail out early if
there are no parameter descriptors.

From-SVN: r208067

10 years agore PR rtl-optimization/60268 (ICE: in rank_for_schedule, at haifa-sched.c:2557)
Andrey Belevantsev [Mon, 24 Feb 2014 05:57:02 +0000 (09:57 +0400)]
re PR rtl-optimization/60268 (ICE: in rank_for_schedule, at haifa-sched.c:2557)

gcc/

2014-02-24  Andrey Belevantsev  <abel@ispras.ru>

    PR rtl-optimization/60268
    * sched-rgn.c (haifa_find_rgns): Move the nr_regions_initial variable
    initialization to ...
    (sched_rgn_init): ... here.
    (schedule_region): Check for SCHED_PRESSURE_NONE earlier.

testsuite/

2014-02-24  Andrey Belevantsev  <abel@ispras.ru>

    PR rtl-optimization/60268
    * gcc.c-torture/compile/pr60268.c: New test.

From-SVN: r208066

10 years agoDaily bump.
GCC Administrator [Mon, 24 Feb 2014 00:16:52 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r208065

10 years agomicroblaze.md: Correct ashrsi_reg / lshrsi_reg names
David Holsgrove [Sun, 23 Feb 2014 18:58:40 +0000 (18:58 +0000)]
microblaze.md: Correct ashrsi_reg / lshrsi_reg names

2014-02-23  David Holsgrove <david.holsgrove@xilinx.com>

* config/microblaze/microblaze.md: Correct ashrsi_reg / lshrsi_reg names

From-SVN: r208061

10 years ago[multiple changes]
Michael Eager [Sun, 23 Feb 2014 18:53:47 +0000 (18:53 +0000)]
[multiple changes]

2014-02-23  Edgar E. Iglesias <edgar.iglesias@xilinx.com>

* config/microblaze/microblaze.h: Remove SECONDARY_MEMORY_NEEDED
definition.

2014-02-23  David Holsgrove <david.holsgrove@xilinx.com>

* gcc/testsuite/gcc.target/microblaze/others/mem_reload.c: New test.

From-SVN: r208059

10 years agomicroblaze.c: Add microblaze_asm_output_mi_thunk and define TARGET_ASM_OUTPUT_MI_THUN...
David Holsgrove [Sun, 23 Feb 2014 18:44:27 +0000 (18:44 +0000)]
microblaze.c: Add microblaze_asm_output_mi_thunk and define TARGET_ASM_OUTPUT_MI_THUNK and...

2014-02-23  David Holsgrove <david.holsgrove@xilinx.com>

* /config/microblaze/microblaze.c: Add microblaze_asm_output_mi_thunk
and define TARGET_ASM_OUTPUT_MI_THUNK and
TARGET_ASM_CAN_OUTPUT_MI_THUNK.

From-SVN: r208057

10 years agopredicates.md: Add cmp_op predicate.
David Holsgrove [Sun, 23 Feb 2014 18:36:38 +0000 (18:36 +0000)]
predicates.md: Add cmp_op predicate.

2014-02-23  David Holsgrove <david.holsgrove@xilinx.com>

* config/microblaze/predicates.md: Add cmp_op predicate.
* config/microblaze/microblaze.md: Add branch_compare instruction
which uses cmp_op predicate and emits cmp insn before branch.
* config/microblaze/microblaze.c (microblaze_emit_compare): Rename
to microblaze_expand_conditional_branch and consolidate logic.
(microblaze_expand_conditional_branch): emit branch_compare
insn instead of handling cmp op separate from branch insn.

From-SVN: r208055

10 years agoMakefile.in (TOOLS_FLAGS_TO_PASS_CROSS): Robustify.
Eric Botcazou [Sun, 23 Feb 2014 16:30:11 +0000 (16:30 +0000)]
Makefile.in (TOOLS_FLAGS_TO_PASS_CROSS): Robustify.

gnattools/
* Makefile.in (TOOLS_FLAGS_TO_PASS_CROSS): Robustify.
gcc/ada/
* gcc-interface/Make-lang.in (ADA_TOOLS_FLAGS_TO_PASS): Likewise.

From-SVN: r208053

10 years agors6000.c (rs6000_emit_le_vsx_move): Relax assert to permit subregs.
Bill Schmidt [Sun, 23 Feb 2014 16:28:32 +0000 (16:28 +0000)]
rs6000.c (rs6000_emit_le_vsx_move): Relax assert to permit subregs.

2014-02-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (rs6000_emit_le_vsx_move): Relax assert
to permit subregs.

From-SVN: r208052

10 years agoutils2.c (build_simple_component_ref): Fix formatting.
Eric Botcazou [Sun, 23 Feb 2014 16:26:32 +0000 (16:26 +0000)]
utils2.c (build_simple_component_ref): Fix formatting.

* gcc-interface/utils2.c (build_simple_component_ref): Fix formatting.
Look through a conversion between original and packable version to get
the base object.
(build_component_ref): Rework comment and fix formatting.

From-SVN: r208051

10 years agoaltivec.md (altivec_lve<VI_char>x): Replace define_insn with define_expand and new...
Bill Schmidt [Sun, 23 Feb 2014 15:27:48 +0000 (15:27 +0000)]
altivec.md (altivec_lve<VI_char>x): Replace define_insn with define_expand and new define_insn...

gcc:

2014-02-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_lve<VI_char>x): Replace
define_insn with define_expand and new define_insn
*altivec_lve<VI_char>x_internal.
(altivec_stve<VI_char>x): Replace define_insn with define_expand
and new define_insn *altivec_stve<VI_char>x_internal.
* config/rs6000/rs6000-protos.h (altivec_expand_stvex_be): New
prototype.
* config/rs6000/rs6000.c (altivec_expand_lvx_be): Document use by
lve*x built-ins.
(altivec_expand_stvex_be): New function.

gcc/testsuite:

2014-02-23  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/lde.c: New test.
* gcc.dg/vmx/lde-be-order.c: New test.
* gcc.dg/vmx/ste.c: New test.
* gcc.dg/vmx/ste-be-order.c: New test.

From-SVN: r208049

10 years agoDaily bump.
GCC Administrator [Sun, 23 Feb 2014 00:16:39 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r208048

10 years agoavr.c (avr_can_eliminate): Allow elimination from ARG_POINTER_REGNUM to STACK_POINTER...
Joern Rennecke [Sat, 22 Feb 2014 20:24:08 +0000 (20:24 +0000)]
avr.c (avr_can_eliminate): Allow elimination from ARG_POINTER_REGNUM to STACK_POINTER_REGNUM if...

        * config/avr/avr.c (avr_can_eliminate): Allow elimination from
        ARG_POINTER_REGNUM
        to STACK_POINTER_REGNUM if !frame_pointer_needed.
        * config/avr/avr.c (ELIMINABLE_REGS): Add elimination from
        ARG_POINTER_REGNUM to STACK_POINTER_REGNUM.

From-SVN: r208045

10 years agore PR testsuite/60173 (gcc.dg/binop-xor1.c scan-tree-dump-times)
Hans-Peter Nilsson [Sat, 22 Feb 2014 16:58:06 +0000 (16:58 +0000)]
re PR testsuite/60173 (gcc.dg/binop-xor1.c scan-tree-dump-times)

PR testsuite/60173
* lib/target-supports.exp
(check_effective_target_logical_op_short_circuit): Add cris-*-*
and crisv32-*-* to list.

From-SVN: r208044

10 years agore PR libstdc++/60308 (std::deque leaks memory)
Marc Glisse [Sat, 22 Feb 2014 10:24:11 +0000 (11:24 +0100)]
re PR libstdc++/60308 (std::deque leaks memory)

2014-02-22  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/60308
* include/bits/stl_deque.h (_Deque_base::_Deque_base(const
allocator_type&)): Remove redundant call to _M_initialize_map.
(deque::deque(const allocator_type&)): Initialize _Base with a
constructor that calls _M_initialize_map.

Partial revert:

2013-09-20  Marc Glisse  <marc.glisse@inria.fr>
PR libstdc++/58338
(_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
_M_initialize_map.

From-SVN: r208041

10 years agore PR c++/58170 ([c++11] Crash when aliasing a template class that is a member of...
Jason Merrill [Sat, 22 Feb 2014 05:50:12 +0000 (00:50 -0500)]
re PR c++/58170 ([c++11] Crash when aliasing a template class that is a member of its template base class.)

PR c++/58170
* parser.c (cp_parser_type_name): Always check dependency.
(cp_parser_type_specifier_seq): Call
cp_parser_parse_and_diagnose_invalid_type_name.

From-SVN: r208040

10 years agoDaily bump.
GCC Administrator [Sat, 22 Feb 2014 00:16:58 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r208037

10 years agore PR fortran/60302 (ICE with c_f_pointer and android cross compiler)
Janus Weil [Fri, 21 Feb 2014 22:54:50 +0000 (23:54 +0100)]
re PR fortran/60302 (ICE with c_f_pointer and android cross compiler)

2014-02-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/60302
* check.c (gfc_check_c_f_pointer): Only clear 'size' if 'gfc_array_size'
is successful.

2014-02-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/60302
* gfortran.dg/c_f_pointer_shape_tests_6.f90: New.

From-SVN: r208033

10 years agore PR c++/60108 ([C++11] ICE in use_thunk, at cp/method.c:340)
Jason Merrill [Fri, 21 Feb 2014 21:57:49 +0000 (16:57 -0500)]
re PR c++/60108 ([C++11] ICE in use_thunk, at cp/method.c:340)

PR c++/60108
* semantics.c (expand_or_defer_fn_1): Check DECL_DEFAULTED_FN.

From-SVN: r208030

10 years agore PR c++/60185 (ICE with invalid default parameter)
Jason Merrill [Fri, 21 Feb 2014 21:53:46 +0000 (16:53 -0500)]
re PR c++/60185 (ICE with invalid default parameter)

PR c++/60185
* parser.c (cp_parser_default_argument): Clear
current_class_ptr/current_class_ref like tsubst_default_argument.

From-SVN: r208029

10 years agore PR c++/60252 ([c++11] ICE with invalid variable-length array in lambda parameter)
Jason Merrill [Fri, 21 Feb 2014 21:50:52 +0000 (16:50 -0500)]
re PR c++/60252 ([c++11] ICE with invalid variable-length array in lambda parameter)

PR c++/60252
* lambda.c (maybe_resolve_dummy): Check lambda_function rather
than current_binding_level.

From-SVN: r208028

10 years agore PR c++/60186 ([c++11] ICE with invalid value in constexpr array initializer)
Jason Merrill [Fri, 21 Feb 2014 21:49:05 +0000 (16:49 -0500)]
re PR c++/60186 ([c++11] ICE with invalid value in constexpr array initializer)

PR c++/60186
* typeck2.c (massage_init_elt): Call fold_non_dependent_expr_sfinae.

From-SVN: r208027

10 years agore PR c++/60187 ([c++11] ICE with parameter pack as underlying type for enum)
Jason Merrill [Fri, 21 Feb 2014 21:47:30 +0000 (16:47 -0500)]
re PR c++/60187 ([c++11] ICE with parameter pack as underlying type for enum)

PR c++/60187
* parser.c (cp_parser_enum_specifier): Call
check_for_bare_parameter_packs.

From-SVN: r208026

10 years agore PR c++/59347 (ICE on invalid: tree check: expected class 'type', have 'exceptional...
Jason Merrill [Fri, 21 Feb 2014 21:43:29 +0000 (16:43 -0500)]
re PR c++/59347 (ICE on invalid: tree check: expected class 'type', have 'exceptional' (error_mark) in tsubst_decl, at cp/pt.c:10798)

PR c++/59347
* pt.c (tsubst_decl) [TYPE_DECL]: Don't try to instantiate an
erroneous typedef.

From-SVN: r208025

10 years agore PR c++/60241 (internal compiler error: in finish_member_declaration, at cp/semanti...
Jason Merrill [Fri, 21 Feb 2014 21:41:16 +0000 (16:41 -0500)]
re PR c++/60241 (internal compiler error: in finish_member_declaration, at cp/semantics.c:2617)

PR c++/60241
* pt.c (lookup_template_class_1): Update DECL_TEMPLATE_INSTANTIATIONS
of the partial instantiation, not the most general template.
(maybe_process_partial_specialization): Reassign everything on
that list.

From-SVN: r208024

10 years agore PR target/60298 ([ARM/Thumb1] ICE caused by LRA for case pr54713-1.c)
Vladimir Makarov [Fri, 21 Feb 2014 21:23:48 +0000 (21:23 +0000)]
re PR target/60298 ([ARM/Thumb1] ICE caused by LRA for case pr54713-1.c)

2014-02-21  Vladimir Makarov  <vmakarov@redhat.com>

PR target/60298
* lra-constraints.c (inherit_reload_reg): Use lra_emit_move
instead of emit_move_insn.

From-SVN: r208023

10 years agoaltivec.md (altivec_vsumsws): Replace second vspltw with vsldoi.
Bill Schmidt [Fri, 21 Feb 2014 21:01:01 +0000 (21:01 +0000)]
altivec.md (altivec_vsumsws): Replace second vspltw with vsldoi.

gcc:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_vsumsws): Replace second
vspltw with vsldoi.
(reduc_uplus_v16qi): Use gen_altivec_vsumsws_direct instead of
gen_altivec_vsumsws.

gcc/testsuite:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/vsums.c: Check entire result vector.
* gcc.dg/vmx/vsums-be-order.c: Likewise.

From-SVN: r208021

10 years agoaltivec.md (altivec_lvxl): Rename as *altivec_lvxl_<mode>_internal and use VM2 iterat...
William Schmidt [Fri, 21 Feb 2014 20:46:52 +0000 (20:46 +0000)]
altivec.md (altivec_lvxl): Rename as *altivec_lvxl_<mode>_internal and use VM2 iterator instead of V4SI.

gcc:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_lvxl): Rename as
*altivec_lvxl_<mode>_internal and use VM2 iterator instead of
V4SI.
(altivec_lvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_lvx): Rename as *altivec_lvx_<mode>_internal.
(altivec_lvx_<mode>): New define_expand incorporating -maltivec=be
semantics where needed.
(altivec_stvx): Rename as *altivec_stvx_<mode>_internal.
(altivec_stvx_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_stvxl): Rename as *altivec_stvxl_<mode>_internal and use
VM2 iterator instead of V4SI.
(altivec_stvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
* config/rs6000/rs6000-builtin.def: Add new built-in definitions
LVXL_V2DF, LVXL_V2DI, LVXL_V4SF, LVXL_V4SI, LVXL_V8HI, LVXL_V16QI,
LVX_V2DF, LVX_V2DI, LVX_V4SF, LVX_V4SI, LVX_V8HI, LVX_V16QI,
STVX_V2DF, STVX_V2DI, STVX_V4SF, STVX_V4SI, STVX_V8HI, STVX_V16QI,
STVXL_V2DF, STVXL_V2DI, STVXL_V4SF, STVXL_V4SI, STVXL_V8HI,
STVXL_V16QI.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Replace
ALTIVEC_BUILTIN_LVX with ALTIVEC_BUILTIN_LVX_<MODE> throughout;
similarly for ALTIVEC_BUILTIN_LVXL, ALTIVEC_BUILTIN_STVX, and
ALTIVEC_BUILTIN_STVXL.
* config/rs6000/rs6000-protos.h (altivec_expand_lvx_be): New
prototype.
(altivec_expand_stvx_be): Likewise.
* config/rs6000/rs6000.c (swap_selector_for_mode): New function.
(altivec_expand_lvx_be): Likewise.
(altivec_expand_stvx_be): Likewise.
(altivec_expand_builtin): Add cases for
ALTIVEC_BUILTIN_STVX_<MODE>, ALTIVEC_BUILTIN_STVXL_<MODE>,
ALTIVEC_BUILTIN_LVXL_<MODE>, and ALTIVEC_BUILTIN_LVX_<MODE>.
(altivec_init_builtins): Add definitions for
__builtin_altivec_lvxl_<mode>, __builtin_altivec_lvx_<mode>,
__builtin_altivec_stvx_<mode>, and
__builtin_altivec_stvxl_<mode>.

gcc/testsuite:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/ld.c: New test.
* gcc.dg/vmx/ld-be-order.c: New test.
* gcc.dg/vmx/ld-vsx.c: New test.
* gcc.dg/vmx/ld-vsx-be-order.c: New test.
* gcc.dg/vmx/ldl.c: New test.
* gcc.dg/vmx/ldl-be-order.c: New test.
* gcc.dg/vmx/ldl-vsx.c: New test.
* gcc.dg/vmx/ldl-vsx-be-order.c: New test.
* gcc.dg/vmx/st.c: New test.
* gcc.dg/vmx/st-be-order.c: New test.
* gcc.dg/vmx/st-vsx.c: New test.
* gcc.dg/vmx/st-vsx-be-order.c: New test.
* gcc.dg/vmx/stl.c: New test.
* gcc.dg/vmx/stl-be-order.c: New test.
* gcc.dg/vmx/stl-vsx.c: New test.
* gcc.dg/vmx/stl-vsx-be-order.c: New test.

From-SVN: r208019

10 years agoaltivec.md (altivec_lvxl): Rename as *altivec_lvxl_<mode>_internal and use VM2 iterat...
William Schmidt [Fri, 21 Feb 2014 20:45:09 +0000 (20:45 +0000)]
altivec.md (altivec_lvxl): Rename as *altivec_lvxl_<mode>_internal and use VM2 iterator instead of V4SI.

gcc:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (altivec_lvxl): Rename as
*altivec_lvxl_<mode>_internal and use VM2 iterator instead of
V4SI.
(altivec_lvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_lvx): Rename as *altivec_lvx_<mode>_internal.
(altivec_lvx_<mode>): New define_expand incorporating -maltivec=be
semantics where needed.
(altivec_stvx): Rename as *altivec_stvx_<mode>_internal.
(altivec_stvx_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
(altivec_stvxl): Rename as *altivec_stvxl_<mode>_internal and use
VM2 iterator instead of V4SI.
(altivec_stvxl_<mode>): New define_expand incorporating
-maltivec=be semantics where needed.
* config/rs6000/rs6000-builtin.def: Add new built-in definitions
LVXL_V2DF, LVXL_V2DI, LVXL_V4SF, LVXL_V4SI, LVXL_V8HI, LVXL_V16QI,
LVX_V2DF, LVX_V2DI, LVX_V4SF, LVX_V4SI, LVX_V8HI, LVX_V16QI,
STVX_V2DF, STVX_V2DI, STVX_V4SF, STVX_V4SI, STVX_V8HI, STVX_V16QI,
STVXL_V2DF, STVXL_V2DI, STVXL_V4SF, STVXL_V4SI, STVXL_V8HI,
STVXL_V16QI.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Replace
ALTIVEC_BUILTIN_LVX with ALTIVEC_BUILTIN_LVX_<MODE> throughout;
similarly for ALTIVEC_BUILTIN_LVXL, ALTIVEC_BUILTIN_STVX, and
ALTIVEC_BUILTIN_STVXL.
* config/rs6000/rs6000-protos.h (altivec_expand_lvx_be): New
prototype.
(altivec_expand_stvx_be): Likewise.
* config/rs6000/rs6000.c (swap_selector_for_mode): New function.
(altivec_expand_lvx_be): Likewise.
(altivec_expand_stvx_be): Likewise.
(altivec_expand_builtin): Add cases for
ALTIVEC_BUILTIN_STVX_<MODE>, ALTIVEC_BUILTIN_STVXL_<MODE>,
ALTIVEC_BUILTIN_LVXL_<MODE>, and ALTIVEC_BUILTIN_LVX_<MODE>.
(altivec_init_builtins): Add definitions for
__builtin_altivec_lvxl_<mode>, __builtin_altivec_lvx_<mode>,
__builtin_altivec_stvx_<mode>, and
__builtin_altivec_stvxl_<mode>.

gcc/testsuite:

2014-02-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/ld.c: New test.
* gcc.dg/vmx/ld-be-order.c: New test.
* gcc.dg/vmx/ld-vsx.c: New test.
* gcc.dg/vmx/ld-vsx-be-order.c: New test.
* gcc.dg/vmx/ldl.c: New test.
* gcc.dg/vmx/ldl-be-order.c: New test.
* gcc.dg/vmx/ldl-vsx.c: New test.
* gcc.dg/vmx/ldl-vsx-be-order.c: New test.
* gcc.dg/vmx/st.c: New test.
* gcc.dg/vmx/st-be-order.c: New test.
* gcc.dg/vmx/st-vsx.c: New test.
* gcc.dg/vmx/st-vsx-be-order.c: New test.
* gcc.dg/vmx/stl.c: New test.
* gcc.dg/vmx/stl-be-order.c: New test.
* gcc.dg/vmx/stl-vsx.c: New test.
* gcc.dg/vmx/stl-vsx-be-order.c: New test.

From-SVN: r208018

10 years agoi386-2.C (dg-options): Add -mavx512pf.
Uros Bizjak [Fri, 21 Feb 2014 19:24:43 +0000 (20:24 +0100)]
i386-2.C (dg-options): Add -mavx512pf.

* g++.dg/other/i386-2.C (dg-options): Add -mavx512pf.
* g++.dg/other/i386-3.C (dg-options): Ditto.
* gcc.target/i386/sse-12.c (dg-options): Add -msha.
* gcc.target/i386/sse-13.c (dg-options): Add -mavx512er, -mavx512cd,
-mavx512pf and -msha.

From-SVN: r208012

10 years agore PR c++/60227 ([C++11] ICE using brace-enclosed initializer list to initialize...
Jason Merrill [Fri, 21 Feb 2014 15:53:43 +0000 (10:53 -0500)]
re PR c++/60227 ([C++11] ICE using brace-enclosed initializer list to initialize array)

PR c++/60227
Fix ChangeLog

From-SVN: r208009

10 years agore PR c++/60216 ([c++11] Trouble with deleted template functions)
Jason Merrill [Fri, 21 Feb 2014 14:57:07 +0000 (09:57 -0500)]
re PR c++/60216 ([c++11] Trouble with deleted template functions)

PR c++/60216
* pt.c (register_specialization): Copy DECL_DELETED_FN to clones.
(check_explicit_specialization): Don't clone.

From-SVN: r208004

10 years agore PR c++/60219 ([c++11] ICE invalid use of variadic template)
Jason Merrill [Fri, 21 Feb 2014 14:57:00 +0000 (09:57 -0500)]
re PR c++/60219 ([c++11] ICE invalid use of variadic template)

PR c++/60219
* pt.c (coerce_template_parms): Bail if argument packing fails.

From-SVN: r208003

10 years agore PR c++/60224 (ICE using invalid initializer for array)
Jason Merrill [Fri, 21 Feb 2014 14:56:53 +0000 (09:56 -0500)]
re PR c++/60224 (ICE using invalid initializer for array)

PR c++/60224
* decl.c (cp_complete_array_type, maybe_deduce_size_from_array_init):
Don't get confused by a CONSTRUCTOR that already has a type.

From-SVN: r208002

10 years agore PR c++/60277 (Bogus "inline function virtual ..." used but never defined)
Jason Merrill [Fri, 21 Feb 2014 14:56:46 +0000 (09:56 -0500)]
re PR c++/60277 (Bogus "inline function virtual ..." used but never defined)

PR c++/60277
* call.c (build_array_conv): Don't crash on VLA.

From-SVN: r208001

10 years agore PR c++/60248 ([C++11] ICE specializing variadic template)
Jason Merrill [Fri, 21 Feb 2014 14:56:38 +0000 (09:56 -0500)]
re PR c++/60248 ([C++11] ICE specializing variadic template)

PR c++/60248
* mangle.c (mangle_decl): Don't make an alias for a TYPE_DECL.

From-SVN: r208000

10 years agore PR c++/60252 ([c++11] ICE with invalid variable-length array in lambda parameter)
Jason Merrill [Fri, 21 Feb 2014 14:56:31 +0000 (09:56 -0500)]
re PR c++/60252 ([c++11] ICE with invalid variable-length array in lambda parameter)

PR c++/60252
* lambda.c (maybe_resolve_dummy): Don't try to capture this
in declaration context.

From-SVN: r207999

10 years agoDR 1591 PR c++/60051
Jason Merrill [Fri, 21 Feb 2014 14:56:20 +0000 (09:56 -0500)]
DR 1591 PR c++/60051

DR 1591
PR c++/60051
* pt.c (unify): Only unify if deducible.  Handle 0-length list.

From-SVN: r207998

10 years agoRename testsuite directory shared_mutex to shared_timed_mutex for consistency.
Ed Smith-Rowland [Fri, 21 Feb 2014 14:40:26 +0000 (14:40 +0000)]
Rename testsuite directory shared_mutex to shared_timed_mutex for consistency.

2014-02-21  Ed Smith-Rowland  <3dw4rd@verizon.net>

Rename testsuite directory shared_mutex to shared_timed_mutex
for consistency.
* testsuite/30_threads/shared_mutex: Moved to...
* testsuite/30_threads/shared_timed_mutex: ...here

From-SVN: r207997

10 years agore PR c++/60250 ([c++1y] ICE using lambda for array size)
Jason Merrill [Fri, 21 Feb 2014 14:01:29 +0000 (09:01 -0500)]
re PR c++/60250 ([c++1y] ICE using lambda for array size)

PR c++/60250
* parser.c (cp_parser_direct_declarator): Don't wrap a
type-dependent expression in a NOP_EXPR.

From-SVN: r207996

10 years agore PR c++/60251 ([c++11] ICE capturing variable-length array)
Jason Merrill [Fri, 21 Feb 2014 14:01:20 +0000 (09:01 -0500)]
re PR c++/60251 ([c++11] ICE capturing variable-length array)

PR c++/60251
* lambda.c (is_normal_capture_proxy): Handle VLA capture.

From-SVN: r207995

10 years agore PR c++/60167 (Bogus error: conflicting declaration)
Jason Merrill [Fri, 21 Feb 2014 14:00:44 +0000 (09:00 -0500)]
re PR c++/60167 (Bogus error: conflicting declaration)

PR c++/60167
PR c++/60222
PR c++/58606
* parser.c (cp_parser_template_argument): Restore dereference.
* pt.c (template_parm_to_arg): Dereference non-pack expansions too.
(process_partial_specialization): Handle deref.
(unify): Likewise.

From-SVN: r207994

10 years agoinvoke.texi (mvirt, mno-virt): Document.
Catherine Moore [Fri, 21 Feb 2014 13:30:47 +0000 (08:30 -0500)]
invoke.texi (mvirt, mno-virt): Document.

2014-02-21  Catherine Moore  <clm@codesourcery.com>

* doc/invoke.texi (mvirt, mno-virt): Document.
* config/mips/mips.opt (mvirt): New option.
* config/mips/mips.h (ASM_SPEC): Pass mvirt to the assembler.

From-SVN: r207993

10 years agore PR tree-optimization/60276 (-O3 autovectorizer breaks on a particular loop)
Richard Biener [Fri, 21 Feb 2014 13:18:54 +0000 (13:18 +0000)]
re PR tree-optimization/60276 (-O3 autovectorizer breaks on a particular loop)

2014-02-21  Richard Biener  <rguenther@suse.de>

PR tree-optimization/60276
* tree-vectorizer.h (struct _stmt_vec_info): Add min_neg_dist field.
(STMT_VINFO_MIN_NEG_DIST): New macro.
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Record
STMT_VINFO_MIN_NEG_DIST.
* tree-vect-stmts.c (vectorizable_load): Verify if assumptions
made for negative dependence distances still hold.

* gcc.dg/vect/pr60276.c: New testcase.

From-SVN: r207992

10 years agore PR middle-end/60291 (slow compile times for any mode (-O0/-O1/-O2) on large .c...
Richard Biener [Fri, 21 Feb 2014 13:14:23 +0000 (13:14 +0000)]
re PR middle-end/60291 (slow compile times for any mode (-O0/-O1/-O2) on large .c source file (30MBs))

2014-02-21  Richard Biener  <rguenther@suse.de>

PR middle-end/60291
* tree-ssa-live.c (mark_all_vars_used_1): Do not walk
DECL_INITIAL for globals not in the current function context.

From-SVN: r207991

10 years agoAdded forgotten ChangeLog entry.
Rainer Orth [Fri, 21 Feb 2014 11:55:14 +0000 (11:55 +0000)]
Added forgotten ChangeLog entry.

From-SVN: r207989

10 years agore PR tree-optimization/56490 (-Wall triggering infinite loop)
Jakub Jelinek [Fri, 21 Feb 2014 09:53:56 +0000 (10:53 +0100)]
re PR tree-optimization/56490 (-Wall triggering infinite loop)

PR tree-optimization/56490
* params.def (PARAM_UNINIT_CONTROL_DEP_ATTEMPTS): New param.
* tree-ssa-uninit.c: Include params.h.
(compute_control_dep_chain): Add num_calls argument, return false
if it exceed PARAM_UNINIT_CONTROL_DEP_ATTEMPTS param, pass
num_calls to recursive call.
(find_predicates): Change dep_chain into normal array,
cur_chain into auto_vec<edge, MAX_CHAIN_LEN + 1>, add num_calls
variable and adjust compute_control_dep_chain caller.
(find_def_preds): Likewise.

From-SVN: r207988

10 years agoCorrect TDF_RAW pretty-printing of GIMPLE_OMP_FOR's GF_OMP_FOR_KIND_CILKSIMD.
Thomas Schwinge [Fri, 21 Feb 2014 09:18:15 +0000 (10:18 +0100)]
Correct TDF_RAW pretty-printing of GIMPLE_OMP_FOR's GF_OMP_FOR_KIND_CILKSIMD.

gcc/
* gimple-pretty-print.c (dump_gimple_omp_for) [flags & TDF_RAW]
<case GF_OMP_FOR_KIND_CILKSIMD>: Add missing break statement.

From-SVN: r207987

10 years agore PR fortran/60234 ([OOP] ICE in generate_finalization_wrapper at fortran/class...
Janus Weil [Fri, 21 Feb 2014 09:06:57 +0000 (10:06 +0100)]
re PR fortran/60234 ([OOP] ICE in generate_finalization_wrapper at fortran/class.c:1883)

2014-02-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/60234
* gfortran.h (gfc_build_class_symbol): Removed argument.
* class.c (gfc_add_component_ref): Fix up missing vtype if necessary.
(gfc_build_class_symbol): Remove argument 'delayed_vtab'. vtab is always
delayed now, except for unlimited polymorphics.
(comp_is_finalizable): Procedure pointer components are not finalizable.
* decl. (build_sym, build_struct, attr_decl1): Removed argument of
'gfc_build_class_symbol'.
* match.c (copy_ts_from_selector_to_associate, select_type_set_tmp):
Ditto.
* symbol.c (gfc_set_default_type): Ditto.

2014-02-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/60234
* gfortran.dg/finalize_23.f90: New.

From-SVN: r207986

10 years agostormy16.md (pushdqi1): Add mode to post_inc.
Nick Clifton [Fri, 21 Feb 2014 08:11:10 +0000 (08:11 +0000)]
stormy16.md (pushdqi1): Add mode to post_inc.

* config/stormy16/stormy16.md (pushdqi1): Add mode to post_inc.
(pushhi1): Likewise.
(popqi1): Add mode to pre_dec.
(pophi1): Likewise.

From-SVN: r207984

10 years agoi386.c (ix86_expand_vec_perm): Use V8SImode mode for mask of V8SFmode permutation.
Jakub Jelinek [Fri, 21 Feb 2014 07:48:07 +0000 (08:48 +0100)]
i386.c (ix86_expand_vec_perm): Use V8SImode mode for mask of V8SFmode permutation.

* config/i386/i386.c (ix86_expand_vec_perm): Use V8SImode
mode for mask of V8SFmode permutation.

From-SVN: r207981

10 years agoFix PR c++/60052 and PR c++/60053.
Adam Butcher [Fri, 21 Feb 2014 07:47:55 +0000 (07:47 +0000)]
Fix PR c++/60052 and PR c++/60053.

PR c++/60052
PR c++/60053
* parser.c (cp_parser_parameter_declaration_list): Correctly reset
implicit_template_scope upon leaving an out-of-line generic member
function definition.

PR c++/60052
PR c++/60053
* g++.dg/cpp1y/pr60052.C: New testcase.
* g++.dg/cpp1y/pr60053.C: New testcase.

From-SVN: r207980

10 years agore PR fortran/60286 (INQUIRE reports STDOUT as not writable)
Tobias Burnus [Fri, 21 Feb 2014 07:37:06 +0000 (08:37 +0100)]
re PR fortran/60286 (INQUIRE reports STDOUT as not writable)

2014-02-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/60286
        * libgfortran/io/inquire.c (yes, no): New static const char
        * vars.
        (inquire_via_unit): Use them. Use OPEN mode instead of using
        POSIX's access to query about write=, read= and readwrite=.

2014-02-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/60286
        * gfortran.dg/inquire_16.f90: New.

From-SVN: r207979

10 years agoruntime: Use a better heap location on arm64 systems.
Ian Lance Taylor [Fri, 21 Feb 2014 03:24:03 +0000 (03:24 +0000)]
runtime: Use a better heap location on arm64 systems.

Before this, the heap location used on a 64-bit system was not
available to user-space on arm64, so the "32-bit" strategy ended up
being used.  So use somewhere that is available, and for bonus points
is far away from where the kernel allocates address space by default.

From-SVN: r207977

10 years agoDaily bump.
GCC Administrator [Fri, 21 Feb 2014 00:16:45 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r207976

10 years agore PR c++/60272 (atomic<>::compare_exchange_weak has spurious store and can cause...
Richard Henderson [Fri, 21 Feb 2014 00:11:43 +0000 (16:11 -0800)]
re PR c++/60272 (atomic<>::compare_exchange_weak has spurious store and can cause race conditions)

PR c++/60272

        * builtins.c (expand_builtin_atomic_compare_exchange): Always make
        a new pseudo for OLDVAL.

From-SVN: r207972

10 years agore PR target/57896 (ICE in expand_expr_real_2)
Jakub Jelinek [Thu, 20 Feb 2014 20:39:46 +0000 (21:39 +0100)]
re PR target/57896 (ICE in expand_expr_real_2)

PR target/57896
* config/i386/i386.c (expand_vec_perm_interleave2): Don't call
gen_reg_rtx if d->testing_p.
(expand_vec_perm_pshufb2, expand_vec_perm_broadcast_1): Return early
if d->testing_p and we will certainly return true.
(expand_vec_perm_even_odd_1): Likewise.  Don't call gen_reg_rtx
if d->testing_p.

From-SVN: r207969

10 years agoemit-rtl.c (gen_reg_rtx): Assert that crtl->emit.regno_pointer_align_length is non...
Uros Bizjak [Thu, 20 Feb 2014 20:21:42 +0000 (21:21 +0100)]
emit-rtl.c (gen_reg_rtx): Assert that crtl->emit.regno_pointer_align_length is non-zero.

* emit-rtl.c (gen_reg_rtx): Assert that
crtl->emit.regno_pointer_align_length is non-zero.

From-SVN: r207968

10 years agolto-partition.c (add_symbol_to_partition_1, [...]): Aliases have no defined size.
Jan Hubicka [Thu, 20 Feb 2014 19:40:14 +0000 (20:40 +0100)]
lto-partition.c (add_symbol_to_partition_1, [...]): Aliases have no defined size.

* lto-partition.c (add_symbol_to_partition_1,
undo_partition, lto_balanced_map): Aliases have no
defined size.
(lto_balanced_map): Do not follow refering variables
if they can be optimized out.

From-SVN: r207967

10 years agore PR c++/60272 (atomic<>::compare_exchange_weak has spurious store and can cause...
Richard Henderson [Thu, 20 Feb 2014 17:43:53 +0000 (09:43 -0800)]
re PR c++/60272 (atomic<>::compare_exchange_weak has spurious store and can cause race conditions)

PR c++/60272

gcc/
* builtins.c (expand_builtin_atomic_compare_exchange): Conditionalize
on failure the store back into EXPECT.
libatomic/
* cas_n.c (libat_compare_exchange): Conditionalize on failure
the store back to EPTR.

From-SVN: r207966

10 years agonios2.md (unspec): Add UNSPEC_PIC_GOTOFF_SYM enum.
Chung-Lin Tang [Thu, 20 Feb 2014 16:35:10 +0000 (16:35 +0000)]
nios2.md (unspec): Add UNSPEC_PIC_GOTOFF_SYM enum.

2014-02-20  Chung-Lin Tang  <cltang@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/nios2/nios2.md (unspec): Add UNSPEC_PIC_GOTOFF_SYM enum.
* config/nios2/nios2.c (nios2_function_profiler):
Add -fPIC (flag_pic == 2) support.
(nios2_handle_custom_fpu_cfg): Fix warning parameter.
(nios2_large_offset_p): New function.
(nios2_unspec_reloc_p): Move up position, update to use
nios2_large_offset_p.
(nios2_unspec_address): Remove function.
(nios2_unspec_offset): New function.
(nios2_large_got_address): New function.
(nios2_got_address): Add large offset support.
(nios2_legitimize_tls_address): Update usage of removed and new
functions.
(nios2_symbol_binds_local_p): New function.
(nios2_load_pic_address): Add -fPIC (flag_pic == 2) support.
(nios2_legitimize_address): Update to use nios2_large_offset_p.
(nios2_emit_move_sequence): Avoid legitimizing (const (unspec ...)).
(nios2_print_operand): Merge H/L processing, add hiadj/lo
processing for (const (unspec ...)).
(nios2_unspec_reloc_name): Add UNSPEC_PIC_GOTOFF_SYM case.

gcc/testsuite/
* gcc.target/nios2/biggot-1.c: New.
* gcc.target/nios2/biggot-2.c: New.

libgcc/
* config/nios2/t-nios2 (CRTSTUFF_T_CFLAGS): Add -mno-gpopt.
* config/nios2/crti.S: Remove .file directive.
* config/nios2/crtn.S: Likewise.

From-SVN: r207965

10 years agoRename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
Ed Smith-Rowland [Thu, 20 Feb 2014 16:06:40 +0000 (16:06 +0000)]
Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.

2014-02-20  Ed Smith-Rowland  <3dw4rd@verizon.net>

Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
* include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
* testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
* testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
* testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
* testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
* testsuite/30_threads/shared_lock/requirements/
explicit_instantiation.cc: Ditto.
* testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
* testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
* testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
* testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
* testsuite/30_threads/shared_mutex/requirements/
standard_layout.cc: Ditto.
* testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
* testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
* testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
* testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
* testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.

From-SVN: r207964

10 years agore PR c++/58873 ([c++11] ICE with __underlying_type for broken enum)
Kai Tietz [Thu, 20 Feb 2014 16:02:24 +0000 (17:02 +0100)]
re PR c++/58873 ([c++11] ICE with __underlying_type for broken enum)

PR c++/58873
* parser.c (cp_parser_functional_cast): Treat NULL_TREE
valued type argument as error_mark_node.

From-SVN: r207961

10 years agore PR go/60288 (gccgo crashes compiling '*func_ptr(0)')
Ian Lance Taylor [Thu, 20 Feb 2014 15:20:26 +0000 (15:20 +0000)]
re PR go/60288 (gccgo crashes compiling '*func_ptr(0)')

PR go/60288
compiler: Avoid crash, give error for *&x when x is not addressable.

From-SVN: r207960

10 years agotree-cfg.c (replace_uses_by): Mark altered BBs before doing the substitution.
Richard Biener [Thu, 20 Feb 2014 14:56:27 +0000 (14:56 +0000)]
tree-cfg.c (replace_uses_by): Mark altered BBs before doing the substitution.

2014-02-20  Richard Biener  <rguenther@suse.de>

* tree-cfg.c (replace_uses_by): Mark altered BBs before
doing the substitution.
(verify_gimple_assign_single): Also verify bare MEM_REFs
on the lhs.

From-SVN: r207958

10 years agore PR c++/58835 (ICE with __PRETTY_FUNCTION__ in broken function)
Kai Tietz [Thu, 20 Feb 2014 14:28:16 +0000 (15:28 +0100)]
re PR c++/58835 (ICE with __PRETTY_FUNCTION__ in broken function)

PR c++/58835
* semantics.c (finish_fname): Handle error_mark_node.

From-SVN: r207955

10 years ago2014-02-20 Sergey Rybin <rybin@adacore.com frybin>
Arnaud Charlet [Thu, 20 Feb 2014 14:21:35 +0000 (15:21 +0100)]
2014-02-20  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi, vms_data.ads (gnatelim): Add description of
project-specific options.

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

* a-cbdlli.adb (Insert): When capacity exceeded, raise Capacity_Error,
not Constraint_Error.
* a-cbmutr.adb (Append_Child, Insert_Child, Prepend_Child): Ditto.
* sem_ch5.adb: Code clean up.

From-SVN: r207954

10 years ago[multiple changes]
Arnaud Charlet [Thu, 20 Feb 2014 14:19:23 +0000 (15:19 +0100)]
[multiple changes]

2014-02-20  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Usage_Error): Remove local
constant Typ. Remove the specialized diagnostics for unconstrained
or tagged items as those are not part of the explicit input set
of the related subprogram and should not be flagged.

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

* sem_attr.adb: Add guard to preserve all errors.

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

* switch-m.adb (Normalize_Compiler_Switches): Take into account
switches that are recorded in ALI files: -gnateA, -gnateE,
-gnateF, -gnateinn, -gnateu, -gnateV and -gnateY.

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

* sem_ch5.adb (Analyze_Iterator_Specification): Check legality
of an element iterator form over a formal container with an
Iterable aspect.
* exp_ch5.adb (Build_Formal_Container_Iteration): Utility
to create declaration and loop statements for both forms of
container iterators.
(Expand_Formal_Container_Element_Iterator): New procedure
to handle loops of the form  "for E of C" when C is a formal
container.
(Expand_Formal_Container_Iterator): Code cleanup.

From-SVN: r207953

10 years ago[multiple changes]
Arnaud Charlet [Thu, 20 Feb 2014 14:08:31 +0000 (15:08 +0100)]
[multiple changes]

2014-02-20  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Add_Item_To_Name_Buffer): New routine.
(Analyze_Contract_Case): Remove the use of
"may". Replace "aspect Contract_Cases" to avoid categorization
of aspect vs pragma.
(Analyze_External_Property_In_Decl_Part): Remove the use of "formal".
(Analyze_Global_Item): Remove
the use of "formal", specify the subprogram.  Split the
error message about a state with visible refinement into
two. Remove the use of "global" from "volatile global item".
(Analyze_Initialization_Item): Ensure that the SPARK RM reference
is on one line.
(Analyze_Input_Output): Update the call to
Check_Mode. Specify the duplicated item. Reword the error
message concerning an input of a null output list. Use "\"
for error message continuation.
(Analyze_Part_Of): Remove
the use of "may". Use "\" for error message continuation.
(Analyze_Refined_Depends_In_Decl_Part): Update the error
message concerning a useless refinement to match the format
of Refined_Global.
(Analyze_Refined_Global_In_Decl_Part): Reword the error message
concerning a useless refinement.
(Analyze_Refinement_Clause): Use "\" for error message continuation.
(Check_Constituent_Usage): Use "\" for error message continuation.
(Check_Dependency_Clause): Use "\" for error message continuation.
(Check_Matching_Constituent): Use "\" for error message continuation.
(Check_Missing_Part_Of): Use "\" for error message continuation.
(Check_Mode): Renamed to
Check_Role. Update the comment on usage. Redo the error reporting
to use Role_Error.
(Check_Mode_Restriction_In_Enclosing_Context): Use "\" for error
message continuation.
(Find_Mode): Renamed to Find_Role. Update the parameter profile along
with comment on usage. Update all occurrences of Is_Input and Is_Output.
(Inconsistent_Mode_Error): Use "\" for error message continuation.
(Input_Match): Use "\" for error message continuation.
(Role_Error): New routine.
(Set_Convention_From_Pragma): Use "\" for error message continuation.
(Usage_Error): Add local variable Error_Msg. Build specialized error
message showcasing the offending item kind. Redo the diagnostics for
unconstrained types.

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

* exp_util.adb (Is_Iterated_Container): Use high-level primitives
to determine whether a type is a container type, rather than
examining only its type declaration, so that subtypes and derived
types are handled properly.

2014-02-20  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi: gnatmetric: add description of project-specific
options.

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

* sem_attr.adb (Analyze_Attribute, case 'Update): Verify that
all choices in an association for a record type have the same
type, as is done for record aggregates.

From-SVN: r207952

10 years agoXFAIL sourcelocation (PR libgcj/55637)
Rainer Orth [Thu, 20 Feb 2014 14:04:53 +0000 (14:04 +0000)]
XFAIL sourcelocation (PR libgcj/55637)

PR libgcj/55637
* testsuite/libjava.lang/sourcelocation.xfail: New file.

From-SVN: r207951

10 years ago[multiple changes]
Arnaud Charlet [Thu, 20 Feb 2014 14:04:38 +0000 (15:04 +0100)]
[multiple changes]

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

* a-cborma.adb, a-cbhama.adb, a-cbdlli.adb, a-cbmutr.adb: Use pragma
Unmodified rather than Warnings (Off). Make comments
uniform in the four affected units.

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

* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
Object_Size): For non-scalar types allow any value that is a
multiple of 8.
* gnat_rm.texi: Document Object_Size for composites more clearly.

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

* sem_util.ads, sem_util.adb (Default_Initialization): Remove function.

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

* stand.ads: Raise_Type: new predefined entity, used as the type
of a Raise_Expression prior to resolution.
* cstand.adb: Build entity for Raise_Type.
* sem_ch11.adb (Analyze_Raise_Expression): use Raise_Type as the
initial type of the node.
* sem_type.adb (Covers): Raise_Type is compatible with all
other types.
* sem_res.adb (Resolve): Remove special handling of Any_Type on
Raise_Expression nodes.
(Resolve_Raise_Expression): Signal ambiguity if the type of the
context is still Raise_Type.

From-SVN: r207950