gcc.git
9 years agore PR libstdc++/64695 (FAIL: libstdc++-prettyprinters/cxx11.cc)
Jonathan Wakely [Fri, 20 Feb 2015 14:40:00 +0000 (14:40 +0000)]
re PR libstdc++/64695 (FAIL: libstdc++-prettyprinters/cxx11.cc)

PR libstdc++/64695
* python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle new
tuple layout.

From-SVN: r220871

9 years agosem_prag.adb (Analyze_Pragma, [...]): Pragma legally applies to an abstract subprogra...
Ed Schonberg [Fri, 20 Feb 2015 14:38:28 +0000 (14:38 +0000)]
sem_prag.adb (Analyze_Pragma, [...]): Pragma legally applies to an abstract subprogram declaration.

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

* sem_prag.adb (Analyze_Pragma, case Obsolescent): Pragma
legally applies to an abstract subprogram declaration.
* freeze.adb: Minor comment addition.

From-SVN: r220870

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 14:35:51 +0000 (15:35 +0100)]
[multiple changes]

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

* errout.ads: Document replacement of Name_uPre/Post/Type_Invariant.
* erroutc.adb (Set_Msg_Str): Replace _xxx.
(Pre/Post/Type_Invariant) by xxx'Class.
* erroutc.ads (Set_Msg_Str): Replace _xxx.
(Pre/Post/Type_Invariant) by xxx'Class.
* sem_prag.adb (Fix_Error): Remove special casing of
Name_uType_Invariant.
(Analyze_Pre_Post_Condition_In_Decl_Part): Remove special casing of
Name_uPre and Name_uPost in aspect case (done in Errout now).

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

* g-alveop.adb: Minor style fixes.

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

* freeze.adb (Warn_Overlay): Guard against blow up with address
clause.

2015-02-20  Bob Duff  <duff@adacore.com>

* exp_attr.adb (May_Be_External_Call): Remove this. There is no need
for the compiler to guess whether the call is internal or external --
it is always external.
(Expand_Access_To_Protected_Op): For P'Access, where P
is a protected subprogram, always create a pointer to the
External_Subprogram.

From-SVN: r220869

9 years agoa-dispat.adb, [...]: Minor reformatting.
Robert Dewar [Fri, 20 Feb 2015 14:29:49 +0000 (14:29 +0000)]
a-dispat.adb, [...]: Minor reformatting.

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

* a-dispat.adb, a-stcoed.ads: Minor reformatting.

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

* sem_ch13.adb (Build_Discrete_Static_Predicate): Allow static
predicate for non-static subtype.
(Build_Predicate_Functions): Do not assume subtype associated with a
static predicate must be static.

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

* errout.adb (Set_Msg_Node): Better handling of internal names
(Set_Msg_Node): Kill message when we cannot eliminate internal name.
* errout.ads: Document additional case of message deletion.
* namet.adb (Is_Internal_Name): Refined to consider wide
strings in brackets notation and character literals not to be
internal names.
* sem_ch8.adb (Find_Selected_Component): Give additional error
when selector name is a subprogram whose first parameter has
the same type as the prefix, but that type is untagged.

From-SVN: r220868

9 years agog-allein.ads, [...]: Minor reformatting
Robert Dewar [Fri, 20 Feb 2015 14:27:54 +0000 (14:27 +0000)]
g-allein.ads, [...]: Minor reformatting

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

* g-allein.ads, g-alveop.adb, g-alveop.ads, opt.ads: Minor reformatting

From-SVN: r220867

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 14:26:06 +0000 (15:26 +0100)]
[multiple changes]

2015-02-20  Tristan Gingold  <gingold@adacore.com>

* opt.ads (GNAT_Mode_Config): New variable.
* opt.adb (Set_Opt_Config_Switches): Consider GNAT_Mode_Config
to set Assertions_Enabled.
* switch-c.adb (Scan_Front_End_Switches): Set GNAT_Mode_Config
for -gnatg.

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

* s-valllu.ads (Scan_Raw_Long_Long_Unsigned): Add an additional
comment regarding the handling of unterminated fixed-point
constants.
* s-valuns.ads (Scan_Raw_Unsigned): Add comments
corresponding to those previously added for
System.Val_LLU.Scan_Raw_Long_Long_Unsigned.

From-SVN: r220866

9 years agog-allein.ads, [...]: Code clean ups.
Olivier Hainque [Fri, 20 Feb 2015 14:24:28 +0000 (14:24 +0000)]
g-allein.ads, [...]: Code clean ups.

2015-02-20  Olivier Hainque  <hainque@adacore.com>

* g-allein.ads, g-alveop.ads, g-alveop.adb: Code clean ups.

From-SVN: r220865

9 years agog-allein.ads (vec_vspltw): Remove.
Olivier Hainque [Fri, 20 Feb 2015 14:23:05 +0000 (14:23 +0000)]
g-allein.ads (vec_vspltw): Remove.

2015-02-20  Olivier Hainque  <hainque@adacore.com>

* g-allein.ads (vec_vspltw): Remove.
* g-alveop.ad?: Replace vec_vspltw renamings by proper Inline_Always
wrappers with Intrinsic convention.

From-SVN: r220864

9 years agog-allein.ads (vec_dstt): Remove.
Olivier Hainque [Fri, 20 Feb 2015 14:22:14 +0000 (14:22 +0000)]
g-allein.ads (vec_dstt): Remove.

2015-02-20  Olivier Hainque  <hainque@adacore.com>

* g-allein.ads (vec_dstt): Remove.
* g-alveop.ad?: Replace
vec_dstt renamings by proper Inline_Always wrappers with Intrinsic
convention.

From-SVN: r220862

9 years agog-allein.ads (vec_dst): Remove.
Olivier Hainque [Fri, 20 Feb 2015 14:17:42 +0000 (14:17 +0000)]
g-allein.ads (vec_dst): Remove.

2015-02-20  Olivier Hainque  <hainque@adacore.com>

* g-allein.ads (vec_dst): Remove.
* g-alveop.ad?: Replace vec_dst renamings by proper Inline_Always
wrappers with Intrinsic convention.

From-SVN: r220861

9 years ago[AArch64] Fix wrong-code bug in right-shift SISD patterns
Kyrylo Tkachov [Fri, 20 Feb 2015 14:05:51 +0000 (14:05 +0000)]
[AArch64] Fix wrong-code bug in right-shift SISD patterns

* config/aarch64/aarch64.md (*aarch64_lshr_sisd_or_int_<mode>3):
Mark operand 0 as earlyclobber in 2nd alternative.
(1st define_split below *aarch64_lshr_sisd_or_int_<mode>3):
Write negated shift amount into QI lowpart operand 0 and use it
in the shift step.
(2nd define_split below *aarch64_lshr_sisd_or_int_<mode>3): Likewise.

* gcc.target/aarch64/sisd-shft-neg_1.c: New test.

From-SVN: r220860

9 years agog-allein.ads (vec_dss, vec_dssall): Remove.
Olivier Hainque [Fri, 20 Feb 2015 14:00:15 +0000 (14:00 +0000)]
g-allein.ads (vec_dss, vec_dssall): Remove.

2015-02-20  Olivier Hainque  <hainque@adacore.com>

