platform/upstream/gcc.git
10 years agore PR c++/61133 (g++ doesn't implement DR1760)
Ville Voutilainen [Wed, 21 May 2014 17:23:07 +0000 (20:23 +0300)]
re PR c++/61133 (g++ doesn't implement DR1760)

PR c++/61133
* lambda.c (build_capture_proxy, add_capture): Treat normal
captures and init-captures identically.

From-SVN: r210720

10 years agoinvoke.texi (Optimize Options): Document parameters ipa-cp-eval-threshold...
Martin Jambor [Wed, 21 May 2014 16:13:41 +0000 (18:13 +0200)]
invoke.texi (Optimize Options): Document parameters ipa-cp-eval-threshold...

2014-05-21  Martin Jambor  <mjambor@suse.cz>

* doc/invoke.texi (Optimize Options): Document parameters
ipa-cp-eval-threshold, ipa-max-agg-items, ipa-cp-loop-hint-bonus and
ipa-cp-array-index-hint-bonus.

From-SVN: r210718

10 years agoPR debug/16063. Add DW_AT_type to DW_TAG_enumeration.
Mark Wielaard [Wed, 21 May 2014 15:44:59 +0000 (15:44 +0000)]
PR debug/16063. Add DW_AT_type to DW_TAG_enumeration.

Add a new lang-hook that provides the underlying base type of an
ENUMERAL_TYPE. The default implementation will just use type_for_size.
The implementation for C++ will use the ENUM_UNDERLYING_TYPE if it exists.
Use this enum_underlying_base_type lang-hook in dwarf2out.c to add a
DW_AT_type base type reference to a DW_TAG_enumeration.

gcc/
* dwarf2out.c (gen_enumeration_type_die): Add DW_AT_type if DWARF
version >= 3 or not strict DWARF.
* langhooks.h (struct lang_hooks_for_types): Add
enum_underlying_base_type.
* langhooks.c (lhd_enum_underlying_base_type): New function.
* gcc/langhooks.h (struct lang_hooks_for_types): Add
enum_underlying_base_type.
* langhooks-def.h (lhd_enum_underlying_base_type): New declaration.
(LANG_HOOKS_ENUM_UNDERLYING_BASE_TYPE): New define.
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add new lang hook.

gcc/cp/
* cp-lang.c (cxx_enum_underlying_base_type): New function.
(LANG_HOOKS_ENUM_UNDERLYING_BASE_TYPE): Define.

From-SVN: r210717

10 years agoc_locale.cc (facet::_S_create_c_locale): Fix warning.
Jonathan Wakely [Wed, 21 May 2014 15:09:50 +0000 (16:09 +0100)]
c_locale.cc (facet::_S_create_c_locale): Fix warning.

* config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
Fix warning.

From-SVN: r210716

10 years agore PR libstdc++/61269 (<type_traits> includes <cstdint> inside std namespace)
Jonathan Wakely [Wed, 21 May 2014 15:09:37 +0000 (16:09 +0100)]
re PR libstdc++/61269 (<type_traits> includes <cstdint> inside std namespace)

PR libstdc++/61269
* include/std/type_traits: Move include outside namespace std.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.

From-SVN: r210715

10 years agore PR target/60179 (target optimization attribute streaming is broken)
Cesar Philippidis [Wed, 21 May 2014 14:45:36 +0000 (07:45 -0700)]
re PR target/60179 (target optimization attribute streaming is broken)

2014-05-21  Cesar Philippidis  <cesar@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

PR lto/60179

gcc/testsuite/
* lib/scanasm.exp (scan-lto-assembler): New procedure.
* gcc.target/nios2/custom-fp-lto.c: New test.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r210714

10 years agoinvoke.texi (-flto-partition=): Document one and none algorithms.
Richard Biener [Wed, 21 May 2014 14:24:44 +0000 (14:24 +0000)]
invoke.texi (-flto-partition=): Document one and none algorithms.

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

* doc/invoke.texi (-flto-partition=): Document one and
none algorithms.

From-SVN: r210713

10 years agolayout.adb: Minor reformatting.
Robert Dewar [Wed, 21 May 2014 13:26:53 +0000 (13:26 +0000)]
layout.adb: Minor reformatting.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* layout.adb: Minor reformatting.
* sem_prag.adb (Analyze_Pragma, case Inspection_Point): Call
dummy procedure ip.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* restrict.ads (Implementation_Restriction): Add entry for
No_Fixed_IO.
* rtsfind.ads: Add entries for Fixed_IO and Decimal_IO in
Ada.[Wide_[Wide_]Text_IO.
* s-rident.ads (Restriction_Id): Add entry for No_Fixed_IO.
* sem_attr.adb (Analyze_Attribute): Disallow fixed point types
for Img, Image, Value, Wide_Image, Wide_Value, Wide_Wide_Image,
Wide_Wide_Value if restriction No_Fixed_IO is set.
* sem_util.adb (Set_Entity_Checks): Check restriction No_Fixed_IO.

From-SVN: r210710

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 13:25:03 +0000 (15:25 +0200)]
[multiple changes]

2014-05-21  Robert Dewar  <dewar@adacore.com>

* gnatcmd.adb: Minor error msg changes (no upper case letter
at start).
* sem_ch12.adb, sem_ch5.adb, sem_res.adb, sem_util.adb: Minor
reformatting.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* debug.adb: Debug flag -gnatd.G inhibits static elab tracing
via generic formals.
* sem_elab.adb (Is_Call_Of_Generic_Formal): Return False if
-gnatd.G is set.

2014-05-21  Thomas Quinot  <quinot@adacore.com>

* exp_pakd.adb (Revert_Storage_Order): Renamed from Byte_Swap to
more accurately describe that this subprogram needs to come into
play also in cases where no byte swapping is involved, because
it also takes care of some required shifts (left-justification
of values).

2014-05-21  Thomas Quinot  <quinot@adacore.com>

* freeze.adb (Check_Component_Storage_Order): Indicate whether
a Scalar_Storage_Order attribute definition is present for the
component's type.
(Freeze_Record_Type): Suppress junk warnings
about purportedly junk Bit_Order / Scalar_Storage_Order attribute
definitions.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* sem_ch8.adb (Analyze_Subprogram_Renaming): Put back call
to Kill_Elaboration_Checks.

2014-05-21  Gary Dismukes  <dismukes@adacore.com>

* layout.adb (Assoc_Add): Suppress the optimization of the (E
- C1) + C2 case, when the expression type is unsigned and C1 <
C2, to avoid creating a negative literal when folding.

From-SVN: r210709

10 years agofreeze.adb (Freeze_Record_Type): Update the use of Is_SPARK_Volatile.
Hristian Kirtchev [Wed, 21 May 2014 13:21:38 +0000 (13:21 +0000)]
freeze.adb (Freeze_Record_Type): Update the use of Is_SPARK_Volatile.

2014-05-21  Hristian Kirtchev  <kirtchev@adacore.com>

* freeze.adb (Freeze_Record_Type): Update the use of
Is_SPARK_Volatile.
* sem_ch3.adb (Analyze_Object_Contract): Update the use of
Is_SPARK_Volatile.
(Process_Discriminants): Update the use of Is_SPARK_Volatile.
* sem_ch5.adb (Analyze_Iterator_Specification): Update the use
of Is_SPARK_Volatile.
(Analyze_Loop_Parameter_Specification):
Update the use of Is_SPARK_Volatile.
* sem_ch6.adb (Process_Formals): Catch an illegal use of an IN
formal parameter when its type is volatile.
* sem_prag.adb (Analyze_Global_Item): Update the use of
Is_SPARK_Volatile.
* sem_res.adb (Resolve_Entity_Name): Correct the guard which
determines whether an entity is a volatile source SPARK object.
* sem_util.adb (Has_Enabled_Property): Accout for external
properties being set on objects other than abstract states
and variables. An example would be a formal parameter.
(Is_SPARK_Volatile): New routine.
(Is_SPARK_Volatile_Object):
Remove the entity-specific tests. Call routine Is_SPARK_Volatile
when checking entities and/or types.
* sem_util.ads (Is_SPARK_Volatile): New routine.

From-SVN: r210708

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 13:19:28 +0000 (15:19 +0200)]
[multiple changes]

2014-05-21  Robert Dewar  <dewar@adacore.com>

* sem_warn.adb: Minor fix to warning messages (use ?? instead
of ?).

2014-05-21  Vincent Celier  <celier@adacore.com>

* gnatcmd.adb (GNATCmd): For platforms other than VMS, recognize
switch --version and --help.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* sem_elab.adb (Is_Call_Of_Generic_Formal): New function.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Iterator_Specification): Set type of
iterator variable when the domain of iteration is a formal
container and this is an element iterator.

