platform/upstream/linaro-gcc.git
9 years ago2015-05-22 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 12:51:36 +0000 (12:51 +0000)]
2015-05-22  Robert Dewar  <dewar@adacore.com>

* exp_ch4.adb (Expand_N_Op_Eq): Introduce 'Machine for 'Result
comparison.

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

9 years ago[ARM] Handle UNSPEC_VOLATILE in rtx costs and don't recurse inside the unspec
ktkachov [Fri, 22 May 2015 12:51:34 +0000 (12:51 +0000)]
[ARM] Handle UNSPEC_VOLATILE in rtx costs and don't recurse inside the unspec

* config/arm/arm.c (arm_new_rtx_costs): Handle UNSPEC_VOLATILE.
(arm_unspec_cost): Allow UNSPEC_VOLATILE.  Do not recurse inside
unknown unspecs.

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

9 years ago2015-05-22 Eric Botcazou <ebotcazou@adacore.com>
charlet [Fri, 22 May 2015 12:50:35 +0000 (12:50 +0000)]
2015-05-22  Eric Botcazou  <ebotcazou@adacore.com>

* sprint.adb (Source_Dump): When generating debug files, deal
with the case of a stand-alone package instantiation by dumping
together the spec and the body in the common debug file.

2015-05-22  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb (Minimum_Size): Size is zero for null range
discrete subtype.

2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

* einfo.adb (Anonymous_Master): This attribute now applies
to package and subprogram bodies.
(Set_Anonymous_Master): This attribute now applies to package and
subprogram bodies.
(Write_Field36_Name): Add output for package and subprogram bodies.
* einfo.ads Update the documentation on attribute Anonymous_Master
along with occurrences in entities.
* exp_ch4.adb (Create_Anonymous_Master): Reimplemented to
handle spec and body anonymous masters of the same unit.
(Current_Anonymous_Master): Reimplemented. Handle a
package instantiation that acts as a compilation unit.
(Insert_And_Analyze): Reimplemented.

2015-05-22  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Analyze_With_Clause): A limited_with_clause on a
predefined unit is treated as a regular with_clause.

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

9 years agoMinor reformatting.
charlet [Fri, 22 May 2015 12:46:00 +0000 (12:46 +0000)]
Minor reformatting.

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

9 years ago2015-05-22 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 12:45:14 +0000 (12:45 +0000)]
2015-05-22  Robert Dewar  <dewar@adacore.com>

* sem_ch12.adb, prj.ads, makeutl.ads, sem_ch6.adb, prj-nmsc.adb,
prj-conf.adb, sem_disp.adb: Minor reformatting.

2015-05-22  Vincent Celier  <celier@adacore.com>

* clean.adb (Parse_Cmd_Line): For native gnatclean, check
for switch -P and, if found and gprclean is available, invoke
silently gprclean.
* make.adb (Initialize): For native gnatmake, check for switch -P
and, if found and gprbuild is available, invoke silently gprbuild.

2015-05-22  Eric Botcazou  <ebotcazou@adacore.com>

* sem_ch13.adb (Validate_Unchecked_Conversions): Also issue
specific warning for discrete types when the source is larger
than the target.

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

9 years ago2015-05-22 Ed Schonberg <schonberg@adacore.com>
charlet [Fri, 22 May 2015 12:42:05 +0000 (12:42 +0000)]
2015-05-22  Ed Schonberg  <schonberg@adacore.com>

* einfo.ads, einfo.adb (Incomplete_Actuals): New attribute of
package instantiations. Holds the list of actuals in the instance
that are incomplete types, to determine where the corresponding
instance body must be placed.
* sem_ch6.adb (Conforming_Types): An incomplete type used as an
actual in an instance matches an incomplete formal.
* sem_disp.adb (Check_Dispatching_Call): Handle missing case of
explicit dereference.
(Inherited_Subprograms): In the presence of a limited view there
are no subprograms to inherit.
* sem_ch12.adb (Preanalyze_Actuals): Build list of incomplete
actuals of instance, for later placement of instance body and
freeze nodes for actuals.
(Install_Body): In the presence of actuals that incomplete types
from a limited view, the instance body cannot be placed after
the declaration because full views have not been seen yet. Any
use of the non-limited views in the instance body requires
the presence of a regular with_clause in the enclosing unit,
and will fail if this with_clause is missing.  We place the
instance body at the beginning of the enclosing body, which is
the unit being compiled, and ensure that freeze nodes for the
full views of the incomplete types appear before the instance.

2015-05-22  Pascal Obry  <obry@adacore.com>

* makeutl.ads, prj-conf.adb, prj-nmsc.adb, prj.ads
(In_Place_Option): Removed.
(Relocate_Build_Tree_Option): New constant.
(Root_Dir_Option): New constant.
(Obj_Root_Dir): Removed.
(Build_Tree_Dir): New variable.
(Root_Src_Tree): Removed.
(Root_Dir): New variable.
* prj-conf.adb (Get_Or_Create_Configuration_File): Add check
for improper relocation.
* prj-nmsc.adb (Locate_Directory): Add check for improper
relocation.

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

9 years ago2015-05-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 May 2015 12:34:46 +0000 (12:34 +0000)]
2015-05-22  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66251
* tree-vect-stmts.c (vectorizable_conversion): Properly
set STMT_VINFO_VEC_STMT even for the SLP case.

* gfortran.fortran-torture/compile/pr66251.f90: New testcase.

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

9 years ago2015-05-22 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Fri, 22 May 2015 12:34:33 +0000 (12:34 +0000)]
2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

* einfo.adb (Default_Init_Cond_Procedure): Code cleanup. The
attribute now applies to the base type.
(Has_Default_Init_Cond): Now applies to the base type.
(Has_Inherited_Default_Init_Cond): Now applies to the base type.
(Set_Default_Init_Cond_Procedure): Code cleanup. The attribute now
applies to the base type.
(Set_Has_Default_Init_Cond): Now applies to the base type.
(Set_Has_Inherited_Default_Init_Cond): Now applies to the base type.
* exp_ch3.adb (Expand_N_Object_Declaration): No need to use the
base type when adding a call to the Default_Initial_Condition.

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

9 years ago2015-05-22 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Fri, 22 May 2015 12:32:55 +0000 (12:32 +0000)]
2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

* einfo.adb Node36 is now used as Anonymous_Master. Flag253
is now unused.
(Anonymous_Master): New routine.
(Has_Anonymous_Master): Removed.
(Set_Anonymous_Master): New routine.
(Set_Has_Anonymous_Master): Removed.
(Write_Entity_Flags): Remove the output for Has_Anonymous_Maser.
(Write_Field36_Name): Add output for Anonymous_Master.
* einfo.ads Add new attribute Anonymous_Master along with
occurrences in nodes. Remove attribute Has_Anonymous_Master along
with occurrences in nodes.
(Anonymous_Master): New routine along with pragma Inline.
(Has_Anonymous_Master): Removed along with pragma Inline.
(Set_Anonymous_Master): New routine along with pragma Inline.
(Set_Has_Anonymous_Master): Removed along with pragma Inline.
* exp_ch4.adb (Create_Anonymous_Master): New routine.
(Current_Anonymous_Master): Reimplemented.

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

9 years ago2015-05-22 Bob Duff <duff@adacore.com>
charlet [Fri, 22 May 2015 12:31:03 +0000 (12:31 +0000)]
2015-05-22  Bob Duff  <duff@adacore.com>

* freeze.adb (Freeze_Profile): Suppress warning if imported
subprogram is not at library level.

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

9 years ago2015-05-22 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 10:53:29 +0000 (10:53 +0000)]
2015-05-22  Robert Dewar  <dewar@adacore.com>

* sem_ch8.adb (Analyze_Object_Renaming): Check for renaming
component of an object to which Volatile_Full_Access applies.

2015-05-22  Jerome Guitton  <guitton@adacore.com>

* exp_dbug.ads: Add note about non bit-packed arrays.

2015-05-22  Eric Botcazou  <ebotcazou@adacore.com>

* sem_prag.adb: Fix typo.
* einfo.ads: Grammar fixes in comments.

2015-05-22  Bob Duff  <duff@adacore.com>

* a-cborma.ads, a-cidlli.ads, a-cimutr.ads, a-ciormu.ads,
* a-cihase.ads, a-cohama.ads, a-coorse.ads, a-cbhama.ads,
* a-cborse.ads, a-comutr.ads, a-ciorma.ads, a-cobove.ads,
* a-coormu.ads, a-convec.ads, a-cohase.ads, a-coinho.ads,
* a-cbdlli.ads, a-cbmutr.ads, a-cbhase.ads, a-cdlili.ads,
* a-cihama.ads, a-coinve.ads, a-ciorse.ads, a-coorma.ads,
* a-coinho-shared.ads (Constant_Reference_Type, Reference_Type):
Add an initialization expression "raise Program_Error". See,
for example, RM-A.18.2(148.4).

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

9 years agofix some dates in ChangeLogs
tbsaunde [Fri, 22 May 2015 10:50:49 +0000 (10:50 +0000)]
fix some dates in ChangeLogs

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

9 years ago2015-05-22 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 10:50:19 +0000 (10:50 +0000)]
2015-05-22  Robert Dewar  <dewar@adacore.com>