* g-allein.ads (vec_dss, vec_dssall): Remove.
* g-alveop.ads (vec_dss, vec_dssall): Rename the ll versions.

From-SVN: r220859

9 years agoCode clean ups.
Arnaud Charlet [Fri, 20 Feb 2015 13:55:31 +0000 (14:55 +0100)]
Code clean ups.

From-SVN: r220858

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 13:54:40 +0000 (14:54 +0100)]
[multiple changes]

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

* sem_prag.adb: Minor comment clarification.

2015-02-20  Olivier Hainque  <hainque@adacore.com>

* g-allein.ads (vec_ctf, vec_vcsfx, vec_vcfux): Remove.
* g-alleve.ads, g-alleva.adb (vcfux): Likewise.
* g-alveop.ads (vec_vcfsx, vec_vcfux): Just rename the ll versions.
(vec_ctf): Now renamings as well.

From-SVN: r220857

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 13:52:31 +0000 (14:52 +0100)]
[multiple changes]

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

* switch-c.adb, bindgen.adb: Minor reformatting.

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

* sem_prag.adb (Analyze_Pragma, case Type_Invariant):
Invariant'class is allowed on an abstract type.

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

* sem_ch3.adb (Access_Definition): If the access definition is
for a protected component and defines an access to protected
subprogram, do not create an itype reference for it because a
full type declaration will be built in order to generate the
proper equivalent type.
(Analyze_Subtype_Declaration): Add information of incomplete
subtypes, for Ada 2012 extended uses of incomplete types.

From-SVN: r220856

9 years agocgraph.h (clone_function_name_1): Declare.
Bernd Schmidt [Fri, 20 Feb 2015 12:55:37 +0000 (12:55 +0000)]
cgraph.h (clone_function_name_1): Declare.

     * cgraph.h (clone_function_name_1): Declare.
     * cgraphclones.c (clone_function_name_1): New function.
     (clone_function_name): Use it.
     * lto-partition.c: Include "stringpool.h".
     (must_not_rename, maybe_rewrite_identifier,
     validize_symbol_for_target): New static functions.
     (privatize_symbol_name): Use must_not_rename.
     (promote_symbol): Call validize_symbol_for_target.
     (lto_promote_cross_file_statics): Likewise.
     (lto_promote_statics_nonwpa): Likewise.

From-SVN: r220855

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 11:57:55 +0000 (12:57 +0100)]
[multiple changes]

2015-02-20  Gary Dismukes  <dismukes@adacore.com>

* sem_res.adb: Minor reformatting.

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

* switch-c.adb (Scan_Front_End_Switches): When comparing runtime
path name for several switches --RTS, use the normalized path
names.

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

* bindgen.adb: Minor reformatting and code reorganization.

2015-02-20  Jose Ruiz  <ruiz@adacore.com>

* a-stcoed.ads: Add spec for this package (Unimplemented_Unit).
* impunit.adb (Non_Imp_File_Names_12): Mark unit a-stcoed.ads as
defined by Ada 2012.

From-SVN: r220853

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 11:48:57 +0000 (12:48 +0100)]
[multiple changes]

2015-02-20  Arnaud Charlet  <charlet@adacore.com>

* sysdep.c, expect.c, s-oscons-tmplt.c, gsocket.h, adaint.c: Remove
obsolete references to RTX, nucleus, VMS.

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

* sem_prag.adb (Fix_Error): For an illegal Type_Invariant'Class
aspect, use name that mentions Class explicitly, rather than
compiler-internal name.

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

* debug.adb: Add documentation for -gnatd.2 (allow statements
in decl sequences).
* par-ch3.adb (P_Identifier_Declarations): Handle
statement appearing where declaration expected more cleanly.
(Statement_When_Declaration_Expected): Implement debug flag
-gnatd.2.

2015-02-20  Jose Ruiz  <ruiz@adacore.com>

* a-dinopr.ads: Add spec for this package (Unimplemented_Unit).
* a-dispat.ads (Yield): Include procedure added in Ada 2012.
* a-dispat.adb (Yield): Implement procedure added in Ada 2012.
* impunit.adb (Non_Imp_File_Names_05): Mark unit a-dinopr.ads as
defined by Ada 2005.
* snames.ads-tmpl (Name_Non_Preemptive_FIFO_Within_Priorities):
This is the correct name for the dispatching policy (FIFO was
missing).

2015-02-20  Javier Miranda  <miranda@adacore.com>

* sem_res.adb (Resolve_Type_Conversion): If the type of the
operand is the limited-view of a class-wide type then recover
the class-wide type of the non-limited view.

From-SVN: r220852

9 years agoMakefile.in: Remove references to nucleus.
Arnaud Charlet [Fri, 20 Feb 2015 11:40:20 +0000 (11:40 +0000)]
Makefile.in: Remove references to nucleus.

* gcc-interface/Makefile.in: Remove references to nucleus.
* gcc-interface/decl.c (gnat_to_gnu_entity, case E_Procedure): Set
extern_flag to true for Inline_Always subprograms with
Intrinsic convention.

From-SVN: r220851

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 11:38:17 +0000 (12:38 +0100)]
[multiple changes]

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

* sem_prag.ads: Minor typo in comment.

2015-02-20  Pascal Obry  <obry@adacore.com>

* s-osprim-mingw.adb: Fix Get_Base_Time parameter mode.

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

* makeutl.adb (Get_Directories.Add_Dir): Add a directory only
if it exists.

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

* sem_eval.ads: Minor reformatting.

2015-02-20  Eric Botcazou  <ebotcazou@adacore.com>

* freeze.adb (Size_Known): Do not set the packed size for
independent type or component.
(Freeze_Array_Type): Check for Independent[_Components] with packing
or explicit component size clause.
* gnat1drv.adb (Post_Compilation_Validation_Checks): Do the validation
of independence pragmas only for non-GCC back-ends.
* sem_ch13.adb (Initialize): Likewise for the initialization.
* sem_prag.adb (Record_Independence_Check): New procedure to record an
independence check in the table.
(Analyze_Pragma): Use it throughout instead of doing it manually.
* gcc-interface/decl.c (gnat_to_gnu_field): Add support for
independent type or component.

2015-02-20  Thomas Quinot  <quinot@adacore.com>

* adaint.c (__gnat_readdir): For Solaris, use 64 bit variants of
struct direct and readdir. This is required for NFS filesystems
mounted from servers that use 64-bit cookies.

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

* sem_ch12.adb (Analyze_Subprogram_Instantiaion): New subprogram
Build_Subprogram_Renaming, to create renaming of subprogram
instance in the the declaration of the wrapper package rather
than in its body, so that it is available for analysis of aspects
propagated from generic to instantiation.
(Check_Mismatch): An actual for a formal package that is an
incomplete type matches a formal type that is incomplete.
(Instantiate_Package_Body): Move code that builds subprogram
renaming to Analyze_Subprogram_Instantiation.
(Instantiate_Type): The generated subtype is a limited view if
the actual is a limited view.
(Load_Parent_Of_Generic): Retrieve instance declaration from
its new position within wrapper package.

2015-02-20  Arnaud Charlet  <charlet@adacore.com>

* s-parame-vxworks.adb, s-os_lib.ads: Update comments.

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

* s-osinte-vxworks.ads (To_Timespec): Add comment about the
issue of negative arguments.