2014-05-21  Bob Duff  <duff@adacore.com>

* sem_ch12.adb: Minor reformatting.

From-SVN: r210707

10 years agosinfo.ads, [...]: Minor reformatting.
Robert Dewar [Wed, 21 May 2014 13:17:41 +0000 (13:17 +0000)]
sinfo.ads, [...]: Minor reformatting.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* sinfo.ads, sem_ch12.adb, sem_warn.adb: Minor reformatting.

From-SVN: r210706

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 13:14:06 +0000 (15:14 +0200)]
[multiple changes]

2014-05-21  Robert Dewar  <dewar@adacore.com>

* sem_elab.adb: Minor reformatting.
* s-taprop.ads: Minor comment fix.
* sem_ch8.adb (Analyze_Subprogram_Renaming): Remove call to
Kill_Elaboration_Checks.
* errout.adb, erroutc.adb: Minor reformatting.

2014-05-21  Thomas Quinot  <quinot@adacore.com>

* exp_pakd.adb (Byte_Swap): Handle the case of a sub-byte
component. No byte swapping occurs, but this procedure also takes
care of appropriately justifying the argument.

2014-05-21  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch6.adb: sem_ch6.adb (Analyze_Aspects_On_Body_Or_Stub):
New routine.
(Analyze_Subprogram_Body_Helper): Move the
analysis of aspect specifications and the processing of the
subprogram body contract after inlining has taken place.
(Diagnose_Misplaced_Aspect_Specifications): Removed.

2014-05-21  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Build_Derived_Record_Type): Revert previous change.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* sem_eval.ads, sem_eval.adb (Why_Not_Static): Messages are not
continuations any more.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

* sinfo.ads, sinfo.adb: New flag Needs_Initialized_Actual,
present in formal_Private_Definitions and on private extension
declarations of a formal derived type. Set when the use of the
formal type in a generic suggests that the actual should be a
fully initialized type.
* sem_warn.adb (May_Need_Initialized_Actual): new subprogram
to indicate that an entity of a generic type has default
initialization, and that the corresponing actual type in any
subsequent instantiation should be fully initialized.
* sem_ch12.adb (Check_Initialized_Type): new subprogram,
to emit a warning if the actual for a generic type on which
Needs_Initialized_Actual is set is not a fully initialized type.

From-SVN: r210705

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 13:08:13 +0000 (15:08 +0200)]
[multiple changes]

2014-05-21  Robert Dewar  <dewar@adacore.com>

* sem_elab.adb, prj-dect.adb: Minor reformatting.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* erroutc.ads: Minor comment addition.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* errout.ads: Add documentation for use of >*> tag.
* restrict.adb: Make sure we use >*> tag for restriction warnings.

2014-05-21  Gary Dismukes  <dismukes@adacore.com>

* debug.adb: Add case of illegal overriding_indicator for a
protected subprogram body to description of -gnatd.E switch.
* sem_ch6.adb (Verify_Overriding_Indicator): Issue error message
for cases of giving overriding_indicators on protected subprogram
bodies, but change this to a warning if -gnatd.E is enabled. No
longer give a style warning about missing indicators on protected
subprogram bodies.

From-SVN: r210704

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 13:04:54 +0000 (15:04 +0200)]
[multiple changes]

2014-05-21  Robert Dewar  <dewar@adacore.com>

* prj.ads, sem_ch12.adb, prj.adb, exp_pakd.adb,
sem_elab.ads: Minor reformatting.
* erroutc.adb, erroutc.ads (Warning_Specifically_Suppressed): Make Tag
parameter optional.

2014-05-21  Pascal Obry  <obry@adacore.com>

* prj-dect.adb: Allow package Install in aggregate project.

From-SVN: r210703

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 13:01:59 +0000 (15:01 +0200)]
[multiple changes]

2014-05-21  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications):
Insert_Delayed_Pragma is now used for the case of Attach_Handler.
* sem_prag.adb: Minor comment improvements.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Install_Body): When checking whether freezing of
instantiation must be delayed, verify that the common enclosing
subprogram to generic and instance is in fact an overloadable
entity.

2014-05-21  Vincent Celier  <celier@adacore.com>

* makeutl.adb (Mains.Complete_Mains.Do_Complete): Look for all
mains with the same name and fail if there is more than one.
* prj.ads, prj.adb (Find_All_Sources): New function

From-SVN: r210702

10 years agosem_ch13.adb: Minor reformatting.
Robert Dewar [Wed, 21 May 2014 12:59:01 +0000 (12:59 +0000)]
sem_ch13.adb: Minor reformatting.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb: Minor reformatting.
* lib-xref-spark_specific.adb, sem_util.adb: Minor reformatting.
* sem_prag.adb: Minor error message improvement.

From-SVN: r210701

10 years ago2014-05-21 Yannick Moy <moy@adacore.com>
Yannick Moy [Wed, 21 May 2014 12:56:05 +0000 (12:56 +0000)]
2014-05-21  Yannick Moy  <moy@adacore.com>

* lib-xref-spark_specific.adb, lib-xref.ads, lib-xref.adb
(Enclosing_Subprogram_Or_Package): Only return a library-level
package.

From-SVN: r210700

10 years agosem_ch3.adb (Build_Derived_Record_Type): Initialize Parent_Base to the full view...
Javier Miranda [Wed, 21 May 2014 12:54:18 +0000 (12:54 +0000)]
sem_ch3.adb (Build_Derived_Record_Type): Initialize Parent_Base to the full view of the parent type when...

2014-05-21  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Build_Derived_Record_Type): Initialize Parent_Base
to the full view of the parent type when processing a derived type
which is the full view of a private type not defined in a generic
unit which is derived from a private type with discriminants
whose full view is a non-tagged record type.

From-SVN: r210699

10 years agoPrevious change (rev 210697) should have mentioned PR ada/9535:
Arnaud Charlet [Wed, 21 May 2014 12:49:24 +0000 (14:49 +0200)]
Previous change (rev 210697) should have mentioned PR ada/9535:

        PR ada/9535
        * g-socket.adb (Read and Write for Datagram_Socket_Stream_Type):
        Provide a behaviour more consistent with underlying datagram
        socket: do not attempt to loop over Send_Socket/Receive_Socket
        iterating along the buffer.

From-SVN: r210698

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 12:45:44 +0000 (14:45 +0200)]
[multiple changes]

2014-05-21  Javier Miranda  <miranda@adacore.com>

* exp_ch4.adb (Expand_Allocator_Expression.Apply_Accessibility_Check):
Complete previous patch.

2014-05-21  Thomas Quinot  <quinot@adacore.com>

* g-socket.adb (Read and Write for Datagram_Socket_Stream_Type):
Provide a behaviour more consistent with underlying datagram
socket: do not attempt to loop over Send_Socket/Receive_Socket
iterating along the buffer.

2014-05-21  Hristian Kirtchev  <kirtchev@adacore.com>

* freeze.adb (Freeze_Record_Type): Ensure that a discriminated
or a tagged type is not labelled as volatile. Ensure that a
non-volatile type has no volatile components.
* sem_ch3.adb (Analyze_Object_Contract): Add local constant
Obj_Typ. Code reformatting.  Ensure that a discriminated or
tagged object is not labelled as volatile.
* sem_prag.adb (Process_Atomic_Shared_Volatile): Ensure that
pragma Volatile applies to a full type declaration or an object
declaration when SPARK mode is on.

2014-05-21  Sergey Rybin  <rybin@adacore.com frybin>

* gnat_ugn.texi: For ASIS tools, reword the paragraph about
providing options needed for compiling the argument source for
the situation when a project file can be used as a tool parameter.

2014-05-21  Gary Dismukes  <dismukes@adacore.com>

* gnat_rm.texi: Minor typo fix.

From-SVN: r210697

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 12:39:44 +0000 (14:39 +0200)]
[multiple changes]