* debug.adb: Update documentation.
* einfo.ads, einfo.adb (Needs_Typedef): New flag
* exp_unst.adb (Unnest_Subprogram): Mark AREC types as needing
typedef's in C.
* frontend.adb: Update comments.
* gnat1drv.adb (Adjust_Global_Switches): Set all needed flags
for -gnatd.V
* opt.ads (Generate_C_Code): New switch.
* osint-c.adb (Write_C_File_Info): Removed, not used
(Write_H_File_Info): Removed, not used
* osint-c.ads (Write_C_File_Info): Removed, not used
(Write_H_File_Info): Removed, not used
* osint.ads (Write_Info): Minor comment updates.
(Output_FD): Moved from private part to public part of spec.
* sem.adb (Semantics): Force expansion on if in Generate_C_Code
mode.
* atree.ads: minor typo in comment.
* sem_prag.adb (Process_Atomic_Independent_Shared_Volatile):
Do not allow VFA on composite object with aliased component.

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

9 years ago2015-05-22 Arnaud Charlet <charlet@adacore.com>
charlet [Fri, 22 May 2015 10:42:23 +0000 (10:42 +0000)]
2015-05-22  Arnaud Charlet  <charlet@adacore.com>

* osint-c.adb, osint-c.ads (Set_File_Name): Move back to spec.

2015-05-22  Pascal Obry  <obry@adacore.com>

* prj-util.adb: Minor comment editing.

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

9 years agoMinor reformatting.
charlet [Fri, 22 May 2015 10:40:27 +0000 (10:40 +0000)]
Minor reformatting.

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

9 years ago2015-05-22 Pascal Obry <obry@adacore.com>
charlet [Fri, 22 May 2015 10:40:07 +0000 (10:40 +0000)]
2015-05-22  Pascal Obry  <obry@adacore.com>

* makeutl.ads (In_Place_Option): New constant.
* prj.ads (Obj_Root_Dir): New variable (absolute path to relocate
objects).
(Root_Src_Tree): New variable (absolute path of root source tree).
* prj-conf.adb (Do_Autoconf): Take into account the object root
directory (if defined) to generate configuration project.
* prj-nmsc.adb (Get_Directories): Handle case where Obj_Root_Dir
is defined.
(Locate_Directory): Likewise.

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

9 years ago2015-05-22 Pascal Obry <obry@adacore.com>
charlet [Fri, 22 May 2015 10:38:07 +0000 (10:38 +0000)]
2015-05-22  Pascal Obry  <obry@adacore.com>

* prj-util.ads, prj-util.adb (Relative_Path): New routine.

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

9 years ago2015-05-22 Bob Duff <duff@adacore.com>
charlet [Fri, 22 May 2015 10:36:56 +0000 (10:36 +0000)]
2015-05-22  Bob Duff  <duff@adacore.com>

* exp_utils.ads, exp_utils.adb (Find_Optional_Prim_Op): New
interface to return Empty when not found, so we can avoid handling
Program_Error in that case.
(Find_Prim_Op): Fix latent bug: raise Program_Error when there are no
primitives.
* exp_ch7.adb, sem_util.adb: Use Find_Optional_Prim_Op when the
code is expecting Empty.
* sem_ch8.adb: Use Find_Optional_Prim_Op to avoid handling
Program_Error.

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

9 years ago2015-05-22 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 10:35:33 +0000 (10:35 +0000)]
2015-05-22  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb, sem_intr.adb, exp_ch4.adb, s-rannum.adb,
sem_eval.adb, s-fatgen.adb, s-expmod.ads: Remove incorrect hyphen in
non-binary.
* exp_util.adb: Add comment.
* osint-c.ads, osint-c.adb (Set_Library_Info_Name): Move from spec to
body.
(Set_File_Name): New name for the above.
(Create_C_File, Create_H_File, Write_C_File_Info, Write_H_File_Info,
Close_C_File, Close_H_File): New procedure.
* osint.adb: Minor reformatting.
* osint.ads: Minor comment updates.

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

9 years ago2015-05-22 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 10:32:15 +0000 (10:32 +0000)]
2015-05-22  Robert Dewar  <dewar@adacore.com>

* exp_ch4.adb: Minor rewording.
* exp_util.ads: Clarify that Find_Prim_Op is only for
tagged types.

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

9 years ago2015-05-22 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 10:30:37 +0000 (10:30 +0000)]
2015-05-22  Robert Dewar  <dewar@adacore.com>

* atree.adb, atree.ads, treepr.adb: Change name Needs_Actuals_Check to
Check_Actuals.
* exp_ch4.adb (Expand_N_Op_Expon): Optimize 2**x in modular
and overflow cases.

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

9 years ago2015-05-22 Eric Botcazou <ebotcazou@adacore.com>
charlet [Fri, 22 May 2015 10:28:06 +0000 (10:28 +0000)]
2015-05-22  Eric Botcazou  <ebotcazou@adacore.com>

* exp_pakd.adb (Install_PAT): Propagate representation aspects
from the original array type to the PAT.

2015-05-22  Robert Dewar  <dewar@adacore.com>

* treepr.adb (Print_Node_Header): Add output of Needs_Actuals_Check.

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

9 years ago2015-05-22 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 10:25:20 +0000 (10:25 +0000)]
2015-05-22  Robert Dewar  <dewar@adacore.com>

* atree.adb, atree.ads (Needs_Actuals_Check): New flag.

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

9 years ago2015-05-22 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Fri, 22 May 2015 10:23:39 +0000 (10:23 +0000)]
2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Analyze_Pragma): Remove the detection
of a useless Part_Of indicator when the related item is a constant.
(Check_Matching_Constituent): Do not emit an error on a constant.
(Check_Missing_Part_Of): Do not check for a missing Part_Of indicator
when the related item is a constant.
(Collect_Body_States): Code cleanup.
(Collect_Visible_States): Code cleanup.
(Report_Unused_States): Do not emit an error on a constant.
* sem_util.ads, sem_util.adb (Has_Variable_Input): Removed.

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

9 years ago2015-05-22 Eric Botcazou <ebotcazou@adacore.com>
charlet [Fri, 22 May 2015 10:20:00 +0000 (10:20 +0000)]
2015-05-22  Eric Botcazou  <ebotcazou@adacore.com>

* sem_ch8.adb (Analyze_Object_Renaming): Copy
Has_Volatile_Full_Access from renamed to renaming entities.
* sem_prag.adb (Process_Atomic_Independent_Shared_Volatile):
Tidy up and remove redundant setting of Has_Volatile_Full_Access.

2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

* ghost.adb (Check_Ghost_Completion): Update references to SPARK
RM 6.9 rules.
(Check_Ghost_Policy): Update references to SPARK RM 6.9 rules.
* sem_ch3.adb (Analyze_Object_Declaration): Update references
to SPARK RM 6.9 rules.
(Check_Completion): Ghost entities do not require a special form of
completion.
* sem_ch6.adb (Analyze_Generic_Subprogram_Body): Update references
to SPARK RM 6.9 rules.
(Analyze_Subprogram_Body_Helper): Update references to SPARK RM 6.9
rules.
* sem_ch7.adb (Analyze_Package_Body_Helper): Update references
to SPARK RM 6.9 rules.
(Requires_Completion_In_Body): Ghost entities do not require a special
form of completion.

2015-05-22  Robert Dewar  <dewar@adacore.com>

* a-csquin.ads: Use Ada 2012 notation.
* sem_ch8.adb: Minor reformatting.

2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch13.adb (Analyze_Aspect_Specifications): Aspect Import
acts as a completion.

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

9 years ago2015-05-22 Ed Schonberg <schonberg@adacore.com>
charlet [Fri, 22 May 2015 10:15:47 +0000 (10:15 +0000)]
2015-05-22  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb: Minor reformatting.

2015-05-22  Jose Ruiz  <ruiz@adacore.com>

* a-reatim.adb: Minor change, fix typo.

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

9 years ago2015-05-22 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 10:14:35 +0000 (10:14 +0000)]
2015-05-22  Robert Dewar  <dewar@adacore.com>

* sem_util.ads: Minor addition of ??? comment.
* sem_prag.adb, sem_util.adb: Minor reformatting.
* sem_ch13.adb: minor reformatting.

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

9 years ago2015-05-22 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 10:11:36 +0000 (10:11 +0000)]
2015-05-22  Robert Dewar  <dewar@adacore.com>

* a-reatim.ads: Add Compile_Time_Error to ensure Duration
is 64-bits.
* sem_ch13.adb: Improve error message.
* exp_ch4.adb: Minor reformatting.

2015-05-22  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Analyze_Pragma): Constants without variable
input do not require indicator Part_Of.
(Check_Missing_Part_Of): Constants without variable input do not
requrie indicator Part_Of.
(Collect_Visible_States): Constants without variable input are
not part of the hidden state of a package.
* sem_util.ads, sem_util.adb (Has_Variable_Input): New routine.

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

9 years ago * doc/extend.texi: Use @pxref instead of @xref.
mpolacek [Fri, 22 May 2015 09:27:35 +0000 (09:27 +0000)]
* doc/extend.texi: Use @pxref instead of @xref.

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