From-SVN: r220850

9 years agore PR target/64452 (ICE in avr-gcc when passing struct member to varargs function)
Georg-Johann Lay [Fri, 20 Feb 2015 10:30:24 +0000 (10:30 +0000)]
re PR target/64452 (ICE in avr-gcc when passing struct member to varargs function)

gcc/
PR target/64452
* config/avr/avr.md (pushhi_insn): New insn.
(push<mode>1): Push virtual regs in one chunk using pushhi1_insn.
gcc/testsuite/
PR target/64452
* gcc.target/avr/torture/pr64452.c: New test.

From-SVN: r220847

9 years agotree-streamer.c (preload_common_nodes): Don't preload TI_VA_LIST* for offloading.
Bernd Schmidt [Fri, 20 Feb 2015 10:01:17 +0000 (10:01 +0000)]
tree-streamer.c (preload_common_nodes): Don't preload TI_VA_LIST* for offloading.

* tree-streamer.c (preload_common_nodes): Don't preload
TI_VA_LIST* for offloading.
* tree-stdarg.c (pass_stdarg::gate): Disable for ACCEL_COMPILER
in_lto_p.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r220846

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 09:55:51 +0000 (10:55 +0100)]
[multiple changes]

2015-02-20  Eric Botcazou  <ebotcazou@adacore.com>

* gnat1drv.adb: Minor consistency fix.

2015-02-20  Pascal Obry  <obry@adacore.com>

* s-osprim-mingw.adb (Get_Base_Time): Properly release lock in all
paths.

From-SVN: r220845

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 09:53:22 +0000 (10:53 +0100)]
[multiple changes]

2015-02-20  Eric Botcazou  <ebotcazou@adacore.com>

* inline.adb (Expand_Inlined_Call): Skip again calls to subprogram
renamings.
* exp_ch6.adb (Expand_Call): Use back-end inlining
instead of expansion for simple subprogram renamings.

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

* exp_util.adb: Minor reformatting.

From-SVN: r220844

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 09:51:22 +0000 (10:51 +0100)]
[multiple changes]

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

* switch-c.adb (Scan_Front_End_Switches): Do not fail when --RTS=
is specified several times with different values that indicates
the same runtime directory.

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

* sem_attr.adb (Check_Not_Incomplete_Type): Clean up code to
handle properly illegal uses of attributes on prefixes on an
incomplete type, both when the type of the prefix is locally
incomplete, and when it is a limited view of a type whose
non-limited view is not available.
(Analyze_Attribute): Add calls to Check_Not_Incomplete_Type for
'Address and others.

2015-02-20  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch6.adb: Fix minor typo in comment.

From-SVN: r220843

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 09:48:22 +0000 (10:48 +0100)]
[multiple changes]

2015-02-20  Eric Botcazou  <ebotcazou@adacore.com>

* sinfo.ads: Add comment.

2015-02-20  Olivier Hainque  <hainque@adacore.com>

* opt.ads: Replace Opt.Suppress_All_Inlining by two separate
flags controlling the actual FE inlining out of pragma Inline
and pragma Inline_Always.
* adabkend.adb (Scan_Compiler_Arguments): Set both flags to True
on -fno-inline, which disables all inlining in compilers with
an Ada back-end and without back-end inlining support.
* back_end.adb (Scan_Back_End_Switches): Set the Inline related
flag to True on -fno-inline and leave Inline_Always alone for
gcc back-ends.
* back_end.ads (Scan_Compiler_Arguments): Adjust spec wrt the
names of the Opt flags it sets.
* gnat1drv.adb (Adjust_Global_Switches): Remove test on
Opt.Suppress_All_Inlining in the Back_End_Inlining computation.
* sem_prag.adb (Make_Inline): Remove early return conditioned
on Opt.Suppress_All_Inlining.
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Use the flags to
disable the calls to Build_Body_To_Inline otherwise triggered
by pragma Inline or Inline_Always. This will prevent actual
front-end inlining of the subprogram on calls.

From-SVN: r220842

9 years agoexp_ch3.adb (Default_Initialize_Object): Call Add_Inlined_Body on the Abort_Undefer_D...
Eric Botcazou [Fri, 20 Feb 2015 09:45:50 +0000 (09:45 +0000)]
exp_ch3.adb (Default_Initialize_Object): Call Add_Inlined_Body on the Abort_Undefer_Direct function.

2015-02-20  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch3.adb (Default_Initialize_Object): Call Add_Inlined_Body on the
Abort_Undefer_Direct function.
* exp_ch5.adb (Expand_N_Assignment_Statement): Likewise.
* exp_intr.adb (Expand_Unc_Deallocation): Likewise.
* exp_prag.adb (Expand_Pragma_Abort_Defer): Likewise.
* exp_ch4.adb (Expand_N_Selected_Component): Adjust call to
Add_Inlined_Body.
* exp_ch6.adb (Expand_Call): Adjust calls to Add_Inlined_Body.
 Remove call to Register_Backend_Call and move code resetting
Needs_Debug_Info on inlined subprograms to...
* inline.ads (Add_Inlined_Body): Add N parameter.
(Register_Backend_Call): Delete.
* inline.adb (Add_Inlined_Body): ...here and simplify.
 Register the call with Backend_Calls directly.
(Register_Backend_Call): Delete.
* s-stalib.ads (Abort_Undefer_Direct): Restore pragma Inline.

From-SVN: r220841

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 09:43:40 +0000 (10:43 +0100)]
[multiple changes]

2015-02-20  Eric Botcazou  <ebotcazou@adacore.com>

* s-stalib.ads: Fix typo.

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

* exp_ch3.adb (Default_Initialize_Object): If the object has a
delayed freeze, the actions associated with default initialization
must be part of the freeze actions, rather that being inserted
directly after the object declaration.

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

* lib-load.adb: Minor comment update.

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

* prj-proc.adb (Process_Case_Construction): When there are
incomplete withed projects and the case variable is unknown,
skip the case construction.

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

* exp_ch6.adb (Expand_Actuals): Add caller-side invariant checks
when an actual is a view conversion, either because the call is
to an inherited operation, or because the actual is an explicit
type conversion to an ancestor type.  Fixes ACATS 4.0D: C732001

From-SVN: r220840

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 09:42:04 +0000 (10:42 +0100)]
[multiple changes]

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

* einfo.ads: Minor comment updates Fix missing pragma Inline
for Set_Partial_View_Has_Unknown_Discr.
* einfo.adb (Write_Entity_Flags): Add missing entry for
Partial_View_Has_Unknown_Discr.
* sem_ch3.adb: Minor reformatting.

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

* opt.ads: Minor cleanup: remove mention of gprmake.
* s-stalib.ads (Abort_Undefer_Direct): Do not inline.
* s-tataat.adb: Do not call System.Tasking.Self but directly
System.Task_Primitives.Operations.Self.

From-SVN: r220839

9 years agoIf we're building an offloading compiler, always enable the LTO front end.
Thomas Schwinge [Fri, 20 Feb 2015 09:40:52 +0000 (10:40 +0100)]
If we're building an offloading compiler, always enable the LTO front end.

* configure.ac [--enable-as-accelerator-for] (enable_languages):
Make sure it contains lto.
* configure: Regenerate.