2014-05-21  Robert Dewar  <dewar@adacore.com>

* stand.adb (Tree_Read): Read missing entities.
(Tree_Write): Write missing entities.

2014-05-21  Ben Brosgol  <brosgol@adacore.com>

* gnat_ugn.texi: Wordsmithing edits to Coupling Metrics Control
section in gnatmetric chapter.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* exp_ch6.adb (Expand_Actuals): Spec moved here, since not used
outside Exp_Ch6 (Expand_Actuals): Deal with proper insertion of
post-call copy write back (see detailed comment in code).
* exp_ch6.ads (Expand_Actuals): Moved to body, not used outside
Exp_Ch6.
* tbuild.ads: Minor reformatting.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* stand.ads: Add warning about adding new entities and
Tree_Read/Tree_Write.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* sem_util.adb (Set_Entity_With_Checks): Don't complain about
references to restricted entities within the units in which they
are declared.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* gnat1drv.adb (Check_Bad_Body): Use Source_File_Is_Body to
simplify the needed test, and also deal with failure to catch
situations with non-standard names.
* sinput-l.ads, sinput-l.adb (Source_File_Is_No_Body): New function
(Source_File_Is_Subunit): Removed, no longer used.

2014-05-21  Javier Miranda  <miranda@adacore.com>

* exp_ch4.adb
(Expand_Allocator_Expression.Apply_Accessibility_Check): for a
renaming of an access to interface object there is no need to
generate extra code to reference the tag.

From-SVN: r210696

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 12:35:51 +0000 (14:35 +0200)]
[multiple changes]

2014-05-21  Robert Dewar  <dewar@adacore.com>

* errout.adb, erroutc.adb, erroutc.ads: Allow warning tag in pragma
Warnings (Off, string).

2014-05-21  Robert Dewar  <dewar@adacore.com>

* osint.adb: Fix three error messages to say invalid instead
of erroneous.
* par-ch4.adb, exp_aggr.adb, sem_attr.adb, sem_aux.adb, sem_ch3.adb,
sem_ch5.adb, sem_ch6.adb, sem_ch7.adb, sem_dim.adb, sem_res.adb,
sem_util.adb, sem_util.ads: Fix incorrect use of erroneous in comments.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb, sem_ch13.adb, sem_ch13.ads, sem_ch9.adb,
sem_ch9.ads: Move discriminant manipulation routines for analysis of
aspect specifications from sem_ch9 to sem_ch13, where they belong.

From-SVN: r210695

10 years agoconfig.gcc (*-*-dragonfly*): New target.
John Marino [Wed, 21 May 2014 11:08:58 +0000 (11:08 +0000)]
config.gcc (*-*-dragonfly*): New target.

2014-05-21  John Marino  <gnugcc@marino.st>

gcc:

* config.gcc (*-*-dragonfly*): New target.
* configure.ac: Detect dl_iterate_phdr (*freebsd*, *dragonfly*).
* configure: Regenerate.
* config/dragonfly-stdint.h: New.
* config/dragonfly.h: New.
* config/dragonfly.opt: New.
* config/i386/dragonfly.h: New.
* ginclude/stddef.h: Detect _PTRDIFF_T_DECLARED for DragonFly.

include:

* liberty.h: Use basename function on DragonFly.

libcilkrts:

* runtime/os-unix.c (__DragonFly__): New target.

libgcc:

* config.host (*-*-dragonfly*): New target.
* crtstuff.c: Make dl_iterate_support generic on *bsd.
* enable-execute-stack-mprotect.c: Always mprotect on FreeBSD.
* unwind-dw2-fde-dip.c: Add dl_iterate_phr support for DragonFly.
* config/i386/dragonfly-unwind.h: New.

libitm:

* configure.tgt (*-*-dragonfly*): New target.

libstdc++-v3:

* acinclude.m4 (*-*-dragonfly*): New target.
* configure: Regenerate.
* configure.host (*-*-dragonfly*): New target.
* config/locale/dragonfly/c_locale.cc: New.
* config/locale/dragonfly/ctype_members.cc: New.
* config/os/bsd/dragonfly/ctype_base.h: New.
* config/os/bsd/dragonfly/ctype_configure_char.cc: New.
* config/os/bsd/dragonfly/ctype_inline.h: New.
* config/os/bsd/dragonfly/os_defines.h: New.

From-SVN: r210694

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 11:05:25 +0000 (13:05 +0200)]
[multiple changes]

2014-05-21  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Clearly document -gnatw.g (GNAT warnings).
Clearly document -gnatyg (GNAT style switches).
* usage.adb: Add line line for -gnatw.g (GNAT warnings) More
detail for line for -gnatyg (GNAT style switches) -gnatw.d/D is
available for VMS after all.
* warnsw.adb: Reorganize to eliminate duplicated code
(Restore_Warnings): Add a couple of missing entries
(Save_Warnings): Add a couple of missing entries.
* warnsw.ads: Add missing entries to Warning_Record (not clear
what the impact is).

2014-05-21  Robert Dewar  <dewar@adacore.com>

* errout.adb (Set_Msg_Insertion_Warning): Handle ?*? (restriction
warning) case.
* errout.ads: Document ?*? (restriction warning) insertion.
* erroutc.adb (Get_Warning_Tag): Deal with ?*? (restriction
warning) case.
* erroutc.ads: Document use of * for restriction warning tag.
* restrict.adb (Restriction_Msg): Tag with ?*? instead of ??.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

* sem_ch9.adb (Push_Scope_And_Install_Discriminants): Do not
make discriminants immediately visible when analyzing an aspect
of a subtype declaration.
(Uninstall_Discriminants): Do not apply to the entity in a
subtype declaration.

From-SVN: r210693

10 years agotree.def (VOID_CST): New.
Richard Sandiford [Wed, 21 May 2014 11:00:35 +0000 (11:00 +0000)]
tree.def (VOID_CST): New.

gcc/
* tree.def (VOID_CST): New.
* tree-core.h (TI_VOID): New.
* tree.h (void_node): New.
* tree.c (tree_node_structure_for_code, tree_code_size)
(iterative_hash_expr): Handle VOID_CST.
(build_common_tree_nodes): Initialize void_node.

gcc/c-family/
* c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
* c-common.c (c_common_nodes_and_builtins): Don't initialize
void_zero_node.
* c-pretty-print.c (pp_c_void_constant): New function.
(c_pretty_printer::constant, c_pretty_printer::primary_expression)
(c_pretty_printer::expression): Handle VOID_CST.
* cilk.c (extract_free_variables): Likewise.
* c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
(ubsan_instrument_vla): Use void_node instead of void_zero_node.

gcc/c/
* c-array-notation.c (expand_array_notations): Use void_node
instead of void_zero_node.

gcc/cp/
* cvt.c (convert_to_void): Use void_node instead of void_zero_node.
* cp-array-notation.c (replace_invariant_exprs): Likewise.
(expand_array_notation): Handle VOID_CST.
* error.c (dump_expr): Likewise.
* cxx-pretty-print.c (cxx_pretty_printer::primary_expression)
(cxx_pretty_printer::expression): Likewise.
(pp_cxx_new_expression): Use void_node instead of void_zero_node.
* decl.c (register_dtor_fn): Likewise.
* init.c (build_raw_new_expr, build_new_1, build_vec_init)
(build_delete, push_base_cleanups): Likewise.
* mangle.c (write_expression): Likewise.
* semantics.c (finish_break_stmt, empty_expr_stmt_p): Likewise.
* pt.c (tsubst_decl, tsubst_copy_and_build): Likewise.
(tsubst, tsubst_copy, build_non_dependent_expr): Handle VOID_CST.
* tree.c (cp_tree_equal): Likewise.
(build_dummy_object, is_dummy_object, stabilize_expr): Use void_node
instead of void_zero_node.
* typeck.c (check_return_expr): Likewise.
* typeck2.c (build_functional_cast): Likewise.

From-SVN: r210692

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 10:54:48 +0000 (12:54 +0200)]
[multiple changes]

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb: Code clean up.

2014-05-21  Eric Botcazou  <ebotcazou@adacore.com>

* gnat_ugn.texi: Document -Werror.

From-SVN: r210691

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 10:52:48 +0000 (12:52 +0200)]
[multiple changes]

2014-05-21  Bob Duff  <duff@adacore.com>

* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object):
This was returning False if the Object is a constant view. Fix
it to return True in that case, because it might be a view of
a variable.
(Has_Discriminant_Dependent_Constraint): Fix latent
bug; this function was crashing when passed a discriminant.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Remove misplaced section that is now obsolete.
* s-arit64.adb: Minor code reorganization.
* sem_prag.adb: Minor comment fix (remove erroneous use of the
term erroneous).

2014-05-21  Robert Dewar  <dewar@adacore.com>

* g-table.adb, g-dyntab.adb (Reallocate): Fix possible overflow in
computing new table size.

From-SVN: r210690

10 years ago[multiple changes]
Arnaud Charlet [Wed, 21 May 2014 10:48:37 +0000 (12:48 +0200)]
[multiple changes]

2014-05-21  Robert Dewar  <dewar@adacore.com>

* einfo.ads: Minor reformatting.
* ceinfo.adb: Deal with slight format change of einfo.ads.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Analyze_Part_Of): Further work on the proper
implementation of the SPARK 2014 rule concerning private child
units (LRM 7.2.6).

2014-05-21  Vincent Celier  <celier@adacore.com>

* makeusg.adb: Add switch -d to usage.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Find_Actual): If an actual that is the prefix
of an enclosing prefixed call has been rewritten, use Nkind
and Sloc to identify the corresponding formal, when handling
deferred references.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* debug.adb: Document -gnatd.z switch.
* sem_eval.adb (Why_Non_Static): Test -gnatd.z switch.

From-SVN: r210689

10 years agoeinfo.ads (Can_Never_Be_Null): Minor comment update.
Robert Dewar [Wed, 21 May 2014 10:45:27 +0000 (10:45 +0000)]
einfo.ads (Can_Never_Be_Null): Minor comment update.

2014-05-21  Robert Dewar  <dewar@adacore.com>

* einfo.ads (Can_Never_Be_Null): Minor comment update.
* sem_prag.adb (Check_Arg_Is_Task_Dispatching_Policy): Minor
error message change.
* s-arit64.adb ("abs"): New function. Use expression functions
for the simple conversions and arithmetic.

From-SVN: r210688

10 years agoAmend: yes
Andreas Schwab [Wed, 21 May 2014 09:36:06 +0000 (09:36 +0000)]
Amend: yes

* g++.dg/cpp0x/pr61038.C (operator "" _s): Use size_t.

From-SVN: r210687

10 years agoFix misapplied ChangeLog patch.
Bernd Schmidt [Wed, 21 May 2014 09:31:52 +0000 (09:31 +0000)]
Fix misapplied ChangeLog patch.

From-SVN: r210686

10 years agoImprove reload code generation by ignoring init insns for reloads.
Bernd Schmidt [Wed, 21 May 2014 09:29:34 +0000 (09:29 +0000)]
Improve reload code generation by ignoring init insns for reloads.

     * reload1.c (remove_init_insns, will_delete_init_insn_p): New static
     functions.
     (reload, calculate_needs_all_insns, reload_as_needed): Use them.

From-SVN: r210685

10 years agoMake the Blackfin port build again.
Bernd Schmidt [Wed, 21 May 2014 09:29:25 +0000 (09:29 +0000)]
Make the Blackfin port build again.

* config/bfin/bfin.c (split_load_immediate): Use gen_int_mode in a few
more places.

From-SVN: r210684

10 years agoStop the cfglayout code from failing an assert when called from hw-doloop.
Bernd Schmidt [Wed, 21 May 2014 09:22:26 +0000 (09:22 +0000)]
Stop the cfglayout code from failing an assert when called from hw-doloop.

* cfgrtl.c (cfg_layout_initialize): Weaken assert to only trigger if
flag_reorder_blocks_and_partition.
* hw-doloop.c (reorg_loops): Avoid reordering if that flag is set.

From-SVN: r210683

10 years agore PR target/54236 ([SH] Improve addc and subc insn utilization)
Oleg Endo [Wed, 21 May 2014 08:06:06 +0000 (08:06 +0000)]
re PR target/54236 ([SH] Improve addc and subc insn utilization)

gcc/
        PR target/54236
        * config/sh/sh.md (*addc_r_1): Rename to addc_t_r.  Remove empty
        constraints.
        (*addc_r_t): Add new insn_and_split.

gcc/testsuite/
        PR target/54236
        * gcc.target/sh/pr54236-3.c: New.

From-SVN: r210682