9 years ago2015-05-22 hiraditya <hiraditya@msn.com>
rguenth [Fri, 22 May 2015 09:10:29 +0000 (09:10 +0000)]
2015-05-22  hiraditya  <hiraditya@msn.com>

        * gimple.h (gimple_expr_type): Refactor to make it concise.
        Remove redundant if.

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

9 years ago2015-05-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 May 2015 09:08:46 +0000 (09:08 +0000)]
2015-05-22  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65701
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment):
Move peeling cost models into one place.  Peel for alignment
for single loads only if an aligned load is cheaper than
an unaligned load.

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

9 years ago PR c/47043
mpolacek [Fri, 22 May 2015 09:07:31 +0000 (09:07 +0000)]
PR c/47043
* c-common.c (handle_deprecated_attribute): Allow CONST_DECL.

* c-parser.c (c_parser_enum_specifier): Parse and apply enumerator
attributes.

* cp-tree.h (build_enumerator): Update declaration.
* decl.c (build_enumerator): Add attributes parameter.  Call
cplus_decl_attributes.
* init.c (constant_value_1): Pass tf_none to mark_used.
* parser.c (cp_parser_enumerator_definition): Parse attributes and
pass them down to build_enumerator.
* pt.c (tsubst_enum): Pass decl attributes to build_enumerator.
* semantics.c (finish_id_expression): Don't warn_deprecated_use here.

* doc/extend.texi (Enumerator Attributes): New section.
Document syntax of enumerator attributes.

* c-c++-common/attributes-enum-1.c: New test.
* c-c++-common/attributes-enum-2.c: New test.
* g++.dg/cpp0x/attributes-enum-1.C: New test.
* g++.dg/cpp1y/attributes-enum-1.C: New test.

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

9 years ago2015-05-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 May 2015 09:00:28 +0000 (09:00 +0000)]
2015-05-22  Richard Biener  <rguenther@suse.de>

* tree-vect-loop.c (get_reduction_op): New function.
(vect_model_reduction_cost): Use it, add reduc_index parameter.
Make ready for BB reductions.
(vect_create_epilog_for_reduction): Use get_reduction_op.
(vectorizable_reduction): Init reduc_index to a valid value.
Adjust vect_model_reduction_cost call.
* tree-vect-slp.c (vect_get_constant_vectors): Use the proper
operand for reduction defaults.  Add SAD_EXPR support.
Assert we have a neutral op for SLP reductions.
* tree-vect-stmts.c (vect_mark_stmts_to_be_vectorized): When
walking pattern stmt ops only recurse to SSA names.

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

9 years ago2015-05-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 May 2015 08:55:59 +0000 (08:55 +0000)]
2015-05-22  Richard Biener  <rguenther@suse.de>

* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Replace
assert with guard, remove check on detected reduction.
(vect_recog_sad_pattern): Likewise.
(vect_recog_widen_sum_pattern): Likewise.

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

9 years ago2015-05-21 Robert Dewar <dewar@adacore.com>
charlet [Fri, 22 May 2015 08:52:17 +0000 (08:52 +0000)]
2015-05-21  Robert Dewar  <dewar@adacore.com>

* exp_util.adb (Activate_Atomic_Synchronization): Do not set
Atomic_Sync_Required for an object renaming declaration.
* sem_ch8.adb (Analyze_Object_Renaming): Copy Is_Atomic and
Is_Independent to renaming object.

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

* sem_ch5.adb (Analyze_Iterator_Specification): Diagnose
various illegalities in iterators over arrays and containers:
a) New function Get_Cursor_Type, to verify that the cursor is
not a limited type at the point of iteration.
b) If the container is a constant, an element_iterator is illegal
if the container type does not have a Constant_Indexing aspect.
c) If the iterate function has an in-out controlling parameter,
the container cannot be a constant object.
d) Reject additional cases of iterators over a
discriminant-dependent component of a mutable object.

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

9 years ago[AArch64] Add __extension__ and __always_inline__ to crypto intrinsics
ktkachov [Fri, 22 May 2015 08:21:22 +0000 (08:21 +0000)]
[AArch64] Add __extension__ and __always_inline__ to crypto intrinsics

* config/aarch64/arm_neon.h (vaeseq_u8): Add __extension__ and
__always_inline__ attribute.
(vaesdq_u8): Likewise.
(vaesmcq_u8): Likewise.
(vaesimcq_u8): Likewise.
(vsha1cq_u32): Likewise.
(vsha1mq_u32): Likewise.
(vsha1pq_u32): Likewise.
(vsha1h_u32): Likewise.
(vsha1su0q_u32): Likewise.
(vsha1su1q_u32): Likewise.
(vsha256hq_u32): Likewise.
(vsha256h2q_u32): Likewise.
(vsha256su0q_u32): Likewise.
(vsha256su1q_u32): Likewise.
(vmull_p64): Likewise.
(vmull_high_p64): Likewise.

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

9 years agoalways define HAVE_peephole
tbsaunde [Fri, 22 May 2015 01:04:24 +0000 (01:04 +0000)]
always define HAVE_peephole

gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* final.c (final_scan_insn): Don't check HAVE_peephole with the
preprocessor.
* output.h: Likewise.
* genconfig.c (main): Alwways define HAVE_peephole.
* genpeep.c: Don't emit checks of HAVE_peephole.

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

9 years agoremove #if HAVE_conditional_move
tbsaunde [Fri, 22 May 2015 01:04:17 +0000 (01:04 +0000)]
remove #if HAVE_conditional_move

gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* combine.c, expmed.c, expr.c, optabs.c optabs.h, toplev.c: DOn't
check HAVE_conditional_move with the preprocessor.

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

9 years agoalways define HAVE_conditional_move
tbsaunde [Fri, 22 May 2015 01:04:09 +0000 (01:04 +0000)]
always define HAVE_conditional_move

gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* genconfig.c (main): Always define HAVE_conditional_move.
* combine.c, expmed.c, expr.c, ifcvt.c, optabs.c, optabs.h,
toplev.c, tree-ssa-phiopt.c: Don't check if HAVE_conditional_move
is defined.

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

9 years agodon't compare ARG_FRAME_POINTER_REGNUM and FRAME_POINTER_REGNUM with the preprocessor
tbsaunde [Fri, 22 May 2015 01:03:59 +0000 (01:03 +0000)]
don't compare ARG_FRAME_POINTER_REGNUM and FRAME_POINTER_REGNUM with the preprocessor

gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* combine.c, df-problems.c, df-scan.c, emit-rtl.c, reginfo.c,
reload.c, rtlanal.c: Remove comparison of ARG_FRAME_POINTER_REGNUM
and FRAME_POINTER_REGNUM with the preprocessor.

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

9 years agomove default for STACK_PUSH_CODE to defaults.h
tbsaunde [Fri, 22 May 2015 01:03:51 +0000 (01:03 +0000)]
move default for STACK_PUSH_CODE to defaults.h

gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* defaults.h: Add default for STACK_PUSH_CODE.
* expr.c: Don't redefine STACK_PUSH_CODE.
* recog.c: Likewise.

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

9 years agoremove most ifdef STACK_GROWS_DOWNWARD
tbsaunde [Fri, 22 May 2015 01:03:42 +0000 (01:03 +0000)]
remove most ifdef STACK_GROWS_DOWNWARD

gcc/c-family/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* c-cppbuiltin.c (c_cpp_builtins): Use if instead of #if with
STACK_GROWS_DOWNWARD.

gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* builtins.c, dwarf2cfi.c, explow.c, expr.c, recog.c,
sched-deps.c: Use if instead of preprocessor checks with
STACK_GROWS_DOWNWARD.

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

9 years agoalways define STACK_GROWS_DOWNWARD
tbsaunde [Fri, 22 May 2015 01:03:11 +0000 (01:03 +0000)]
always define STACK_GROWS_DOWNWARD

gcc/c-family/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* c-cppbuiltin.c (c_cpp_builtins): Check the value of
STACK_GROWS_DOWNWARD rather than if it is defined.

gcc/ChangeLog:

2015-05-20  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* *.c: Check the value of STACK_GROWS_DOWNWARD rather than if it
is defined.
* config/**/*.h: Define STACK_GROWS_DOWNWARD to an integer.
* defaults.h: Provide default for STACK_GROWS_DOWNWARD.
* doc/tm.texi.in: Update references to STACK_GROWS_DOWNWARD.
* doc/tm.texi: Regenerate.

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