From-SVN: r220838

9 years agognat_rm.texi, [...]: Now automatically generated from sphinx in the doc directory.
Arnaud Charlet [Fri, 20 Feb 2015 09:11:44 +0000 (10:11 +0100)]
gnat_rm.texi, [...]: Now automatically generated from sphinx in the doc directory.

2015-02-20  Arnaud Charlet  <charlet@adacore.com>

        * gnat_rm.texi, gnat_ugn.texi: Now automatically generated from
        sphinx in the doc directory.
        * doc: New directory containing sphinx versions of gnat_rm and gnat_ugn

From-SVN: r220837

9 years ago[multiple changes]
Arnaud Charlet [Fri, 20 Feb 2015 09:08:30 +0000 (10:08 +0100)]
[multiple changes]

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

* sem_res.adb: Minor reformatting.
* exp_ch9.adb (Build_Protected_Spec): Copy Aliased setting when
building spec.
* sem_ch13.adb (Analyze_Aspect_Specifications): Exclude Boolean
aspects from circuitry setting delay required to false if the
argument is an integer literal.

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

* einfo.ads. einfo.adb (Partial_View_Has_Unknown_Discr):  New flag
on type entities, to enforce AI12-0133: default initialization
of types whose partial view has unknown discriminants does not
get an invariant check, because clients of the unit can never
declare objects of such types.
* sem_ch3.adb (Find_Type_Name); Set new flag
Partial_View_Has_Unknown_Discr when needed.
* exp_ch3.adb (Expand_N_Object_Declaration): Use flag to suppress
generation of invariant call on default-initialized object.

From-SVN: r220836

9 years agopa.c (pa_emit_move_sequence): Always force (const (plus (symbol) (const_int))) to...
John David Anglin [Fri, 20 Feb 2015 00:33:24 +0000 (00:33 +0000)]
pa.c (pa_emit_move_sequence): Always force (const (plus (symbol) (const_int))) to const mem.

* config/pa/pa.c (pa_emit_move_sequence): Always force
(const (plus (symbol) (const_int))) to const mem.  Put REG_EQUAL
note on insn.

From-SVN: r220833