10 years agore PR middle-end/61252 (Invalid code produced for omp simd reduction(min:var) where...
Jakub Jelinek [Wed, 21 May 2014 08:04:03 +0000 (10:04 +0200)]
re PR middle-end/61252 (Invalid code produced for omp  simd reduction(min:var) where var is reference)

PR middle-end/61252
* omp-low.c (handle_simd_reference): New function.
(lower_rec_input_clauses): Use it.  Defer adding reference
initialization even for reduction without placeholder if in simd,
handle it properly later on.

* testsuite/libgomp.c++/simd-9.C: New test.

From-SVN: r210679

10 years agore PR c++/60189 (ICE with invalid use of _Cilk_sync)
Igor Zamyatin [Wed, 21 May 2014 08:03:06 +0000 (08:03 +0000)]
re PR c++/60189 (ICE with invalid use of _Cilk_sync)

gcc/cp
PR c/60189
* parser.c (cp_parser_postfix_expression): Move handling of cilk_sync
from here to...
(cp_parser_statement): ...here. Make sure only semicolon can go after
Cilk_sync.

gcc/testsuite
PR c++/60189
* c-c++-common/cilk-plus/CK/invalid_sync.cÑ: New test.

From-SVN: r210678

10 years agore PR tree-optimization/60899 (undef reference generated with -fdevirtualize-speculat...
Jan Hubicka [Wed, 21 May 2014 06:16:03 +0000 (08:16 +0200)]
re PR tree-optimization/60899 (undef reference generated with -fdevirtualize-speculatively)

PR tree-optimization/60899
* gimple-fold.c (can_refer_decl_in_current_unit_p): Cleanup;
assume all static symbols will have definition wile parsing and
check the do have definition later in compilation; check that
variable referring symbol will be output before concluding that
reference is safe; be conservative for referring local statics;
be more precise about when comdat is output in other partition.

g++.dg/ipa/devirt-11.C: Update template.

From-SVN: r210676

10 years agore PR bootstrap/60984 (AIX: gcc-4.9.0 bootstrap fails in stage-2)
Jan Hubicka [Wed, 21 May 2014 05:41:46 +0000 (07:41 +0200)]
re PR bootstrap/60984 (AIX: gcc-4.9.0 bootstrap fails in stage-2)

PR bootstrap/60984
* ipa-inline-transform.c (inline_call): Use add CALLEE_REMOVED parameter.
* ipa-inline.c (inline_to_all_callers): If callee was removed; return.
(ipa_inline): Loop inline_to_all_callers until no more aliases are removed.

From-SVN: r210674

10 years agoipa.c (ipa_discover_readonly_nonaddressable_var): Fix dumping; set writeonly flag...
Jan Hubicka [Wed, 21 May 2014 02:46:27 +0000 (04:46 +0200)]
ipa.c (ipa_discover_readonly_nonaddressable_var): Fix dumping; set writeonly flag only for vars actually written to.

* ipa.c (ipa_discover_readonly_nonaddressable_var): Fix dumping;
set writeonly flag only for vars actually written to.

From-SVN: r210672

10 years agore PR libgcc/60166 (ARM default NAN encoding violates EABI)
Maciej W. Rozycki [Wed, 21 May 2014 01:24:05 +0000 (01:24 +0000)]
re PR libgcc/60166 (ARM default NAN encoding violates EABI)

PR libgcc/60166
* config/arm/sfp-machine.h (_FP_NANFRAC_H, _FP_NANFRAC_S)
(_FP_NANFRAC_D, _FP_NANSIGN_Q): Set the quiet bit.

From-SVN: r210668

10 years agore PR c++/61038 (g++ -E is unusable with UDL strings)
Edward Smith-Rowland [Wed, 21 May 2014 00:35:29 +0000 (00:35 +0000)]
re PR c++/61038 (g++ -E is unusable with UDL strings)

gcc/testsuite/

2014-05-20  Edward Smith-Rowland  <3dw4rd@verizon.net>

PR C++/61038
* g++.dg/cpp0x/pr61038.C: New.

libcpp/

2014-05-20  Edward Smith-Rowland  <3dw4rd@verizon.net>

PR C++/61038
* macro.c (stringify_arg (cpp_reader *, macro_arg *)):
Check for user-defined literal strings and user-defined literal chars
to escape necessary characters.

From-SVN: r210666

10 years agoDaily bump.
GCC Administrator [Wed, 21 May 2014 00:17:07 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r210665

10 years agoipa-inline-transform.c (clone_inlined_nodes): Use min of edge count and callee count...
Dehao Chen [Tue, 20 May 2014 22:25:06 +0000 (22:25 +0000)]
ipa-inline-transform.c (clone_inlined_nodes): Use min of edge count and callee count to get clone count.

2014-05-20  Dehao Chen  <dehao@google.com>

* ipa-inline-transform.c (clone_inlined_nodes): Use min of edge count
and callee count to get clone count.
* tree-inline.c (expand_call_inline): Use callee count instead of bb
count in copy_body.

From-SVN: r210660

10 years agotestsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since libstdc++.exp imports those...
Cesar Philippidis [Tue, 20 May 2014 21:31:30 +0000 (14:31 -0700)]
testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since libstdc++.exp imports those flags via getenv.

2014-05-20  Cesar Philippidis  <cesar@codesourcery.com>

libstdc++-v3/
* scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
libstdc++.exp imports those flags via getenv.
* testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
CXXFLAGS contains a '-O' flag.

From-SVN: r210659

10 years agore PR middle-end/61243 (verify_flow_info failed: No region crossing jump at section...
Richard Sandiford [Tue, 20 May 2014 21:24:37 +0000 (21:24 +0000)]
re PR middle-end/61243 (verify_flow_info failed: No region crossing jump at section boundary in bb 65)

gcc/
PR rtl-optimization/61243
* emit-rtl.c (emit_copy_of_insn_after): Copy CROSSING_JUMP_P.

From-SVN: r210658

10 years agoadd dbgcnt support for devirt
Xinliang David Li [Tue, 20 May 2014 20:12:22 +0000 (20:12 +0000)]
add dbgcnt support for devirt

From-SVN: r210657

10 years agomsp430.md (split): Don't allow subregs when splitting SImode adds.
DJ Delorie [Tue, 20 May 2014 19:59:45 +0000 (15:59 -0400)]
msp430.md (split): Don't allow subregs when splitting SImode adds.

* config/msp430/msp430.md (split): Don't allow subregs when
splitting SImode adds.
(andneghi): Fix subtraction logic.
* config/msp430/predicates.md (msp430_nonsubreg_or_imm_operand): New.

From-SVN: r210655

10 years agotree.h (DECL_ONE_ONLY): Return true only for externally visible symbols.
Jan Hubicka [Tue, 20 May 2014 19:57:45 +0000 (21:57 +0200)]
tree.h (DECL_ONE_ONLY): Return true only for externally visible symbols.

* tree.h (DECL_ONE_ONLY): Return true only for externally visible
symbols.
* except.c (switch_to_exception_section, resolve_unique_section,
get_named_text_section, default_function_rodata_section,
align_variable, get_block_for_decl, default_section_type_flags):
Use DECL_COMDAT_GROUP instead of DECL_ONE_ONLY.
* symtab.c (symtab_add_to_same_comdat_group,
symtab_make_decl_local, fixup_same_cpp_alias_visibility,
symtab_nonoverwritable_alias, symtab_get_symbol_partitioning_class):
Likewise.
* cgraphclones.c (cgraph_create_virtual_clone): Likewise.
* bb-reorder.c (pass_partition_blocks::gate): Likewise.
* config/c6x/c6x.c (c6x_elf_unique_section): Likewise.
(c6x_function_in_section_p): Likewise.
* config/darwin.c (machopic_select_section): Likewise.
* config/arm/arm.c (arm_function_in_section_p): Likewise.
* config/mips/mips.c (mips_function_rodata_section): Likewise.
* config/mep/mep.c (mep_select_section): LIkewise.
* config/i386/i386.c (x86_64_elf_unique_section): Likewise.

From-SVN: r210654

10 years agore PR c++/58753 (Brace-initializing a vector with a direct-initialization NSDMI doesn...
Paolo Carlini [Tue, 20 May 2014 19:20:59 +0000 (19:20 +0000)]
re PR c++/58753 (Brace-initializing a vector with a direct-initialization NSDMI doesn't work in a template)

/cp
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58753
PR c++/58930
PR c++/58704
* typeck2.c (digest_nsdmi_init): New.
* parser.c (cp_parser_late_parse_one_default_arg): Use it.
* init.c (get_nsdmi): Likewise.
* cp-tree.h (digest_nsdmi_init): Declare.

/testsuite
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58753
PR c++/58930
PR c++/58704
* g++.dg/cpp0x/nsdmi-template11.C: New.
* g++.dg/cpp0x/nsdmi-template12.C: Likewise.
* g++.dg/cpp0x/nsdmi-template13.C: Likewise.

From-SVN: r210653

10 years agotypeck.c (get_member_function_from_ptrfunc): Don't try to look up a virtual function...
Jason Merrill [Tue, 20 May 2014 17:37:57 +0000 (13:37 -0400)]
typeck.c (get_member_function_from_ptrfunc): Don't try to look up a virtual function in a dummy object.

* typeck.c (get_member_function_from_ptrfunc): Don't try to look
up a virtual function in a dummy object.

From-SVN: r210651

10 years agore PR target/61223 (libstdc++ build fail due to pop lr register)
Alexey Merzlyakov [Tue, 20 May 2014 17:25:26 +0000 (17:25 +0000)]
re PR target/61223 (libstdc++ build fail due to pop lr register)

2014-05-20  Alexey Merzlyakov  <alexey.merzlyakov@samsung.com>

PR libstdc++/61223
Revert:
2014-05-16  Alexey Merzlyakov  <alexey.merzlyakov@samsung.com>

PR libstdc++/60758
* libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
and add unwind directives.

From-SVN: r210650

10 years agotree-ssa-dom.c (hashable_expr_equal_p): Also compare the EH region of calls to pure...
Eric Botcazou [Tue, 20 May 2014 17:01:35 +0000 (17:01 +0000)]
tree-ssa-dom.c (hashable_expr_equal_p): Also compare the EH region of calls to pure functions that can throw an exception.

* tree-ssa-dom.c (hashable_expr_equal_p) <EXPR_CALL>: Also compare the
EH region of calls to pure functions that can throw an exception.
* tree-ssa-sccvn.c (vn_reference_eq): Remove duplicated test.
(copy_reference_ops_from_call): Also copy the EH region of the call if
it can throw an exception.

From-SVN: r210649

10 years agomsp430.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
Nick Clifton [Tue, 20 May 2014 16:51:58 +0000 (16:51 +0000)]
msp430.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.

* config/msp430/msp430.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
(msp430_gimplify_va_arg_expr): New function.
(msp430_print_operand): Handle (CONST (ZERO_EXTRACT)).

From-SVN: r210648

10 years agore PR c++/60373 (half warning: visibility attribute ignored because it)
Paolo Carlini [Tue, 20 May 2014 15:16:48 +0000 (15:16 +0000)]
re PR c++/60373 (half warning: visibility attribute ignored because it)

/cp
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60373
* decl.c (duplicate_decls): Replace pair of warning_at with
warning_at + inform.
(maybe_commonize_var): Likewise.

/testsuite
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60373
* g++.dg/cpp0x/Wattributes1.C: New.
* g++.dg/ext/visibility/redecl1.C: Adjust.
* g++.dg/ext/visibility/visibility-7.C: Likewise.

From-SVN: r210646

10 years agore PR bootstrap/61210 (bootstrap failure with clang)
Richard Sandiford [Tue, 20 May 2014 14:18:44 +0000 (14:18 +0000)]
re PR bootstrap/61210 (bootstrap failure with clang)

gcc/cp/
PR bootstrap/61210
* pt.c (tsubst_copy, tsubst_omp_for_iterator, tsubst_expr)
(tsubst_copy_and_build): Perform recursive substitutions in a
deterministic order.

From-SVN: r210645

10 years agosimplify-rtx.c (simplify_binary_operation_1): Optimize case of nested VEC_SELECTs...
Bill Schmidt [Tue, 20 May 2014 14:14:21 +0000 (14:14 +0000)]
simplify-rtx.c (simplify_binary_operation_1): Optimize case of nested VEC_SELECTs that are inverses of each other.

[gcc]

2014-05-20  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* simplify-rtx.c (simplify_binary_operation_1): Optimize case of
nested VEC_SELECTs that are inverses of each other.

[gcc/testsuite]

2014-05-20  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/vsxcopy.c: New test.

From-SVN: r210644

10 years agotree-ssa-sccvn.c (process_scc): Dump SCC here, when iterating,
Richard Biener [Tue, 20 May 2014 13:54:06 +0000 (13:54 +0000)]
tree-ssa-sccvn.c (process_scc): Dump SCC here, when iterating,

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

* tree-ssa-sccvn.c (process_scc): Dump SCC here, when
iterating,
(extract_and_process_scc_for_name): not here.
(cond_dom_walker::before_dom_children): Only process
stmts that end the BB in interesting ways.
(run_scc_vn): Mark param uses as visited.

From-SVN: r210643

10 years agore PR c++/58664 ([c++11] ICE initializing array of incomplete type within union)
Paolo Carlini [Tue, 20 May 2014 13:30:40 +0000 (13:30 +0000)]
re PR c++/58664 ([c++11] ICE initializing array of incomplete type within union)

/cp
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58664
* typeck2.c (cxx_incomplete_type_inform): New.
(cxx_incomplete_type_diagnostic): Use it.
* decl.c (grokdeclarator): Check the element type of an
incomplete array type; call the above.
* cp-tree.h (cxx_incomplete_type_inform): Declare.

/testsuite
2014-05-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58664
* g++.dg/cpp0x/nsdmi-union6.C: New.
* g++.dg/parse/pr58664.C: Likewise.
* g++.dg/cpp0x/nsdmi6.C: Tweak.
* g++.dg/parse/crash31.C: Likewise.
* g++.dg/template/error2.C: Likewise.
* g++.dg/template/inherit8.C: Likewise.
* g++.dg/template/offsetof2.C: Likewise.

From-SVN: r210642

10 years ago[ARM] Adjust arith_shiftsi for -mrestrict-it.
Kyrylo Tkachov [Tue, 20 May 2014 13:16:21 +0000 (13:16 +0000)]
[ARM] Adjust arith_shiftsi for -mrestrict-it.

* config/arm/arm.md (arith_shiftsi): Do not predicate for
arm_restrict_it.

From-SVN: r210640

10 years agodg-extract-results.py (parse_run): Handle warnings that are printed before a test...
Richard Sandiford [Tue, 20 May 2014 10:08:59 +0000 (10:08 +0000)]
dg-extract-results.py (parse_run): Handle warnings that are printed before a test harness is run.

contrib/
* dg-extract-results.py (parse_run): Handle warnings that are printed
before a test harness is run.

From-SVN: r210637

10 years agomsp430.md (zero_extendpsisi2): Use + constraint on operand 0 in order to prevent...
Nick Clifton [Tue, 20 May 2014 09:38:00 +0000 (09:38 +0000)]
msp430.md (zero_extendpsisi2): Use + constraint on operand 0 in order to prevent confusion about the number of...

* config/msp430/msp430.md (zero_extendpsisi2): Use + constraint on
operand 0 in order to prevent confusion about the number of
registers involved.

From-SVN: r210636

10 years agolibffi.exp (load_gcc_lib): Register loaded libs.
Sebastian Huber [Tue, 20 May 2014 08:20:06 +0000 (08:20 +0000)]
libffi.exp (load_gcc_lib): Register loaded libs.

2014-05-20  Sebastian Huber  <sebastian.huber@embedded-brains.de>

libffi/
* testsuite/lib/libffi.exp (load_gcc_lib): Register loaded libs.

libjava/
* testsuite/lib/libjava.exp (load_gcc_lib): Register loaded libs.

libstdc++-v3/
* testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.

From-SVN: r210634

10 years agore PR tree-optimization/61221 (ICE on valid code at -O1 and above on x86_64-linux...
Richard Biener [Tue, 20 May 2014 08:16:13 +0000 (08:16 +0000)]
re PR tree-optimization/61221 (ICE on valid code at -O1 and above on x86_64-linux-gnu)

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

PR tree-optimization/61221
* tree-ssa-pre.c (el_to_update): Remove.
(eliminate_dom_walker::before_dom_children): Handle released
VDEFs by value-numbering them to the associated VUSE.  Update
stmt immediately for substituted call address.
(eliminate): Remove delayed stmt updating code.
* tree-ssa-sccvn.c (vuse_ssa_val): New function valueizing
possibly late re-numbered vuses.
(vn_reference_lookup_2): Adjust.
(vn_reference_lookup_pieces): Likewise.
(vn_reference_lookup): Likewise.

From-SVN: r210633

10 years agoconfig.gcc: Remove need_64bit_hwint.
Richard Biener [Tue, 20 May 2014 08:01:32 +0000 (08:01 +0000)]
config.gcc: Remove need_64bit_hwint.

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

gcc/
* config.gcc: Remove need_64bit_hwint.
* configure.ac: Do not define NEED_64BIT_HOST_WIDE_INT.
* hwint.h: Do not check NEED_64BIT_HOST_WIDE_INT but assume
it to be true.
* config.in: Regenerate.
* configure: Likewise.

libcpp/
* configure.ac: Copy gcc logic of detecting a 64bit type.
Remove HOST_WIDE_INT define.
* include/cpplib.h: typedef cpp_num_part to a 64bit type,
similar to how hwint.h does it.
* config.in: Regenerate.
* configure: Likewise.

From-SVN: r210632

10 years ago* mode-switching.c (optimize_mode_switching): Fix comment typo.
Joern Rennecke [Tue, 20 May 2014 07:08:01 +0000 (08:08 +0100)]
* mode-switching.c (optimize_mode_switching): Fix comment typo.

From-SVN: r210631

10 years agore PR libstdc++/61227 ([C++11] Regex [\w] does not work)
Tim Shen [Tue, 20 May 2014 04:31:54 +0000 (04:31 +0000)]
re PR libstdc++/61227 ([C++11] Regex [\w] does not work)

2014-05-20  Tim Shen  <timshen91@gmail.com>

PR libstdc++/61227
* include/bits/regex_compiler.h
(_BracketMatcher<>::_M_add_character_class): Add negative character
class support.
* include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
Add more testcases.

From-SVN: r210630

10 years agoDaily bump.
GCC Administrator [Tue, 20 May 2014 00:16:45 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r210629

10 years ago* python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
Jonathan Wakely [Mon, 19 May 2014 21:43:13 +0000 (22:43 +0100)]
* python/libstdcxx/v6/printers.py: Use Python3 raise syntax.

From-SVN: r210625

10 years agore PR c++/58761 (ICE with a lambda capturing this in a NSDMI)
Jason Merrill [Mon, 19 May 2014 18:41:24 +0000 (14:41 -0400)]
re PR c++/58761 (ICE with a lambda capturing this in a NSDMI)

PR c++/58761
* pt.c (tsubst_copy): Don't check at_function_scope_p.
(instantiate_class_template_1): Don't push_to_top_level in an nsdmi.

From-SVN: r210624

10 years agotypeck2.c (cxx_incomplete_type_diagnostic): Use inform.
Paolo Carlini [Mon, 19 May 2014 17:51:31 +0000 (17:51 +0000)]
typeck2.c (cxx_incomplete_type_diagnostic): Use inform.

/cp
2014-05-19  Paolo Carlini  <paolo.carlini@oracle.com>

* typeck2.c (cxx_incomplete_type_diagnostic): Use inform.
* parser.c (cp_parser_enum_specifier): Likewise.

/testsuite
2014-05-19  Paolo Carlini  <paolo.carlini@oracle.com>

* c-c++-common/gomp/simd4.c: Adjust for inform.
* g++.dg/cpp0x/decltype-call1.C: Likewise.
* g++.dg/cpp0x/forw_enum6.C: Likewise.
* g++.dg/cpp0x/lambda/lambda-ice7.C: Likewise.
* g++.dg/cpp0x/noexcept15.C: Likewise.
* g++.dg/cpp0x/variadic-ex2.C: Likewise.
* g++.dg/eh/spec6.C: Likewise.
* g++.dg/expr/cast1.C: Likewise.
* g++.dg/expr/dtor1.C: Likewise.
* g++.dg/ext/is_base_of_diagnostic.C: Likewise.
* g++.dg/ext/unary_trait_incomplete.C: Likewise.
* g++.dg/gomp/pr49223-2.C: Likewise.
* g++.dg/gomp/udr-4.C: Likewise.
* g++.dg/init/delete1.C: Likewise.
* g++.dg/other/crash-2.C: Likewise.
* g++.dg/parse/crash24.C: Likewise.
* g++.dg/parse/crash25.C: Likewise.
* g++.dg/parse/crash31.C: Likewise.
* g++.dg/parse/crash49.C: Likewise.
* g++.dg/parse/crash50.C: Likewise.
* g++.dg/parse/crash54.C: Likewise.
* g++.dg/parse/dtor7.C: Likewise.
* g++.dg/parse/error40.C: Likewise.
* g++.dg/parse/fused-params1.C: Likewise.
* g++.dg/parse/new1.C: Likewise.
* g++.dg/template/crash35.C: Likewise.
* g++.dg/template/crash59.C: Likewise.
* g++.dg/template/crash77.C: Likewise.
* g++.dg/template/error51.C: Likewise.
* g++.dg/template/incomplete1.C: Likewise.
* g++.dg/template/incomplete3.C: Likewise.
* g++.dg/template/incomplete4.C: Likewise.
* g++.dg/template/incomplete5.C: Likewise.
* g++.dg/template/inherit8.C: Likewise.
* g++.dg/template/instantiate1.C: Likewise.
* g++.dg/template/instantiate3.C: Likewis: Likewise.
* g++.dg/template/offsetof2.C: Likewise.
* g++.dg/tm/pr51928.C: Likewise.
* g++.dg/warn/Wdelete-incomplete-1.C: Likewise.
* g++.dg/warn/incomplete1.C: Likewise.
* g++.dg/warn/incomplete2.C: Likewise.
* g++.old-deja/g++.brendan/friend4.C: Likewise.
* g++.old-deja/g++.bugs/900121_01.C: Likewise.
* g++.old-deja/g++.bugs/900214_01.C: Likewise.
* g++.old-deja/g++.eh/catch1.C: Likewise.
* g++.old-deja/g++.eh/spec6.C: Likewise.
* g++.old-deja/g++.mike/p7868.C: Likewise.
* g++.old-deja/g++.other/crash38.C: Likewise.
* g++.old-deja/g++.other/enum2.C: Likewise.
* g++.old-deja/g++.other/incomplete.C: Likewise.
* g++.old-deja/g++.other/vaarg3.C: Likewise.
* g++.old-deja/g++.pt/crash9.C: Likewise.
* g++.old-deja/g++.pt/niklas01a.C: Likewise.
* g++.old-deja/g++.pt/typename8.C: Likewise.
* g++.old-deja/g++.robertl/ice990323-1.C: Likewise.

From-SVN: r210623

10 years agoextend.texi: Create Label Attributes section, move all label attributes into it and...
David Wohlferd [Mon, 19 May 2014 17:40:40 +0000 (17:40 +0000)]
extend.texi: Create Label Attributes section, move all label attributes into it and reference it.

2014-05-19  David Wohlferd <dw@LimeGreenSocks.com>

        * doc/extend.texi: Create Label Attributes section,
        move all label attributes into it and reference it.

From-SVN: r210621

10 years ago+ * MAINTAINERS: Add wide-int reviewers.
Mike Stump [Mon, 19 May 2014 17:12:53 +0000 (17:12 +0000)]
+ * MAINTAINERS: Add wide-int reviewers.

From-SVN: r210620

10 years agoarm.c (thumb1_reorg): When scanning backwards skip anything that's not a proper insn.
Richard Earnshaw [Mon, 19 May 2014 16:09:49 +0000 (16:09 +0000)]
arm.c (thumb1_reorg): When scanning backwards skip anything that's not a proper insn.

* arm.c (thumb1_reorg): When scanning backwards skip anything
that's not a proper insn.

From-SVN: r210618

10 years ago* lib/target-supports.exp
Joseph Myers [Mon, 19 May 2014 15:50:40 +0000 (16:50 +0100)]
* lib/target-supports.exp
(check_effective_target_vect_sizes_32B_16B): Return false if
128-bit AVX vectors preferred.

From-SVN: r210617

10 years agotarget-supports.exp (check_effective_target_avx): Early out if not x86 to prevent...
Mike Stump [Mon, 19 May 2014 15:32:22 +0000 (15:32 +0000)]
target-supports.exp (check_effective_target_avx): Early out if not x86 to prevent x86 flags on non-x86 targets.

* lib/target-supports.exp (check_effective_target_avx): Early out
if not x86 to prevent x86 flags on non-x86 targets.

From-SVN: r210616

10 years agolibitm: Enable aarch64
Richard Henderson [Mon, 19 May 2014 14:41:18 +0000 (07:41 -0700)]
libitm: Enable aarch64

From-SVN: r210615

10 years agore PR tree-optimization/61221 (ICE on valid code at -O1 and above on x86_64-linux...
Richard Biener [Mon, 19 May 2014 14:33:31 +0000 (14:33 +0000)]
re PR tree-optimization/61221 (ICE on valid code at -O1 and above on x86_64-linux-gnu)

2014-05-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61221
* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
Do nothing for unreachable blocks.
* tree-ssa-sccvn.c (cond_dom_walker::before_dom_children):
Improve unreachability detection.

* gcc.dg/torture/pr61221.c: New testcase.

From-SVN: r210614

10 years agore PR middle-end/61209 (internal compiler error: in fold_convert_loc, at fold-const...
Richard Biener [Mon, 19 May 2014 14:32:23 +0000 (14:32 +0000)]
re PR middle-end/61209 (internal compiler error: in fold_convert_loc, at fold-const.c:1950)

2014-05-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61209
* tree-ssa-sccvn.c (visit_phi): Avoid setting expr to VN_TOP.

* gfortran.dg/pr61209.f90: New testcase.

From-SVN: r210613

10 years agoexcept.c (init_eh): Fix computation of builtin setjmp buffer size to allow for target...
Nick Clifton [Mon, 19 May 2014 13:27:25 +0000 (13:27 +0000)]
except.c (init_eh): Fix computation of builtin setjmp buffer size to allow for targets where...

* except.c (init_eh): Fix computation of builtin setjmp buffer
size to allow for targets where POINTER_SIZE > BITS_PER_WORD.

From-SVN: r210612

10 years agore PR tree-optimization/61184 (wrong code (that hangs) by LTO on x86_64-linux-gnu)
Richard Biener [Mon, 19 May 2014 12:32:15 +0000 (12:32 +0000)]
re PR tree-optimization/61184 (wrong code (that hangs) by LTO on x86_64-linux-gnu)

2014-05-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61184
* tree-vrp.c (is_negative_overflow_infinity): Use
TREE_OVERFLOW_P and do that check first.
(is_positive_overflow_infinity): Likewise.
(is_overflow_infinity): Likewise.
(vrp_operand_equal_p): Properly treat operands with
differing overflow as not equal.

* c-c++-common/torture/pr61184.c: New testcase.

From-SVN: r210611

10 years agoFix an error in a CONST_INT_P patch from 2009.
Bernd Schmidt [Mon, 19 May 2014 11:38:14 +0000 (11:38 +0000)]
Fix an error in a CONST_INT_P patch from 2009.

* simplify-rtx.c (simplify_unary_operation_1): Use CONST_INT_P in
shift simplification where it was intended.

From-SVN: r210610

10 years agore PR target/61195 (single precision fmov does not need to switch mode)
Christian Bruel [Mon, 19 May 2014 08:04:22 +0000 (10:04 +0200)]
re PR target/61195 (single precision fmov does not need to switch mode)

PR target/61195
* config/sh/sh.md (movsf_ie): Unset fp_mode for fmov

From-SVN: r210608

10 years agore PR bootstrap/61084 (wide-int merge broke Solaris/SPARC bootstrap)
Richard Sandiford [Mon, 19 May 2014 07:25:25 +0000 (07:25 +0000)]
re PR bootstrap/61084 (wide-int merge broke Solaris/SPARC bootstrap)

gcc/
PR target/61084
* config/sparc/sparc.c (sparc_fold_builtin): Use widest_int rather
than wide_int.

From-SVN: r210604

10 years agoreg-notes.def (CROSSING_JUMP): Likewise.
Richard Sandiford [Mon, 19 May 2014 06:49:58 +0000 (06:49 +0000)]
reg-notes.def (CROSSING_JUMP): Likewise.

gcc/
* reg-notes.def (CROSSING_JUMP): Likewise.
* rtl.h (rtx_def): Update comment for jump flag.
(CROSSING_JUMP_P): Define.
* cfgcleanup.c (try_forward_edges, try_optimize_cfg): Use it instead
of a REG_CROSSING_JUMP note.
* cfghooks.c (tidy_fallthru_edges): Likewise.
* cfgrtl.c (fixup_partition_crossing, rtl_verify_edges): Likewise.
* emit-rtl.c (try_split): Likewise.
* haifa-sched.c (sched_create_recovery_edges): Likewise.
* ifcvt.c (find_if_case_1, find_if_case_2): Likewise.
* jump.c (redirect_jump_2): Likewise.
* reorg.c (follow_jumps, fill_slots_from_thread): Likewise.
(relax_delay_slots): Likewise.
* config/arc/arc.md (jump_i, cbranchsi4_scratch, *bbit): Likewise.
(bbit_di): Likewise.
* config/arc/arc.c (arc_reorg, arc_can_follow_jump): Likewise.
* config/sh/sh.md (jump_compact): Likewise.
* bb-reorder.c (rotate_loop): Likewise.
(pass_duplicate_computed_gotos::execute): Likewise.
(add_reg_crossing_jump_notes): Rename to...
(update_crossing_jump_flags): ...this.
(pass_partition_blocks::execute): Update accordingly.

From-SVN: r210603

10 years agotree.h: Remove extraneous template <>.
Richard Sandiford [Mon, 19 May 2014 06:47:03 +0000 (06:47 +0000)]
tree.h: Remove extraneous template <>.

gcc/
* tree.h: Remove extraneous template <>.

From-SVN: r210602

10 years agore PR target/58066 (__tls_get_addr is called with misaligned stack on x86-64)
Wei Mi [Mon, 19 May 2014 05:25:45 +0000 (05:25 +0000)]
re PR target/58066 (__tls_get_addr is called with misaligned stack on x86-64)

2014-05-18  Wei Mi  <wmi@google.com>

        PR target/58066
        * gcc.target/i386/pr58066.c: Replace pattern matching of .cfi
        directive with rtl insns. Add effective-target of fpic and
        tls_native.

From-SVN: r210601

10 years agoAdd new test case
Xinliang David Li [Mon, 19 May 2014 01:41:16 +0000 (01:41 +0000)]
Add new test case

From-SVN: r210599

10 years agoipa.c (symtab_remove_unreachable_nodes): Remove symbol from comdat group if its body...
Jan Hubicka [Mon, 19 May 2014 01:01:12 +0000 (03:01 +0200)]
ipa.c (symtab_remove_unreachable_nodes): Remove symbol from comdat group if its body was eliminated.

* ipa.c (symtab_remove_unreachable_nodes): Remove
symbol from comdat group if its body was eliminated.
(comdat_can_be_unshared_p_1): Static symbols can always
be privatized.
* symtab.c (symtab_remove_from_same_comdat_group): Break out
from ...
(symtab_unregister_node): ... this one.
(verify_symtab_base): More strict checking of comdats.
* cgraph.h (symtab_remove_from_same_comdat_group): Declare.

From-SVN: r210598

10 years agotree-pass.h (make_pass_ipa_comdats): New pass.
Jan Hubicka [Mon, 19 May 2014 00:58:43 +0000 (02:58 +0200)]
tree-pass.h (make_pass_ipa_comdats): New pass.

* tree-pass.h (make_pass_ipa_comdats): New pass.
* timevar.def (TV_IPA_COMDATS): New timevar.
* passes.def (pass_ipa_comdats): Add.
* Makefile.in (OBJS): Add ipa-comdats.o
* ipa-comdats.c: New file.

* g++.dg/ipa/comdat.C: New file.

From-SVN: r210597

10 years agoDaily bump.
GCC Administrator [Mon, 19 May 2014 00:18:24 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r210596

10 years agoipa.c (update_visibility_by_resolution_info): New function.
Jan Hubicka [Sun, 18 May 2014 21:16:08 +0000 (23:16 +0200)]
ipa.c (update_visibility_by_resolution_info): New function.

* ipa.c (update_visibility_by_resolution_info): New function.
(function_and_variable_visibility): Use it.

From-SVN: r210592

10 years agotrans.c (Subprogram_Body_to_gnu): Rework comment and set function_start_locus.
Eric Botcazou [Sun, 18 May 2014 21:12:42 +0000 (21:12 +0000)]
trans.c (Subprogram_Body_to_gnu): Rework comment and set function_start_locus.

* gcc-interface/trans.c (Subprogram_Body_to_gnu): Rework comment and
set function_start_locus.

From-SVN: r210591

10 years agoutils.c (gnat_write_global_declarations): Adjust the flags put on dummy_global.
Eric Botcazou [Sun, 18 May 2014 21:08:14 +0000 (21:08 +0000)]
utils.c (gnat_write_global_declarations): Adjust the flags put on dummy_global.

* utils.c (gnat_write_global_declarations): Adjust the flags put on
dummy_global.

From-SVN: r210589

10 years agodecl.c (change_qualified_type): New static function.
Eric Botcazou [Sun, 18 May 2014 21:02:59 +0000 (21:02 +0000)]
decl.c (change_qualified_type): New static function.

* gcc-interface/decl.c (change_qualified_type): New static function.
(gnat_to_gnu_entity): Use it throughout to add qualifiers on types.
<E_Array_Type>: Set TYPE_VOLATILE on the array type directly.
<E_Array_Subtype>: Likewise.
Do not set flags on an UNCONSTRAINED_ARRAY_TYPE directly.
(gnat_to_gnu_component_type): Likewise.
(gnat_to_gnu_param): Likewise.

From-SVN: r210588

10 years agofe.h (Set_Present_Expr): Move around.
Eric Botcazou [Sun, 18 May 2014 20:52:45 +0000 (20:52 +0000)]
fe.h (Set_Present_Expr): Move around.

* fe.h (Set_Present_Expr): Move around.
(End_Location): New macro.
* gcc-interface/trans.c (Case_Statement_to_gnu): Use End_Location.

From-SVN: r210587

10 years agocgraph.h (symtab_first_defined_symbol, [...]): New functions.
Jan Hubicka [Sun, 18 May 2014 19:11:58 +0000 (21:11 +0200)]
cgraph.h (symtab_first_defined_symbol, [...]): New functions.

* cgraph.h (symtab_first_defined_symbol, symtab_next_defined_symbol):
New functions.
(FOR_EACH_DEFINED_SYMBOL): New macro.
(varpool_first_static_initializer, varpool_next_static_initializer,
varpool_first_defined_variable, varpool_next_defined_variable): Fix comments.
(symtab_in_same_comdat_p): Correctly deal with inline functions.

From-SVN: r210586

10 years agodecl.c (gnat_to_gnu_entity): Use Underlying_Type in lieu of more verbose construct.
Eric Botcazou [Sun, 18 May 2014 17:59:58 +0000 (17:59 +0000)]
decl.c (gnat_to_gnu_entity): Use Underlying_Type in lieu of more verbose construct.

* gcc-interface/decl.c (gnat_to_gnu_entity): Use Underlying_Type in
lieu of more verbose construct.
* gcc-interface/trans.c (Call_to_gnu): Likewise.
(gnat_to_gnu): Likewise.  Remove obsolete code.

From-SVN: r210585

10 years agodecl.c (gnat_to_gnu_entity): Do not consider that regular packed arrays can never...
Eric Botcazou [Sun, 18 May 2014 17:51:15 +0000 (17:51 +0000)]
decl.c (gnat_to_gnu_entity): Do not consider that regular packed arrays can never be superflat.

* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Do not
consider that regular packed arrays can never be superflat.

From-SVN: r210583