9 years agoDaily bump.
gccadmin [Fri, 22 May 2015 00:16:18 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago2015-05-21 Sandra Loosemore <sandra@codesourcery.com>
sandra [Thu, 21 May 2015 23:02:18 +0000 (23:02 +0000)]
2015-05-21  Sandra Loosemore  <sandra@codesourcery.com>

gcc/testsuite/
* gcc.target/arm/simd/simd.exp: Skip all tests if no arm_neon_ok
effective target support.  If no arm_neon_hw support, do not attempt
to execute the tests; only compile them.
* gcc.target/arm/simd/vextf32_1.c: Remove explicit "dg-do run"
and "dg-require-effective-target arm_neon_ok".
* gcc.target/arm/simd/vextp16_1.c: Likewise.
* gcc.target/arm/simd/vextp64_1.c: Likewise.
* gcc.target/arm/simd/vextp8_1.c: Likewise.
* gcc.target/arm/simd/vextQf32_1.c: Likewise.
* gcc.target/arm/simd/vextQp16_1.c: Likewise.
* gcc.target/arm/simd/vextQp64_1.c: Likewise.
* gcc.target/arm/simd/vextQp8_1.c: Likewise.
* gcc.target/arm/simd/vextQs16_1.c: Likewise.
* gcc.target/arm/simd/vextQs32_1.c: Likewise.
* gcc.target/arm/simd/vextQs64_1.c: Likewise.
* gcc.target/arm/simd/vextQs8_1.c: Likewise.
* gcc.target/arm/simd/vextQu16_1.c: Likewise.
* gcc.target/arm/simd/vextQu32_1.c: Likewise.
* gcc.target/arm/simd/vextQu64_1.c: Likewise.
* gcc.target/arm/simd/vextQu8_1.c: Likewise.
* gcc.target/arm/simd/vexts16_1.c: Likewise.
* gcc.target/arm/simd/vexts32_1.c: Likewise.
* gcc.target/arm/simd/vexts64_1.c: Likewise.
* gcc.target/arm/simd/vexts8_1.c: Likewise.
* gcc.target/arm/simd/vextu16_1.c: Likewise.
* gcc.target/arm/simd/vextu32_1.c: Likewise.
* gcc.target/arm/simd/vextu64_1.c: Likewise.
* gcc.target/arm/simd/vextu8_1.c: Likewise.
* gcc.target/arm/simd/vrev16p8_1.c: Likewise.
* gcc.target/arm/simd/vrev16qp8_1.c: Likewise.
* gcc.target/arm/simd/vrev16qs8_1.c: Likewise.
* gcc.target/arm/simd/vrev16qu8_1.c: Likewise.
* gcc.target/arm/simd/vrev16s8_1.c: Likewise.
* gcc.target/arm/simd/vrev16u8_1.c: Likewise.
* gcc.target/arm/simd/vrev32p16_1.c: Likewise.
* gcc.target/arm/simd/vrev32p8_1.c: Likewise.
* gcc.target/arm/simd/vrev32qp16_1.c: Likewise.
* gcc.target/arm/simd/vrev32qp8_1.c: Likewise.
* gcc.target/arm/simd/vrev32qs16_1.c: Likewise.
* gcc.target/arm/simd/vrev32qs8_1.c: Likewise.
* gcc.target/arm/simd/vrev32qu16_1.c: Likewise.
* gcc.target/arm/simd/vrev32qu8_1.c: Likewise.
* gcc.target/arm/simd/vrev32s16_1.c: Likewise.
* gcc.target/arm/simd/vrev32s8_1.c: Likewise.
* gcc.target/arm/simd/vrev32u16_1.c: Likewise.
* gcc.target/arm/simd/vrev32u8_1.c: Likewise.
* gcc.target/arm/simd/vrev64f32_1.c: Likewise.
* gcc.target/arm/simd/vrev64p16_1.c: Likewise.
* gcc.target/arm/simd/vrev64p8_1.c: Likewise.
* gcc.target/arm/simd/vrev64qf32_1.c: Likewise.
* gcc.target/arm/simd/vrev64qp16_1.c: Likewise.
* gcc.target/arm/simd/vrev64qp8_1.c: Likewise.
* gcc.target/arm/simd/vrev64qs16_1.c: Likewise.
* gcc.target/arm/simd/vrev64qs32_1.c: Likewise.
* gcc.target/arm/simd/vrev64qs8_1.c: Likewise.
* gcc.target/arm/simd/vrev64qu16_1.c: Likewise.
* gcc.target/arm/simd/vrev64qu32_1.c: Likewise.
* gcc.target/arm/simd/vrev64qu8_1.c: Likewise.
* gcc.target/arm/simd/vrev64s16_1.c: Likewise.
* gcc.target/arm/simd/vrev64s32_1.c: Likewise.
* gcc.target/arm/simd/vrev64s8_1.c: Likewise.
* gcc.target/arm/simd/vrev64u16_1.c: Likewise.
* gcc.target/arm/simd/vrev64u32_1.c: Likewise.
* gcc.target/arm/simd/vrev64u8_1.c: Likewise.
* gcc.target/arm/simd/vtrnf32_1.c: Likewise.
* gcc.target/arm/simd/vtrnp16_1.c: Likewise.
* gcc.target/arm/simd/vtrnp8_1.c: Likewise.
* gcc.target/arm/simd/vtrnqf32_1.c: Likewise.
* gcc.target/arm/simd/vtrnqp16_1.c: Likewise.
* gcc.target/arm/simd/vtrnqp8_1.c: Likewise.
* gcc.target/arm/simd/vtrnqs16_1.c: Likewise.
* gcc.target/arm/simd/vtrnqs32_1.c: Likewise.
* gcc.target/arm/simd/vtrnqs8_1.c: Likewise.
* gcc.target/arm/simd/vtrnqu16_1.c: Likewise.
* gcc.target/arm/simd/vtrnqu32_1.c: Likewise.
* gcc.target/arm/simd/vtrnqu8_1.c: Likewise.
* gcc.target/arm/simd/vtrns16_1.c: Likewise.
* gcc.target/arm/simd/vtrns32_1.c: Likewise.
* gcc.target/arm/simd/vtrns8_1.c: Likewise.
* gcc.target/arm/simd/vtrnu16_1.c: Likewise.
* gcc.target/arm/simd/vtrnu32_1.c: Likewise.
* gcc.target/arm/simd/vtrnu8_1.c: Likewise.
* gcc.target/arm/simd/vuzpf32_1.c: Likewise.
* gcc.target/arm/simd/vuzpp16_1.c: Likewise.
* gcc.target/arm/simd/vuzpp8_1.c: Likewise.
* gcc.target/arm/simd/vuzpqf32_1.c: Likewise.
* gcc.target/arm/simd/vuzpqp16_1.c: Likewise.
* gcc.target/arm/simd/vuzpqp8_1.c: Likewise.
* gcc.target/arm/simd/vuzpqs16_1.c: Likewise.
* gcc.target/arm/simd/vuzpqs32_1.c: Likewise.
* gcc.target/arm/simd/vuzpqs8_1.c: Likewise.
* gcc.target/arm/simd/vuzpqu16_1.c: Likewise.
* gcc.target/arm/simd/vuzpqu32_1.c: Likewise.
* gcc.target/arm/simd/vuzpqu8_1.c: Likewise.
* gcc.target/arm/simd/vuzps16_1.c: Likewise.
* gcc.target/arm/simd/vuzps32_1.c: Likewise.
* gcc.target/arm/simd/vuzps8_1.c: Likewise.
* gcc.target/arm/simd/vuzpu16_1.c: Likewise.
* gcc.target/arm/simd/vuzpu32_1.c: Likewise.
* gcc.target/arm/simd/vuzpu8_1.c: Likewise.
* gcc.target/arm/simd/vzipf32_1.c: Likewise.
* gcc.target/arm/simd/vzipp16_1.c: Likewise.
* gcc.target/arm/simd/vzipp8_1.c: Likewise.
* gcc.target/arm/simd/vzipqf32_1.c: Likewise.
* gcc.target/arm/simd/vzipqp16_1.c: Likewise.
* gcc.target/arm/simd/vzipqp8_1.c: Likewise.
* gcc.target/arm/simd/vzipqs16_1.c: Likewise.
* gcc.target/arm/simd/vzipqs32_1.c: Likewise.
* gcc.target/arm/simd/vzipqs8_1.c: Likewise.
* gcc.target/arm/simd/vzipqu16_1.c: Likewise.
* gcc.target/arm/simd/vzipqu32_1.c: Likewise.
* gcc.target/arm/simd/vzipqu8_1.c: Likewise.
* gcc.target/arm/simd/vzips16_1.c: Likewise.
* gcc.target/arm/simd/vzips32_1.c: Likewise.
* gcc.target/arm/simd/vzips8_1.c: Likewise.
* gcc.target/arm/simd/vzipu16_1.c: Likewise.
* gcc.target/arm/simd/vzipu32_1.c: Likewise.
* gcc.target/arm/simd/vzipu8_1.c: Likewise.

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

9 years ago2015-05-21 Sandra Loosemore <sandra@codesourcery.com>
sandra [Thu, 21 May 2015 23:00:32 +0000 (23:00 +0000)]
2015-05-21  Sandra Loosemore  <sandra@codesourcery.com>

gcc/testsuite/
* gcc.dg/vect/bb-slp-pr65935.c: Remove explicit "dg-do run".
* gcc.dg/vect/pr59354.c: Likewise.
* gcc.dg/vect/pr64252.c: Likewise.
* gcc.dg/vect/pr64404.c: Likewise.
* gcc.dg/vect/pr64493.c: Likewise.
* gcc.dg/vect/pr64495.c: Likewise.
* gcc.dg/vect/pr64844.c: Likewise.
* gcc.dg/vect/pr65518.c: Likewise.
* gcc.dg/vect/vect-aggressive-1.c: Likewise.

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

9 years ago2015-05-21 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 21 May 2015 22:39:32 +0000 (22:39 +0000)]
2015-05-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/66210
* g++.dg/cpp1y/var-templ28.C: New.

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