9 years agoDaily bump.
GCC Administrator [Fri, 20 Feb 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r220832

9 years ago20040204-1.c: Don't XFAIL on sh*-*-*.
Kaz Kojima [Fri, 20 Feb 2015 00:00:21 +0000 (00:00 +0000)]
20040204-1.c: Don't XFAIL on sh*-*-*.

* gcc.dg/tree-ssa/20040204-1.c: Don't XFAIL on sh*-*-*.
* gcc.dg/tree-ssa/sra-12.c: Skip for sh*-*-*.

From-SVN: r220829

9 years agopa.c (pa_reloc_rw_mask): New function.
John David Anglin [Thu, 19 Feb 2015 23:47:58 +0000 (23:47 +0000)]
pa.c (pa_reloc_rw_mask): New function.

* config/pa/pa.c (pa_reloc_rw_mask): New function.
(TARGET_ASM_RELOC_RW_MASK): Define.
(pa_cannot_force_const_mem): Revert previous change.

From-SVN: r220827

9 years agore PR ipa/65028 (450.soplex in SPEC CPU 2006 is miscompiled)
Martin Jambor [Thu, 19 Feb 2015 23:31:40 +0000 (23:31 +0000)]
re PR ipa/65028 (450.soplex in SPEC CPU 2006 is miscompiled)

PR ipa/65028
* ipa-cp.c (propagate_alignment_accross_jump_function): Fix propagation
across jump functions.

Co-Authored-By: Jan Hubicka <hubicka@ucw.cz>
From-SVN: r220826

9 years agoalpha.c (alpha_in_small_data_p): Reject common symbols.
Uros Bizjak [Thu, 19 Feb 2015 21:25:52 +0000 (22:25 +0100)]
alpha.c (alpha_in_small_data_p): Reject common symbols.

* config/alpha/alpha.c (alpha_in_small_data_p): Reject common symbols.

From-SVN: r220825

9 years agore PR libstdc++/58357 (In C++11 std::rotate(first, middle, last) now should return...
Jonathan Wakely [Thu, 19 Feb 2015 20:57:40 +0000 (20:57 +0000)]
re PR libstdc++/58357 (In C++11 std::rotate(first, middle, last) now should return a forward iterator to  first + (last - middle).)

PR libstdc++/58357
* include/bits/algorithmfwd.h (rotate): Move to inline namespace _V2.
* include/bits/stl_algo.h (__rotate, rotate): Likewise.

From-SVN: r220823

9 years agore PR testsuite/65116 (ERROR: can't read additional_sources: no such variable)
Maxim Kuvyrkov [Thu, 19 Feb 2015 19:57:30 +0000 (19:57 +0000)]
re PR testsuite/65116 (ERROR: can't read additional_sources: no such variable)

Fix PR testsuite/65116

PR testsuite/65116
* lib/target-supports.exp (check_compile): Check whether
additional_sources is defined before using it.

From-SVN: r220822

9 years agore PR testsuite/65093 (26_numerics/random/binomial_distribution/operators/values...
Hans-Peter Nilsson [Thu, 19 Feb 2015 19:30:03 +0000 (19:30 +0000)]
re PR testsuite/65093 (26_numerics/random/binomial_distribution/operators/values.cc times out on slow targets)

PR testsuite/65093
* testsuite/26_numerics/random/binomial_distribution/operators/values.cc
(test01): Add explanatory comment.  Keep only the bd1 sub-test and
split out bd2, bd3, bd4, and bd5 sub-tests into...
* testsuite/26_numerics/random/binomial_distribution/operators/values2.cc,
testsuite/26_numerics/random/binomial_distribution/operators/values3.cc,
testsuite/26_numerics/random/binomial_distribution/operators/values4.cc,
testsuite/26_numerics/random/binomial_distribution/operators/values5.cc:
New separate files with the old parts.

From-SVN: r220821

9 years agoextend.texi (x86 transactional memory intrinsics): Copy-edit.
Sandra Loosemore [Thu, 19 Feb 2015 16:04:53 +0000 (11:04 -0500)]
extend.texi (x86 transactional memory intrinsics): Copy-edit.

2015-02-19  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/extend.texi (x86 transactional memory intrinsics):
Copy-edit.

From-SVN: r220819

9 years agore PR middle-end/65074 (r220674 broke C++ PIEs)
Jakub Jelinek [Thu, 19 Feb 2015 15:48:50 +0000 (16:48 +0100)]
re PR middle-end/65074 (r220674 broke C++ PIEs)

PR middle-end/65074

 * g++.dg/opt/pr65074.C: New file.

From-SVN: r220817

9 years agore PR middle-end/65074 (r220674 broke C++ PIEs)
Richard Henderson [Thu, 19 Feb 2015 15:14:24 +0000 (07:14 -0800)]
re PR middle-end/65074 (r220674 broke C++ PIEs)

PR middle-end/65074

 * varasm.c (default_binds_local_p_2): Don't test node->definition;
 test DECL_EXTERNAL independent of symtab_node.

From-SVN: r220816

9 years ago* g++.dg/cpp1y/udlit-char-template-vs-std-literal-operator.C
Andrea Azzarone [Thu, 19 Feb 2015 13:45:25 +0000 (13:45 +0000)]
* g++.dg/cpp1y/udlit-char-template-vs-std-literal-operator.C
(size_type): New typedef.
(operator "" _script): Use it for the last argument.

From-SVN: r220814

9 years agofloatformat.h: Wrap in extern "C"
Pedro Alves [Thu, 19 Feb 2015 12:18:45 +0000 (12:18 +0000)]
floatformat.h: Wrap in extern "C"

Just like libiberty.h.  So that C++ programs, such as GDB when built
as a C++ program, can use it.

include/ChangeLog:
2015-02-19  Pedro Alves  <palves@redhat.com>

* floatformat.h [__cplusplus]: Wrap in extern "C".

From-SVN: r220812

9 years agoFix date in ChangeLog: 2015-12-14 -> 2014-12-14
Pedro Alves [Thu, 19 Feb 2015 12:15:42 +0000 (12:15 +0000)]
Fix date in ChangeLog: 2015-12-14 -> 2014-12-14

From-SVN: r220811

9 years agore PR lto/65012 (systemd fails to build at least on ppc64el, powerpc, arm-inux-gnueab...
Jakub Jelinek [Thu, 19 Feb 2015 11:56:00 +0000 (12:56 +0100)]
re PR lto/65012 (systemd fails to build at least on ppc64el, powerpc, arm-inux-gnueabihf and aarch64 with -flto (ICE))

PR lto/65012
* varpool.c (varpool_node::get_constructor): Return early
if this->lto_file_data is NULL.

From-SVN: r220810

9 years agore PR debug/64935 (compare debug failure during building of Linux kernel)
Maxim Kuvyrkov [Thu, 19 Feb 2015 08:31:14 +0000 (08:31 +0000)]
re PR debug/64935 (compare debug failure during building of Linux kernel)

Fix PR64935

* haifa-sched.c (enum rfs_decision, rfs_str): Remove RFS_DEBUG.
(rank_for_schedule_debug): Update.
(ready_sort): Make static.  Move sorting logic to ...
(ready_sort_debug, ready_sort_real): New static functions.
(schedule_block): Sort both debug insns and real insns in preparation
for ready list trimming.  Improve debug output.
* sched-int.h (ready_sort): Remove global declaration.

* gcc.dg/pr64935-1.c, gcc.dg/pr64935-2.c: New tests.

From-SVN: r220808

9 years agoFix testsuite race on additional_sources
Maxim Kuvyrkov [Thu, 19 Feb 2015 08:25:30 +0000 (08:25 +0000)]
Fix testsuite race on additional_sources

* testsuite/lib/target-supports.exp (check_compile): Save/restore
additional_sources that may belong to an actual test.

From-SVN: r220807

9 years agosem_function::bb_dict_test should take a vec<int> *
Trevor Saunders [Thu, 19 Feb 2015 01:44:42 +0000 (01:44 +0000)]
sem_function::bb_dict_test should take a vec<int> *

bb_dict_test () ment to operate on the callers vector, not a copy of it.

gcc/ChangeLog:

2015-02-18  Trevor Saunders  <tsaunders@mozilla.com>

* ipa-icf.c (sem_function::equals_private): Adjust.
(sem_function::bb_dict_test): Take a vec<int> * instead of
auto_vec<int>.
* ipa-icf.h (bb_dict_test): Likewise.

From-SVN: r220806

9 years agoDaily bump.
GCC Administrator [Thu, 19 Feb 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r220804

9 years agore PR gcov-profile/64634 (gcov reports catch(...) as not executed)
Jakub Jelinek [Wed, 18 Feb 2015 22:02:43 +0000 (23:02 +0100)]
re PR gcov-profile/64634 (gcov reports catch(...) as not executed)

PR gcov-profile/64634
* tree-eh.c (frob_into_branch_around): Fix up typos
in function comment.
(lower_catch): Put eh_seq resulting from EH lowering of
the cleanup sequence after the cleanup rather than before
it.

* g++.dg/gcov/gcov-15.C: New test.

From-SVN: r220801

9 years agoAdd fstdarg-opt
Tom de Vries [Wed, 18 Feb 2015 21:16:20 +0000 (21:16 +0000)]
Add fstdarg-opt

2015-02-18  Tom de Vries  <tom@codesourcery.com>

* common.opt (fstdarg-opt): New option.
* tree-stdarg.c (pass_stdarg::gate): Use flag_stdarg_opt.
* doc/invoke.texi (@item Optimization Options): Add -fstdarg-opt.
(@item -fstdarg-opt): New item.

From-SVN: r220800

9 years agoAdd missing cleanup in gfortran.dg/coarray_35a.f90
Tom de Vries [Wed, 18 Feb 2015 21:08:24 +0000 (21:08 +0000)]
Add missing cleanup in gfortran.dg/coarray_35a.f90

2015-02-18  Tom de Vries  <tom@codesourcery.com>

* gfortran.dg/coarray_35a.f90: Add missing cleanup-modules.

From-SVN: r220799

9 years agoAdd missing cleanup in gfortran.dg/pr37287-1.f90
Tom de Vries [Wed, 18 Feb 2015 21:00:19 +0000 (21:00 +0000)]
Add missing cleanup in gfortran.dg/pr37287-1.f90

2015-02-18  Tom de Vries  <tom@codesourcery.com>

* gfortran.dg/pr37287-1.f90: Add missing cleanup-modules.

From-SVN: r220798

9 years agoAdd missing cleanup in gfortran.dg/finalize_28.f90
Tom de Vries [Wed, 18 Feb 2015 20:40:24 +0000 (20:40 +0000)]
Add missing cleanup in gfortran.dg/finalize_28.f90

2015-02-18  Tom de Vries  <tom@codesourcery.com>

* gfortran.dg/finalize_28.f90: Add missing cleanup-tree-dump.

From-SVN: r220797

9 years agoAdd missing cleanup in gfortran.dg/fmt_cache_1.f
Tom de Vries [Wed, 18 Feb 2015 20:30:12 +0000 (20:30 +0000)]
Add missing cleanup in gfortran.dg/fmt_cache_1.f

2015-02-18  Tom de Vries  <tom@codesourcery.com>

* gfortran.dg/fmt_cache_1.f: Add missing close.

From-SVN: r220796

9 years agochar16_t.cc: Add dg-require-cstdint.
Jonathan Wakely [Wed, 18 Feb 2015 20:21:04 +0000 (20:21 +0000)]
char16_t.cc: Add dg-require-cstdint.

* testsuite/22_locale/codecvt/char16_t.cc: Add dg-require-cstdint.
* testsuite/22_locale/codecvt/char32_t.cc: Likewise.

From-SVN: r220795

9 years agoAdd missing cleanup in gfortran.dg/read_eof_8.f90
Tom de Vries [Wed, 18 Feb 2015 20:07:48 +0000 (20:07 +0000)]
Add missing cleanup in gfortran.dg/read_eof_8.f90

2015-02-18  Tom de Vries  <tom@codesourcery.com>

PR testsuite/65107
* gfortran.dg/read_eof_8.f90: Add missing close.

From-SVN: r220794

9 years agocodecvt.cc (write_utf16_code_point): Fix code to output surrogate pairs.
Jonathan Wakely [Wed, 18 Feb 2015 19:39:03 +0000 (19:39 +0000)]
codecvt.cc (write_utf16_code_point): Fix code to output surrogate pairs.

* src/c++11/codecvt.cc (write_utf16_code_point): Fix code to output
surrogate pairs.
(utf16_in): Pass mode argument to write_utf16_code_point.
(codecvt<char16_t, char, mbstate_t>::do_in): Set mode according to
native byte order.
* testsuite/22_locale/codecvt/char16_t.cc: New.
* testsuite/22_locale/codecvt/in/wchar_t/1.cc: Fix typo.

From-SVN: r220793

9 years agoReturn false for common symbols in sdata_symbolic_operand
H.J. Lu [Wed, 18 Feb 2015 17:24:20 +0000 (17:24 +0000)]
Return false for common symbols in sdata_symbolic_operand

Although common symbols are defined in executables, they aren't in small
data section.  But a definition in small data section overrides a common
symbol, which still binds lcoally, and turns a reference to common symbol
to reference to small data section.  Even if ia64_in_small_data_p returns
true on common symbols, sdata_symbolic_operand must return false on common
symbols.  Common symbols are assumed to be placed in small data section,
but are accessed as if they are in normal data section so that they won't
cause any relocation overflow.

PR target/65064
* config/ia64/predicates.md (sdata_symbolic_operand): Return false
for common symbols.

From-SVN: r220792

9 years agot-intelmic (mkoffload.o): Remove dependency on insn-modes.h.
Jakub Jelinek [Wed, 18 Feb 2015 16:38:29 +0000 (17:38 +0100)]
t-intelmic (mkoffload.o): Remove dependency on insn-modes.h.

* config/i386/t-intelmic (mkoffload.o): Remove dependency on
insn-modes.h.
(ALL_HOST_OBJS): Add mkoffload.o.
* config/nvptx/t-nvptx (ALL_HOST_OBJS): Likewise.

From-SVN: r220791

9 years agoipa-devirt.c (odr_subtypes_equivalent_p): Fix formating.
Jan Hubicka [Wed, 18 Feb 2015 16:12:52 +0000 (17:12 +0100)]
ipa-devirt.c (odr_subtypes_equivalent_p): Fix formating.

* ipa-devirt.c (odr_subtypes_equivalent_p): Fix formating.
(compare_virtual_tables): Be smarter about skipping typeinfos;
do sane output on virtual table table mismatch.
(warn_odr): Be ready for forward declarations of enums;
output sane info on base mismatch and virtual table mismatch.
(add_type_duplicate): Fix code choosing prevailing type; do not ICE
when only one type is polymorphic.
(get_odr_type): Fix hashtable corruption.
(dump_odr_type): Dump mangled names.

From-SVN: r220790

9 years agotarget.c (gomp_load_plugin_for_device): Use const char * instead of char * for variab...
Ilya Tocar [Wed, 18 Feb 2015 13:33:43 +0000 (13:33 +0000)]
target.c (gomp_load_plugin_for_device): Use const char * instead of char * for variables holding dlerror return values.

libgomp/

* target.c (gomp_load_plugin_for_device): Use const char * instead of
char * for variables holding dlerror return values.
(DLSYM_OPT): Ditto.

From-SVN: r220789

9 years agore PR tree-optimization/65063 (gcc.dg/vect/vect-double-reduc-6.c FAILs with -O3 ...
Richard Biener [Wed, 18 Feb 2015 13:08:58 +0000 (13:08 +0000)]
re PR tree-optimization/65063 (gcc.dg/vect/vect-double-reduc-6.c FAILs with -O3 -fno-tree-loop-ivcanon -fno-tree-vectorize)

2015-02-18  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65063
* tree-predcom.c (determine_unroll_factor): Return 1 if we
have replaced looparound PHIs.

* gcc.dg/pr65063.c: New testcase.

From-SVN: r220788

9 years agoAdd checking macro within lto_streamer_init.
Martin Liska [Wed, 18 Feb 2015 12:12:50 +0000 (13:12 +0100)]
Add checking macro within lto_streamer_init.

* lto-streamer.c (lto_streamer_init): Encapsulate
streamer_check_handled_ts_structures with checking macro.

From-SVN: r220787

9 years agore PR ipa/65087 (r220742 causes: ICE: in ipcp_verify_propagated_values, at ipa-cp...
Jakub Jelinek [Wed, 18 Feb 2015 11:37:02 +0000 (12:37 +0100)]
re PR ipa/65087 (r220742 causes: ICE: in ipcp_verify_propagated_values, at ipa-cp.c:1057)

PR ipa/65087
* cgraphclones.c (cgraph_node::create_virtual_clone): Only copy
section if !implicit_section.
(cgraph_node::create_version_clone_with_body): Likewise.
* trans-mem.c (ipa_tm_create_version): Likewise.

From-SVN: r220786

9 years agore PR tree-optimization/62217 (DOM confuses complete unrolling which in turn causes...
Richard Biener [Wed, 18 Feb 2015 09:48:57 +0000 (09:48 +0000)]
re PR tree-optimization/62217 (DOM confuses complete unrolling which in turn causes VRP to warn)

2015-02-18  Richard Biener  <rguenther@suse.de>

PR tree-optimization/62217
* tree-ssa-dom.c (cprop_operand): Avoid propagating copies
into BIVs.

* gcc.dg/tree-ssa/cunroll-11.c: New testcase.

From-SVN: r220785

9 years agore PR sanitizer/65081 (-fsanitize=object-size fails with simple pointer arithm)
Marek Polacek [Wed, 18 Feb 2015 09:46:59 +0000 (09:46 +0000)]
re PR sanitizer/65081 (-fsanitize=object-size fails with simple pointer arithm)

PR sanitizer/65081
* ubsan.c (OBJSZ_MAX_OFFSET): Define.
(ubsan_expand_objsize_ifn): Don't emit run-time check if the offset
is in range [-16K, -1].  Don't issue run-time error if
(ptr > ptr + offset).

* c-c++-common/ubsan/pr65081.c: New test.

From-SVN: r220784

9 years agoBegin documenting the nvptx backend.
Thomas Schwinge [Wed, 18 Feb 2015 08:31:18 +0000 (09:31 +0100)]
Begin documenting the nvptx backend.

gcc/
* doc/install.texi (nvptx-*-none): New section.
* doc/invoke.texi (Nvidia PTX Options): Likewise.
* config/nvptx/nvptx.opt: Update.

From-SVN: r220783

9 years agonvptx mkoffload: For non-installed testing, look in all COMPILER_PATHs for GCC_INSTAL...
Thomas Schwinge [Wed, 18 Feb 2015 08:17:32 +0000 (09:17 +0100)]
nvptx mkoffload: For non-installed testing, look in all COMPILER_PATHs for GCC_INSTALL_NAME.

gcc/
* config/nvptx/mkoffload.c (parse_env_var, free_array_of_ptrs)
(access_check): New functions, copied from
config/i386/intelmic-mkoffload.c.
(main): For non-installed testing, look in all COMPILER_PATHs for
GCC_INSTALL_NAME.

From-SVN: r220782

9 years agonvptx-none: Disable the lto-plugin.
Thomas Schwinge [Wed, 18 Feb 2015 08:01:03 +0000 (09:01 +0100)]
nvptx-none: Disable the lto-plugin.

config/
* elf.m4 (ACX_ELF_TARGET_IFELSE): nvptx-*-none isn't ELF.
/
* configure: Regenerate.

From-SVN: r220781

9 years agonvptx-none: Define empty GOMP_SELF_SPECS.
Thomas Schwinge [Wed, 18 Feb 2015 07:45:42 +0000 (08:45 +0100)]
nvptx-none: Define empty GOMP_SELF_SPECS.

Otherwise, offloading with -fopenacc or -fopenmp active will run into:

    x86_64-unknown-linux-gnu-accel-nvptx-none-gcc: error: unrecognized command line option '-pthread'

gcc/
* config/nvptx/nvptx.h (GOMP_SELF_SPECS): Define macro.

From-SVN: r220780

9 years agoaarch64.c (*aarch64_load_symref_appropriately): Check whether the destination of...
Andrew Pinski [Wed, 18 Feb 2015 04:40:10 +0000 (04:40 +0000)]
aarch64.c (*aarch64_load_symref_appropriately): Check whether the destination of SYMBOL_SMALL_TPREL is Pmode.

* config/aarch64/aarch64.c (*aarch64_load_symref_appropriately):
Check whether the destination of SYMBOL_SMALL_TPREL is Pmode.

Co-Authored-By: Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
From-SVN: r220779

9 years agoDaily bump.
GCC Administrator [Wed, 18 Feb 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r220778

9 years agoipa-visibility.c (function_and_variable_visibility): Only check locality if node...
Jan Hubicka [Tue, 17 Feb 2015 21:57:53 +0000 (22:57 +0100)]
ipa-visibility.c (function_and_variable_visibility): Only check locality if node is not already local.

* ipa-visibility.c (function_and_variable_visibility): Only
check locality if node is not already local.
* ipa-inline.c (want_inline_function_to_all_callers_p): Use
call_for_symbol_and_aliases instead of
call_for_symbol_thunks_and_aliases.
(ipa_inline): Likewise.
* cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases):
first walk aliases.
* ipa.c (symbol_table::remove_unreachable_nodes): Use
call_for_symbol_and_aliases.
* ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol.
(ipa_propagate_frequency_1): Use it; use opt_for_fn
(ipa_propagate_frequency): Update.
(ipa_profile): Add opt_for_fn gueards.

From-SVN: r220775

9 years agosh.opt (mcbranch-force-delay-slot): New option.
Oleg Endo [Tue, 17 Feb 2015 21:38:12 +0000 (21:38 +0000)]
sh.opt (mcbranch-force-delay-slot): New option.

gcc/
* config/sh/sh.opt (mcbranch-force-delay-slot): New option.
* doc/invoke.texi (SH options): Document it.
* config/sh/sh.c (sh_insn_length_adjustment): Check
TARGET_CBRANCH_FORCE_DELAY_SLOT instead of sh_cpu_attr == CPU_SH2E.

gcc/testsuite/
* gcc.target/sh/sh.exp (check_effective_target_sh1): New.
* gcc.target/sh/force-cbranch-delay-slot.c: New.

From-SVN: r220774

9 years agoAdd -fipa-cp-alignment
H.J. Lu [Tue, 17 Feb 2015 21:25:56 +0000 (21:25 +0000)]
Add -fipa-cp-alignment

This patch adds -fipa-cp-alignment to provide a way to enable/disable
alignment discovery and propagation in IPA-CP.

gcc/

* common.opt (fipa-cp-alignment): New.
* ipa-cp.c (ipcp_store_alignment_results): Check
flag_ipa_cp_alignment.
* opts.c (default_options_table): Enable -fipa-cp-alignment for
-O2.
(enable_fdo_optimizations): Set x_flag_ipa_cp_alignment.
* doc/invoke.texi: Document -fipa-cp-alignment.

gcc/testsuite/

* gcc.dg/ipa/propalign-3.c: New test.

From-SVN: r220773

9 years agore PR target/64793 ([SH] missed delay slot)
Oleg Endo [Tue, 17 Feb 2015 21:08:24 +0000 (21:08 +0000)]
re PR target/64793 ([SH] missed delay slot)

gcc/
PR target/64793
* config/sh/sh.md (cbranch define_delay): Set annulled true branch insn
to nil.  Adjust comments.

gcc/testsuite/
PR target/64793
* gcc.target/sh/pr64793.c: New.
* gcc.target/sh/pr51244-20-sh2a.c: Adjust expected cmp/gt insn count.

From-SVN: r220772

9 years agoipa-visibility.c (function_and_variable_visibility): Only check locality if node...
Jan Hubicka [Tue, 17 Feb 2015 20:58:43 +0000 (21:58 +0100)]
ipa-visibility.c (function_and_variable_visibility): Only check locality if node is not already local.

* ipa-visibility.c (function_and_variable_visibility): Only
check locality if node is not already local.
* ipa-inline.c (want_inline_function_to_all_callers_p): Use
call_for_symbol_and_aliases instead of
call_for_symbol_thunks_and_aliases.
(ipa_inline): Likewise.
* cgraph.c (cgraph_node::call_for_symbol_thunks_and_aliases):
first walk aliases.
* ipa.c (symbol_table::remove_unreachable_nodes): Use
call_for_symbol_and_aliases.
* ipa-profile.c (ipa_propagate_frequency_data): Add function_symbol.
(ipa_propagate_frequency_1): Use it; use opt_for_fn
(ipa_propagate_frequency): Update.
(ipa_profile): Add opt_for_fn guards.

From-SVN: r220771

9 years agolibgomp: Make GOMP_PLUGIN_debug actually work...
Thomas Schwinge [Tue, 17 Feb 2015 18:24:07 +0000 (19:24 +0100)]
libgomp: Make GOMP_PLUGIN_debug actually work...

libgomp/
* libgomp-plugin.c (GOMP_PLUGIN_debug): Fix typo.

From-SVN: r220770

9 years agonvptx mkoffload: Fix logic error in skipping of "strange" tokens.
Thomas Schwinge [Tue, 17 Feb 2015 18:13:32 +0000 (19:13 +0100)]
nvptx mkoffload: Fix logic error in skipping of "strange" tokens.

gcc/
* config/nvptx/mkoffload.c (parse_file): Fix logic error in
skipping of "strange" tokens.

From-SVN: r220769

9 years agolibgomp: Make nvptx helper routines self-contained.
Thomas Schwinge [Tue, 17 Feb 2015 18:05:24 +0000 (19:05 +0100)]
libgomp: Make nvptx helper routines self-contained.

libgomp/
* oacc-ptx.h (GOACC_INTERNAL_PTX): Add GOACC_tid, GOACC_ntid,
GOACC_ctaid, and GOACC_nctaid routines.

Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>
From-SVN: r220768

9 years agobpabi.S (test_div_by_zero): Make label names consistent between thumb2 and arm mode...
Sandra Loosemore [Tue, 17 Feb 2015 17:39:22 +0000 (12:39 -0500)]
bpabi.S (test_div_by_zero): Make label names consistent between thumb2 and arm mode cases.

2015-02-17  Sandra Loosemore  <sandra@codesourcery.com>

libgcc/
* config/arm/bpabi.S (test_div_by_zero): Make label names
consistent between thumb2 and arm mode cases.  Separate the
signed comparison on the high word of the numerator from the
unsigned comparison on the low word.
* config/arm/bpabi-v6m.S (test_div_by_zero): Similarly separate
signed comparison.

gcc/testsuite/
* gcc.target/arm/divzero.c: New test case.

From-SVN: r220765

9 years agoAvoid dependence on libc headers in nvptx realloc.
Joseph Myers [Tue, 17 Feb 2015 16:19:56 +0000 (16:19 +0000)]
Avoid dependence on libc headers in nvptx realloc.

* config/nvptx/realloc.c: Include <stddef.h> instead of <stdlib.h>
and <string.h>.
(__nvptx_realloc): Call __builtin_memcpy instead of memcpy.

From-SVN: r220764

9 years agotree-vrp.c (identify_jump_threads): Use last_stmt.
Jeff Law [Tue, 17 Feb 2015 15:32:05 +0000 (08:32 -0700)]
tree-vrp.c (identify_jump_threads): Use last_stmt.

        * tree-vrp.c (identify_jump_threads): Use last_stmt.  Remove
        obsolete comment.

From-SVN: r220763

9 years agoChange stdlib.h base, not inttypes.h
Daniel Richard G. [Tue, 17 Feb 2015 14:45:48 +0000 (14:45 +0000)]
Change stdlib.h base, not inttypes.h

From-SVN: r220761

9 years agochar32_t.cc: New.
Rüdiger Sonderfeld [Tue, 17 Feb 2015 14:25:48 +0000 (14:25 +0000)]
char32_t.cc: New.

2015-02-17  Rüdiger Sonderfeld  <ruediger@c-plusplus.de>
    Jonathan Wakely  <jwakely@redhat.com>

* testsuite/22_locale/codecvt/char32_t.cc: New.

Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>
From-SVN: r220760

9 years agoCorrect ChangeLog entry (2015-02-04)
Alan Lawrence [Tue, 17 Feb 2015 14:08:59 +0000 (14:08 +0000)]
Correct ChangeLog entry (2015-02-04)

From-SVN: r220759

9 years agore PR libstdc++/65085 (Move-assigned empty string corrupt with -D_GLIBCXX_USE_CXX11_A...
Jonathan Wakely [Tue, 17 Feb 2015 12:44:26 +0000 (12:44 +0000)]
re PR libstdc++/65085 (Move-assigned empty string corrupt with -D_GLIBCXX_USE_CXX11_ABI=1)

PR libstdc++/65085
* include/bits/basic_string.h (basic_string(basic_string&&)): Ensure
empty string gets null-terminated.
* testsuite/21_strings/basic_string/cons/char/65085.cc: New.

From-SVN: r220758

9 years agoAdd gcc.target/x86_64/abi/callabi/vaarg-6.c
Tom de Vries [Tue, 17 Feb 2015 11:42:26 +0000 (11:42 +0000)]
Add gcc.target/x86_64/abi/callabi/vaarg-6.c

2015-02-17  Tom de Vries  <tom@codesourcery.com>

* gcc.target/x86_64/abi/callabi/vaarg-6.c: New test.

From-SVN: r220757

9 years ago[Haifa Scheduler] Fix latent bug in macro-fusion/instruction grouping
James Greenhalgh [Tue, 17 Feb 2015 09:19:33 +0000 (09:19 +0000)]
[Haifa Scheduler] Fix latent bug in macro-fusion/instruction grouping

gcc/

* haifa-sched.c (recompute_todo_spec): Treat SCHED_GROUP_P
as forcing a HARD_DEP between instructions, thereby
disallowing rewriting to break dependencies.

From-SVN: r220751

9 years agosymtab.c (symtab_node::verify_base): Verify body_removed->!definiton
Jan Hubicka [Tue, 17 Feb 2015 08:58:37 +0000 (09:58 +0100)]
symtab.c (symtab_node::verify_base): Verify body_removed->!definiton

* symtab.c (symtab_node::verify_base): Verify body_removed->!definiton
* lto-cgraph.c (lto_output_varpool_node): Do not keep definition of
variables in boundary that have no inlitalizer encoded and are
not aliases.
* varasm.c (default_binds_local_p_2): External definitions do not
count as definitions here.

From-SVN: r220749

9 years agore PR c++/65075 (constexpr regression)
Paolo Carlini [Tue, 17 Feb 2015 08:25:30 +0000 (08:25 +0000)]
re PR c++/65075 (constexpr regression)

PR c++/65075
* constexpr.c (check_constexpr_bind_expr_vars): Allow
implicit typedefs for lambda types.

* g++.dg/cpp0x/pr65075.C: New test.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r220748

9 years agoDaily bump.
GCC Administrator [Tue, 17 Feb 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r220747

9 years agore PR target/65058 (AIX: missing extern decorations "[DS]" for functions and "[UA...
David Edelsohn [Mon, 16 Feb 2015 23:03:33 +0000 (23:03 +0000)]
re PR target/65058 (AIX: missing extern decorations "[DS]" for functions and "[UA]" for variables)

        PR target/65058
        * gcc.target/powerpc/pr65058.c: New test.

From-SVN: r220744

9 years agore PR tree-optimization/64823 (false "may be used uninitialized", missed jump threading)
Jeff Law [Mon, 16 Feb 2015 20:56:55 +0000 (13:56 -0700)]
re PR tree-optimization/64823 (false "may be used uninitialized", missed jump threading)

PR tree-optimization/64823
* tree-vrp.c (identify_jump_threads): Handle blocks with no real
statements.
* tree-ssa-threadedge.c (potentially_threadable_block): Allow
threading through blocks with PHIs, but no statements.
(thread_through_normal_block): Distinguish between blocks where
we did not process all the statements and blocks with no statements.

PR tree-optimization/64823
* gcc.dg/uninit-20.c: New test.

From-SVN: r220743

9 years agore PR ipa/64963 (IPA Cloning/Splitting does not copy function section attributes...
Jakub Jelinek [Mon, 16 Feb 2015 19:22:57 +0000 (20:22 +0100)]
re PR ipa/64963 (IPA Cloning/Splitting does not copy function section attributes resulting in kernel miscompilation)

PR ipa/64963
* cgraphclones.c (cgraph_node::create_virtual_clone): Copy
section if not linkonce.  Fix up formatting.
(cgraph_node::create_version_clone_with_body): Copy section.
* trans-mem.c (ipa_tm_create_version): Likewise.

* gcc.dg/ipa/ipa-clone-1.c: New test.

Co-Authored-By: James Greenhalgh <james.greenhalgh@arm.com>
From-SVN: r220742

9 years agore PR tree-optimization/65077 (memcpy generates incorrect code with floating point...
Richard Biener [Mon, 16 Feb 2015 18:15:19 +0000 (18:15 +0000)]
re PR tree-optimization/65077 (memcpy generates incorrect code with floating point numbers and -O1)

2015-02-16  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65077
* tree-ssa-structalias.c (get_constraint_for_1): Handle
IMAGPART_EXPR, REALPART_EXPR and BIT_FIELD_REF.
(find_func_aliases): Allow float values to carry pointers again.

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

From-SVN: r220741