9 years agoAllow indirect branch via GOT slot for x32
hjl [Thu, 21 May 2015 21:58:57 +0000 (21:58 +0000)]
Allow indirect branch via GOT slot for x32

X32 doesn't support indirect branch via 32-bit memory slot since
indirect branch will load 64-bit address from 64-bit memory slot.
Since x32 GOT slot is 64-bit, we should allow indirect branch via GOT
slot for x32.

gcc/

PR target/66232
* config/i386/constraints.md (Bg): New constraint for GOT memory
operand.
* config/i386/i386.md (*call_got_x32): New pattern.
(*call_value_got_x32): Likewise.
* config/i386/predicates.md (GOT_memory_operand): New predicate.

gcc/testsuite/

PR target/66232
* gcc.target/i386/pr66232-1.c: New test.
* gcc.target/i386/pr66232-2.c: Likewise.
* gcc.target/i386/pr66232-3.c: Likewise.
* gcc.target/i386/pr66232-4.c: Likewise.
* gcc.target/i386/pr66232-5.c: Likewise.

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

9 years ago cp/
nathan [Thu, 21 May 2015 20:50:45 +0000 (20:50 +0000)]
cp/
PR c++/60943
* decl2.c (change_return_type): Propagate FUNCTION_REF_QUALIFIED.

testsuite/
* g++.dg/cpp1y/pr60943.C: New.

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

9 years ago PR tree-optimization/66233
jakub [Thu, 21 May 2015 19:17:28 +0000 (19:17 +0000)]
PR tree-optimization/66233
* match.pd (ocvt (icvt@1 @0)): Don't handle vector types.
Simplify.

* gcc.c-torture/execute/pr66233.c: New test.

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

9 years ago2015-05-21 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Thu, 21 May 2015 19:00:45 +0000 (19:00 +0000)]
2015-05-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66176
* frontend-passes.c (check_conjg_variable):  New function.
(inline_matmul_assign):  Use it to keep track of conjugated
variables.

2015-05-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66176
* gfortran.dg/inline_matmul_11.f90:  New test

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

9 years ago2015-05-21 Andreas Tobler <andreast@gcc.gnu.org>
andreast [Thu, 21 May 2015 18:13:06 +0000 (18:13 +0000)]
2015-05-21  Andreas Tobler  <andreast@gcc.gnu.org>

    * gcc.target/i386/pr32219-1.c: Use 'dg-require-effective-target pie'
    instead of listing several targets on its own.
    * gcc.target/i386/pr32219-2.c: Likewise.
    * gcc.target/i386/pr32219-3.c: Likewise.
    * gcc.target/i386/pr32219-4.c: Likewise.
    * gcc.target/i386/pr32219-5.c: Likewise.
    * gcc.target/i386/pr32219-6.c: Likewise
    * gcc.target/i386/pr32219-7.c: Likewise.
    * gcc.target/i386/pr32219-8.c: Likewise.
    * gcc.target/i386/pr39013-1.c: Likewise.
    * gcc.target/i386/pr39013-2.c: Likewise.
    * gcc.target/i386/pr64317.c: Likewise.

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

9 years ago * inclhack.def (aix_externc): New fix.
dje [Thu, 21 May 2015 17:25:00 +0000 (17:25 +0000)]
* inclhack.def (aix_externc): New fix.
(aix_externcpp[12]): New fix.
* fixincl.x: Regenerate.
* test/base/ctype.h [AIX_EXTERNC_CHECK]: New test.
* test/base/sys/socket.h [AIX_EXTERNCPP[12]_CHECK]: New test.
* test/base/fcntl.h: New file.

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

9 years ago PR target/66224
dje [Thu, 21 May 2015 17:18:25 +0000 (17:18 +0000)]
    PR target/66224
        * config/cpu/powerpc/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER):
        Don't use isync. Use lwsync if available.
        * configure.host (atomic_word_dir) [aix[56789]*]: Delete to use
        powerpc cpu definition.

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

9 years ago * config/pa/pa.md (add-with-constant splitter): Use ASHIFT rather
law [Thu, 21 May 2015 17:18:16 +0000 (17:18 +0000)]
* config/pa/pa.md (add-with-constant splitter): Use ASHIFT rather
than MULT for shadd sequences.

* gcc.target/hppa/shadd-4.c: New test.

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

9 years agoRevert:
jason [Thu, 21 May 2015 17:05:33 +0000 (17:05 +0000)]
Revert:
       * configure.ac: Add -std=c++98 to stage1_cxxflags.
       * Makefile.tpl (STAGE1_CXXFLAGS): And substitute it.
       * Makefile.in, configure: Regenerate.

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

9 years ago * alias.c (alias_stats): New static var.
hubicka [Thu, 21 May 2015 15:51:59 +0000 (15:51 +0000)]
* alias.c (alias_stats): New static var.
(alias_sets_conflict_p, alias_sets_must_conflict_p): Update stats.
(dump_alias_stats_in_alias_c): New function.
* alias.h (dump_alias_stats_in_alias_c): Declare.
* tree-ssa-alias.c (dump_alias_stats): Call it.

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

9 years agoSee <https://gcc.gnu.org/ml/gcc-patches/2015-05/msg01977.html> for
mpolacek [Thu, 21 May 2015 15:30:09 +0000 (15:30 +0000)]
See <https://gcc.gnu.org/ml/gcc-patches/2015-05/msg01977.html> for
the rationale.

Bootstrapped/regtested on x86_64-linux, applying to trunk.

2015-05-21  Marek Polacek  <polacek@redhat.com>

* c-typeck.c (inform_declaration): Use DECL_IS_BUILTIN instead of
DECL_BUILT_IN.

diff --git gcc/c/c-typeck.c gcc/c/c-typeck.c
index ba8797b..f55d4c6 100644
--- gcc/c/c-typeck.c
+++ gcc/c/c-typeck.c
@@ -2853,9 +2853,10 @@ build_function_call (location_t loc, tree function, tree params)

 /* Give a note about the location of the declaration of DECL.  */

-static void inform_declaration (tree decl)
+static void
+inform_declaration (tree decl)
 {
-  if (decl && (TREE_CODE (decl) != FUNCTION_DECL || !DECL_BUILT_IN (decl)))
+  if (decl && (TREE_CODE (decl) != FUNCTION_DECL || !DECL_IS_BUILTIN (decl)))
     inform (DECL_SOURCE_LOCATION (decl), "declared here");
 }

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

9 years ago * typeck.c (warn_args_num): Don't print "declare here" for builtins.
mpolacek [Thu, 21 May 2015 15:27:12 +0000 (15:27 +0000)]
* typeck.c (warn_args_num): Don't print "declare here" for builtins.

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

9 years ago * libsupc++/del_opv.cc: Suppress -Wsized-deallocation.
jason [Thu, 21 May 2015 15:12:40 +0000 (15:12 +0000)]
* libsupc++/del_opv.cc: Suppress -Wsized-deallocation.
* libsupc++/del_op.cc: Likewise.

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

9 years ago * configure.ac: Add -std=c++98 to stage1_cxxflags.
jason [Thu, 21 May 2015 15:12:35 +0000 (15:12 +0000)]
* configure.ac: Add -std=c++98 to stage1_cxxflags.
* Makefile.tpl (STAGE1_CXXFLAGS): And substitute it.
* Makefile.in, configure: Regenerate.

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

9 years ago * tree-vectorizer.h (struct _stmt_vec_info): Rename stride_load_p
matz [Thu, 21 May 2015 14:36:04 +0000 (14:36 +0000)]
* tree-vectorizer.h (struct _stmt_vec_info): Rename stride_load_p
to strided_p.
(STMT_VINFO_STRIDE_LOAD_P): Rename to ...
(STMT_VINFO_STRIDED_P): ... this.
* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Adjust.
(vect_verify_datarefs_alignment): Likewise.
(vect_enhance_data_refs_alignment): Likewise.
(vect_analyze_data_ref_access): Likewise.
(vect_analyze_data_refs): Accept strided stores.
* tree-vect-stmts.c (vect_model_store_cost): Count strided stores.
(vect_model_load_cost): Adjust for macro rename.
(vectorizable_mask_load_store): Likewise.
(vectorizable_load): Likewise.
(vectorizable_store): Open code strided stores.

testsuite/
* gcc.dg/vect/vect-strided-store.c: New test.
* gfortran.dg/vect/fast-math-pr37021.f90: Adjust.
* gfortran.dg/vect/fast-math-rnflow-trs2a2.f90: Adjust.

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

9 years agoTestsuite check for sqrt_insn. Move pow/sqrt synth test from gcc.target/aarch64/...
ktkachov [Thu, 21 May 2015 13:30:24 +0000 (13:30 +0000)]
Testsuite check for sqrt_insn. Move pow/sqrt synth test from gcc.target/aarch64/ to to gcc.dg/

* lib/target-supports.exp (check_effective_target_sqrt_insn): New check.
* gcc.dg/pow-sqrt-synth-1.c: New test.
* gcc.target/aarch64/pow-sqrt-synth-1.c: Delete.

* doc/sourcebuild.texi (7.2.3.9 Other hardware attributes):
Document sqrt_insn.

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

9 years ago2015-05-21 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Thu, 21 May 2015 13:26:51 +0000 (13:26 +0000)]
2015-05-21  Hristian Kirtchev  <kirtchev@adacore.com>

* einfo.adb (Contract): This attribute now applies to constants.
(Set_Contract): This attribute now applies to constants.
(Write_Field34_Name): Add output for constants.
* einfo.ads Attribute Contract now applies to constants.
* sem_ch3.adb (Analyze_Object_Contract): Constants now have
their Part_Of indicator verified.
* sem_prag.adb (Analyze_Constituent): A constant is now a valid
constituent.
(Analyze_Global_Item): A constant cannot act as an output.
(Analyze_Initialization_Item): Constants are now a valid
initialization item.
(Analyze_Initializes_In_Decl_Part): Rename
global variable States_And_Vars to States_And_Objs and update
all its occurrences.
(Analyze_Input_Item): Constants are now a
valid initialization item. Remove SPARM RM references from error
messages.
(Analyze_Pragma): Indicator Part_Of can now apply to a constant.
(Collect_Body_States): Collect both source constants
and variables.
(Collect_States_And_Objects): Collect both source constants and
variables.
(Collect_States_And_Variables): Rename
to Collect_States_And_Objects and update all its occurrences.
(Collect_Visible_States): Do not collect constants and variables
used to map generic formals to actuals.
(Find_Role): The role of a constant is that of an input. Separate the
role of a variable from that of a constant.
(Report_Unused_Constituents): Add specialized wording for constants.
(Report_Unused_States): Add specialized wording for constants.
* sem_util.adb (Add_Contract_Item): Add processing for constants.
* sem_util.ads (Add_Contract_Item): Update the comment on usage.
(Find_Placement_In_State_Space): Update the comment on usage.

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

9 years ago2015-05-21 Richard Biener <rguenther@suse.de>
rguenth [Thu, 21 May 2015 13:23:41 +0000 (13:23 +0000)]
2015-05-21  Richard Biener  <rguenther@suse.de>

PR c++/66211
* match.pd: Guard pattern optimzing (int)(float)int
conversions to apply only on GIMPLE.

* g++.dg/conversion/pr66211.C: New testcase.
* gcc.dg/tree-ssa/forwprop-18.c: Adjust.

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

9 years ago2015-05-21 Ed Schonberg <schonberg@adacore.com>
charlet [Thu, 21 May 2015 13:12:18 +0000 (13:12 +0000)]
2015-05-21  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb: minor reformatting.

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

* freeze.adb (Freeze_Entity): Properly tag -gnatw.z messages.

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

9 years ago * combine.c (find_split_point): Handle ASHIFT like MULT to encourage
law [Thu, 21 May 2015 12:44:44 +0000 (12:44 +0000)]
* combine.c (find_split_point): Handle ASHIFT like MULT to encourage
multiply-accumulate/shift-add insn generation.

* gcc.target/hppa/shadd-2.c: New test.

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

9 years ago2015-05-20 Jeff Law <law@redhat.com>
law [Thu, 21 May 2015 12:44:35 +0000 (12:44 +0000)]
2015-05-20  Jeff Law  <law@redhat.com>

* config/pa/pa.c (pa_print_operand): New 'o' output modifier.
(pa_mem_shadd_constant_p): Renamed from pa_shadd_constant_p.
(pa_shadd_constant_p): Allow constants for shadd insns rather
than valid scaling constants for memory addresses.
* config/pa/pa-protos.h (pa_mem_shadd_constant_p): Add prototype.
* config/pa/predicates.md (mem_shadd_operand): New predicate.
* config/pa/pa.md (shift-add insns using MULT): Use mem_shadd_operand.
(shift-add insns using ASHIFT): New patterns.

* gcc.target/hppa/hppa.exp: New target test driver.
* gcc.target/hppa/shadd-1.c: New test.

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

9 years agogcc/
olegendo [Thu, 21 May 2015 12:36:35 +0000 (12:36 +0000)]
gcc/
PR target/54236
* config/sh/sh.md (*round_int_even): Reject pattern if operands[0] and
operands[1] are the same.

gcc/testsuite/
PR target/54236
* gcc.target/sh/pr54236-2.c: Fix typo in comment.

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

9 years ago2015-05-21 Robert Dewar <dewar@adacore.com>
charlet [Thu, 21 May 2015 10:51:22 +0000 (10:51 +0000)]
2015-05-21  Robert Dewar  <dewar@adacore.com>

* freeze.adb: Minor reformatting.
* cstand.adb (Print_Standard): Fix bad printing of Duration
low bound.
* a-reatim.adb (Time_Of): Complete rewrite to properly detect
out of range args.

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

* sem_ch5.adb: add (useless) initial value.
* sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram):
Check whether the procedure has parameters before processing
formals in ASIS mode.

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

9 years agoMinor reformatting.
charlet [Thu, 21 May 2015 10:47:50 +0000 (10:47 +0000)]
Minor reformatting.

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

9 years ago2015-05-21 Ed Schonberg <schonberg@adacore.com>
charlet [Thu, 21 May 2015 10:47:34 +0000 (10:47 +0000)]
2015-05-21  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Check_Iterator_Functions): Emit error on Iterator
aspect as well when indexing function is illegal.
(Valid_Default_Iterator): Handle properly somme illegal cases
to prevent compilation abandoned messages.
(Check_Primitive_Function): Verify that type and indexing function
are in the same scope.
* freeze.adb (Freeze_Record): Extend patch on the presence of
indexing aspects to aspect Default_Iterator.

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

9 years agoFix PR target/26702
ramana [Thu, 21 May 2015 09:23:14 +0000 (09:23 +0000)]
Fix PR target/26702

For Kwok Cheung Yeung.

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

9 years agogcc/
ienkovich [Thu, 21 May 2015 08:32:52 +0000 (08:32 +0000)]
gcc/

PR middle-end/66221
* ipa-chkp.c (chkp_copy_function_type_adding_bounds): Use
build_distinct_type_copy to copy bounds.

gcc/testsuite/

PR middle-end/66221
* gcc.dg/lto/pr66221_0.c: New test.
* gcc.dg/lto/pr66221_1.c: New test.

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

9 years agogcc/testsuite/ChangeLog:
manu [Thu, 21 May 2015 06:49:38 +0000 (06:49 +0000)]
gcc/testsuite/ChangeLog:

2015-05-21  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c/52952
* gcc.dg/redecl-4.c: Update column numbers.
* gcc.dg/format/bitfld-1.c: Likewise.
* gcc.dg/format/attr-2.c: Likewise.
* gcc.dg/format/attr-6.c: Likewise.
* gcc.dg/format/attr-7.c (baz): Likewise.
* gcc.dg/format/asm_fprintf-1.c: Likewise.
* gcc.dg/format/attr-4.c: Likewise.
* gcc.dg/format/branch-1.c: Likewise.
* gcc.dg/format/c90-printf-1.c: Likewise. Add tests for column
locations within strings with embedded escape sequences.

gcc/c-family/ChangeLog:

2015-05-21  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c/52952
* c-format.c (location_column_from_byte_offset): New.
(location_from_offset): New.
(struct format_wanted_type): Add offset_loc field.
(check_format_info): Move handling of location for extra arguments
closer to the point of warning.
(check_format_info_main): Pass the result of location_from_offset
to warning_at.
(format_type_warning): Pass the result of location_from_offset
to warning_at.

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

9 years agogenrecog: Address -Wsign-compare diagnostics.
tschwinge [Thu, 21 May 2015 06:46:55 +0000 (06:46 +0000)]
genrecog: Address -Wsign-compare diagnostics.

    g++-4.6 [...] [...]/gcc/genrecog.c
    [...]/gcc/genrecog.c: In function 'state_size find_subroutines(routine_type, state*, vec<state*>&)':
    [...]/gcc/genrecog.c:3338:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    [...]/gcc/genrecog.c:3347:37: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    [...]/gcc/genrecog.c:3359:29: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    [...]/gcc/genrecog.c:3365:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]

    3305   state_size size;
         [...]
    3337           state_size to_size = find_subroutines (type, trans->to, procs);
    3338           if (d->next && to_size.depth > MAX_DEPTH)
         [...]
    3347               if (to_size.num_statements < MIN_NUM_STATEMENTS)
         [...]
    3359   if (size.num_statements > MAX_NUM_STATEMENTS)
         [...]
    3365              && size.num_statements > MAX_NUM_STATEMENTS)

     175 static const int MAX_DEPTH = 6;
         [...]
     179 static const int MIN_NUM_STATEMENTS = 5;
         [...]
     185 static const int MAX_NUM_STATEMENTS = 200;
         [...]
    3258 struct state_size
    3259 {
         [...]
    3261   unsigned int num_statements;
         [...]
    3265   unsigned int depth;
    3266 };

gcc/
* genrecog.c (MAX_DEPTH, MIN_NUM_STATEMENTS, MAX_NUM_STATEMENTS):
Change to unsigned int.

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

9 years agoDaily bump.
gccadmin [Thu, 21 May 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago PR libgcc/66225
amodra [Wed, 20 May 2015 23:55:08 +0000 (23:55 +0000)]
PR libgcc/66225
* config/rs6000/morestack.S: Remove ".abiversion 1".

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

9 years ago * pt.c (tsubst_decl) [VAR_DECL]: SET_DECL_IMPLICIT_INSTANTIATION
jason [Wed, 20 May 2015 21:32:52 +0000 (21:32 +0000)]
* pt.c (tsubst_decl) [VAR_DECL]: SET_DECL_IMPLICIT_INSTANTIATION
before register_specialization.

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

9 years ago * decl.c (grok_op_properties): Don't complain about size_t
jason [Wed, 20 May 2015 21:32:46 +0000 (21:32 +0000)]
* decl.c (grok_op_properties): Don't complain about size_t
placement delete here.
* call.c (second_parm_is_size_t): Split out from...
(non_placement_deallocation_fn_p): ...here.
(build_op_delete_call): Warn about size_t placement delete with
-Wc++14-compat.

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

9 years ago2015-05-20 François Dumont <fdumont@gcc.gnu.org>
fdumont [Wed, 20 May 2015 19:44:25 +0000 (19:44 +0000)]
2015-05-20  François Dumont  <fdumont@gcc.gnu.org>

* include/debug/formatter.h (_GLIBCXX_TYPEID): New macro to simplify
usage of typeid.
(_Error_formatter::_M_print_type): New.
* src/c++11/debug.cc
(_Error_formatter::_Parameter::_M_print_field): Use latter.
(_Error_formatter::_M_print_type): Implement latter using
__cxaabiv1::__cxa_demangle to print demangled type name.

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

9 years agoPromote types of RTL expressions to more derived ones.
miyuki [Wed, 20 May 2015 19:39:42 +0000 (19:39 +0000)]
Promote types of RTL expressions to more derived ones.

* bb-reorder.c (set_edge_can_fallthru_flag): Use rtx_jump_insn where
feasible.
(fix_up_fall_thru_edges): Likewise.
(fix_crossing_conditional_branches): Likewise. Promote jump targets
from to rtx_insn to rtx_code_label where feasible.
* bt-load.c (move_btr_def): Remove as-a cast of the value returned by
gen_move_insn (returned type changed to rtx_insn).
* builtins.c (expand_errno_check): Fix arguments of
do_compare_rtx_and_jump (now expects rtx_code_label).
(expand_builtin_acc_on_device): Likewise.
* cfgcleanup.c (try_simplify_condjump): Add cast when calling
invert_jump (now exprects rtx_jump_insn).
* cfgexpand.c (label_rtx_for_bb): Promote return type to rtx_code_label.
(construct_init_block): Use rtx_code_label.
* cfgrtl.c (block_label): Promote return type to rtx_code_label.
(try_redirect_by_replacing_jump): Use cast to rtx_jump_insn when
calling redirect_jump.
(patch_jump_insn): Likewise.
(redirect_branch_edge): Likewise.
(force_nonfallthru_and_redirect): Likewise.
(fixup_reorder_chain): Explicitly use rtx_jump_insn instead of rtx_insn
when suitable.
(rtl_lv_add_condition_to_bb): Update call of do_compare_rtx_and_jump.
* cfgrtl.h: Promote return type of block_label to rtx_code_label.
* config/bfin/bfin.c (hwloop_optimize): Fix call of emit_label_before.
* config/i386/i386.c (ix86_emit_cmove): Explicitly use rtx_code_label
to store the value retured by gen_label_rtx.
* config/mips/mips.c (mips16_split_long_branches): Promote rtx_insn to
rtx_jump_insn.
* config/sh/sh.c (gen_far_branch): Likewise. Fix call of invert_jump.
(split_branches): Fix calls of redirect_jump.
* dojump.c (jumpifnot): Promote argument type from rtx to rtx_code_label.
(jumpifnot_1): Likewise.
(jumpif): Likewise.
(jumpif_1): Likewise.
(do_jump_1): Likewise.
(do_jump): Likewise. Use rtx_code_label when feasible.
(do_jump_by_parts_greater_rtx): Likewise.
(do_jump_by_parts_zero_rtx): Likewise.
(do_jump_by_parts_equality_rtx): Likewise.
(do_compare_rtx_and_jump): Likewise.
* dojump.h: Update function prototypes.
* dse.c (emit_inc_dec_insn_before): Remove case (gen_move_insn now
returns rtx_insn).
* emit-rtl.c (emit_jump_insn_before_noloc): Promote return type to
rtx_jump_insn.
(emit_label_before): Likewise.
(emit_jump_insn_after_noloc): Likewise.
(emit_jump_insn_after_setloc): Likewise.
(emit_jump_insn_after): Likewise
(emit_jump_insn_before_setloc): Likewise.
(emit_jump_insn_before): Likewise.
(emit_label_before): Promote return type to rtx_code_label.
(emit_label): Likewise.
* except.c (sjlj_emit_dispatch_table): Use jump_target_rtx.
* explow.c (emit_stack_save): Use gen_move_insn_uncast instead of
gen_move_insn.
(emit_stack_restore): Likewise.
* expmed.c (emit_store_flag_force): Fix calls of do_compare_rtx_and_jump.
(do_cmp_and_jump): Likewise.
* expr.c (expand_expr_real_2): Likewise. Promote some local variables
from rtx to rtx_code_label.
(gen_move_insn_uncast): New function.
* expr.h: Update return type of gen_move_insn (promote to rtx_insn).
* function.c (convert_jumps_to_returns): Fix call of redirect_jump.
* gcse.c (pre_insert_copy_insn): Use rtx_insn instead of rtx.
* ifcvt.c (dead_or_predicable): Use rtx_jump_insn when calling
invert_jump_1 and redirect_jump_1.
* internal-fn.c (expand_arith_overflow_result_store): Fix call of
do_compare_rtx_and_jump.
(expand_addsub_overflow): Likewise.
(expand_neg_overflow): Likewise.
(expand_mul_overflow): Likewise.
* ira.c (split_live_ranges_for_shrink_wrap): Use rtx_insn for
return value of gen_move_insn.
* jump.c (redirect_jump): Promote argument from rtx to rtx_jump_insn.
* loop-doloop.c (add_test): Use rtx_code_label.
(doloop_modify): Likewise.
(doloop_optimize): Likewise.
* loop-unroll.c (compare_and_jump_seq): Promote rtx to rtx_code_label.
* lra-constraints.c (emit_spill_move): Remove cast of value returned
by gen_move_insn.
(inherit_reload_reg): Add cast when calling dump_insn_slim.
(split_reg): Likewise.
* modulo-sched.c (schedule_reg_moves): Remove cast of value returned by
gen_move_insn.
* optabs.c (expand_binop_directly): Remove casts of values returned by
maybe_gen_insn.
(expand_unop_direct): Likewise.
(expand_abs): Likewise.
(maybe_emit_unop_insn): Likewise.
(maybe_gen_insn): Promote return type to rtx_insn.
* optabs.h: Update prototype of maybe_gen_insn.
* postreload-gcse.c (eliminate_partially_redundant_load): Remove
redundant cast.
* recog.c (struct peep2_insn_data): Promote type of insn field to
rtx_insn.
(peep2_reinit_state): Use NULL instead of NULL_RTX.
(peep2_attempt): Remove casts of insn in peep2_insn_data.
(peep2_fill_buffer): Promote argument from rtx to rtx_insn
* recog.h (struct insn_gen_fn): Promote return types of function
pointers and operator ().from rtx to rtx_insn.
* reorg.c (fill_simple_delay_slots): Promote rtx_insn to rtx_jump_insn.
(fill_eager_delay_slots): Likewise.
(relax_delay_slots): Likewise.
(make_return_insns): Likewise.
(dbr_schedule): Likewise.
(optimize_skips): Likewise.
(reorg_redirect_jump): Likewise.
(fill_slots_from_thread): Likewise.
* reorg.h: Update prototypes.
* resource.c (find_dead_or_set_registers): Use dyn_cast to
rtx_jump_insn instead of check.  Use it's jump_target method.
* rtl.h (rtx_jump_insn::jump_label): Define new method.
(rtx_jump_insn::jump_target): Define new method.
(rtx_jump_insn::set_jump_target): Define new method.
* rtlanal.c (tablejump_p): Promote type of one local variable.
* sched-deps.c (sched_analyze_2): Promote rtx to rtx_insn_list.
(sched_analyze_insn): Likewise.
* sched-vis.c (print_insn_with_notes): Promote rtx to rtx_insn.
(print_insn): Likewise.
* stmt.c (label_rtx): Promote return type to rtx_insn.
(force_label_rtx): Likewise.
(jump_target_rtx): Define new function.
(expand_label): Use it, get rid of one cast.
(expand_naked_return): Promote rtx to rtx_code_label.
(do_jump_if_equal): Fix do_compare_rtx_and_jump call.
(expand_case): Use rtx_code_label instread of rtx where feasible.
(expand_sjlj_dispatch_table): Likewise.
(emit_case_nodes): Likewise.
* stmt.h: Declare jump_target_rtx.  Update prototypes.  Fix comments.
* store-motion.c (insert_store): Make use of new return type of
gen_move_insn and remove a cast.
(replace_store_insn): Likewise.

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

9 years ago2015-05-20 François Dumont <fdumont@gcc.gnu.org>
fdumont [Wed, 20 May 2015 19:02:22 +0000 (19:02 +0000)]
2015-05-20  François Dumont  <fdumont@gcc.gnu.org>

* include/bits/cpp_type_traits.h
(std::move_iterator): Delete declaration.
(std::__is_move_iterator<move_iterator>): Move partial specialization...
* include/bits/stl_iterator.h: ... here.
(std::__miter_base): Overloads for std::reverse_iterator and
std::move_iterator.
* include/bits/stl_algobase.h (std::__miter_base): Provide default
implementation.

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

9 years agoFix PR target/65730
jcmvbkbc [Wed, 20 May 2015 18:56:14 +0000 (18:56 +0000)]
Fix PR target/65730

2015-05-20  Max Filippov  <jcmvbkbc@gmail.com>
gcc/
* config/xtensa/xtensa.c (init_alignment_context): Replace MULT
by BITS_PER_UNIT with ASHIFT by exact_log2 (BITS_PER_UNIT).

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

9 years agogcc/testsuite
avelenko [Wed, 20 May 2015 18:04:41 +0000 (18:04 +0000)]
gcc/testsuite

2015-05-20  Alex Velenko  <Alex.Velenko@arm.com>

        * gcc.target/arm/thumb1-far-jump-2.c (r4): Added int in definition.

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

9 years ago * testsuite/util/testsuite_fs.h (nonexistent_path): Don't use tempnam.
redi [Wed, 20 May 2015 17:28:04 +0000 (17:28 +0000)]
* testsuite/util/testsuite_fs.h (nonexistent_path): Don't use tempnam.

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

9 years ago PR libstdc++/66078
redi [Wed, 20 May 2015 17:11:03 +0000 (17:11 +0000)]
PR libstdc++/66078
* include/bits/stl_iterator.h (__make_move_if_noexcept_iterator): Add
overload for pointers.
* testsuite/20_util/specialized_algorithms/uninitialized_copy/
808590.cc: Add -std=gnu++03 switch.
* testsuite/20_util/specialized_algorithms/uninitialized_copy/
808590-cxx11.cc: Copy of 808590.cc to test with -std=gnu++11.
* testsuite/23_containers/vector/modifiers/push_back/
strong_guarantee.cc: New.

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

9 years ago * tree-ssa-threadupdate.c (mark_threaded_blocks): Properly
law [Wed, 20 May 2015 16:36:30 +0000 (16:36 +0000)]
   * tree-ssa-threadupdate.c (mark_threaded_blocks): Properly
        dispose of the jump thread path when the jump threading
        opportunity is cancelled.

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

9 years ago-Wmisleading-indentation: Increase test coverage
dmalcolm [Wed, 20 May 2015 16:09:19 +0000 (16:09 +0000)]
-Wmisleading-indentation: Increase test coverage

gcc/testsuite/ChangeLog:
* c-c++-common/Wmisleading-indentation.c (fn_32): New.
(fn_33_k_and_r_style): New.
(fn_33_stroustrup_style): New.
(fn_33_allman_style): New.
(fn_33_whitesmiths_style): New.
(fn_33_horstmann_style): New.
(fn_33_ratliff_banner_style): New.
(fn_33_lisp_style): New.
(fn_34_indent_dash_gnu): New.
(fn_34_indent_dash_kr): New.
(fn_34_indent_dash_orig): New.
(fn_34_indent_linux_style): New.

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

9 years agogcc/ChangeLog
manu [Wed, 20 May 2015 15:58:15 +0000 (15:58 +0000)]
gcc/ChangeLog

2015-05-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>

       * diagnostic.c (diagnostic_print_caret_line): Fix off-by-one error
       when printing the caret character.

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

9 years agogcc/fortran/ChangeLog:
vehre [Wed, 20 May 2015 14:56:47 +0000 (14:56 +0000)]
gcc/fortran/ChangeLog:

2015-05-19  Andre Vehreschild  <vehre@gmx.de>

PR fortran/65548
* trans-stmt.c (gfc_trans_allocate): Always retrieve the
descriptor or a reference to a source= expression for
arrays and non-arrays, respectively.  Use a temporary
symbol and gfc_trans_assignment for all source=
assignments to allocated objects besides for class and
derived types.

gcc/testsuite/ChangeLog:

2015-05-19  Andre Vehreschild  <vehre@gmx.de>

PR fortran/65548
* gfortran.dg/allocate_with_source_5.f90: Extend test.

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

9 years ago * cfgexpand.c (expand_debug_expr): Use UNARY_CLASS_P.
mpolacek [Wed, 20 May 2015 11:47:18 +0000 (11:47 +0000)]
* cfgexpand.c (expand_debug_expr): Use UNARY_CLASS_P.

* c-omp.c (check_omp_for_incr_expr): Use BINARY_CLASS_P.

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

9 years ago * expr.c (expand_cond_expr_using_cmove): Use COMPARISON_CLASS_P.
mpolacek [Wed, 20 May 2015 11:46:00 +0000 (11:46 +0000)]
* expr.c (expand_cond_expr_using_cmove): Use COMPARISON_CLASS_P.
* gimple-expr.c (gimple_cond_get_ops_from_tree): Likewise.
* gimple-fold.c (canonicalize_bool): Likewise.
(same_bool_result_p): Likewise.
* tree-if-conv.c (parse_predicate): Likewise.

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

9 years ago * gimple-fold.c (fold_const_aggregate_ref_1): Use DECL_P.
mpolacek [Wed, 20 May 2015 11:45:07 +0000 (11:45 +0000)]
* gimple-fold.c (fold_const_aggregate_ref_1): Use DECL_P.
* gimplify.c (gimplify_modify_expr_rhs): Likewise.

* c-ada-spec.c (dump_sloc): Use DECL_P.

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

9 years ago[AArch64][obvious] In aarch64_class_max_nregs use UNITS_PER_VREG and UNITS_PER_WORD
ktkachov [Wed, 20 May 2015 11:41:45 +0000 (11:41 +0000)]
[AArch64][obvious] In aarch64_class_max_nregs use UNITS_PER_VREG and UNITS_PER_WORD

* config/aarch64/aarch64.c (aarch64_class_max_nregs):
Use UNITS_PER_VREG and UNITS_PER_WORD instead of their direct
values.

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

9 years agoAdd missing declaration.
rts [Wed, 20 May 2015 10:35:21 +0000 (10:35 +0000)]
Add missing declaration.

gcc/
* config/mips/mips.h (micromips_globals): Declare.

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

9 years ago * c-pragma.c: Use VAR_OR_FUNCTION_DECL_P throughout.
mpolacek [Wed, 20 May 2015 10:10:07 +0000 (10:10 +0000)]
* c-pragma.c: Use VAR_OR_FUNCTION_DECL_P throughout.
* c-common.c: Likewise.

* c-decl.c: Use VAR_OR_FUNCTION_DECL_P throughout.
* c-typeck.c: Likewise.

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

9 years agoIntroduce TV_INITIALIZE_RTL
dmalcolm [Wed, 20 May 2015 09:23:36 +0000 (09:23 +0000)]
Introduce TV_INITIALIZE_RTL

gcc/ChangeLog:
* timevar.def (TV_INITIALIZE_RTL): New.
* toplev.c (initialize_rtl): Use an auto_timevar to account this
function's time to TV_INITIALIZE_RTL.

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

9 years agolibcpp: Eliminate most of the non-const/reference-returning inline fns
dmalcolm [Wed, 20 May 2015 09:13:19 +0000 (09:13 +0000)]
libcpp: Eliminate most of the non-const/reference-returning inline fns

gcc/java/ChangeLog:
* jcf-parse.c (set_source_filename): Replace write through
ORDINARY_MAP_FILE_NAME with direct access to "to_file".

libcpp/ChangeLog:
* include/line-map.h (MAP_START_LOCATION): Eliminate the non-const
variant, and tweak comment for the const variant.
(ORDINARY_MAP_STARTING_LINE_NUMBER): Drop the non-const variant.
(ORDINARY_MAP_INCLUDER_FILE_INDEX): Likewise.
(ORDINARY_MAP_IN_SYSTEM_HEADER_P): Likewise.
(SET_ORDINARY_MAP_NUMBER_OF_COLUMN_BITS): Delete.
(ORDINARY_MAP_FILE_NAME): Drop the non-const variant.
(MACRO_MAP_MACRO): Likewise.
(MACRO_MAP_NUM_MACRO_TOKENS): Likewise.
(MACRO_MAP_LOCATIONS): Likewise.
(MACRO_MAP_EXPANSION_POINT_LOCATION): Likewise.
* line-map.c (linemap_add): Replace writes through macros with
direct field accesses.
(linemap_enter_macro): Likewise.
(linemap_line_start): Likewise.

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

9 years ago * tree-chkp.c (chkp_maybe_copy_and_register_bounds): Remove useless
ienkovich [Wed, 20 May 2015 08:23:00 +0000 (08:23 +0000)]
* tree-chkp.c (chkp_maybe_copy_and_register_bounds): Remove useless
gimple_build_nop calls.
(chkp_find_bounds_for_elem): Likewise.
(chkp_get_zero_bounds): Likewise.
(chkp_get_none_bounds): Likewise.
(chkp_get_bounds_by_definition): Likewise.
(chkp_generate_extern_var_bounds): Likewise.
(chkp_get_bounds_for_decl_addr): Likewise.
(chkp_get_bounds_for_string_cst): Likewise.

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