Re: [PATCH][RFC] Move IVOPTs closer to RTL expansion

2013-09-10 Thread Bin.Cheng
On Tue, Sep 10, 2013 at 3:30 AM, Steven Bosscher wrote: > On Mon, Sep 9, 2013 at 10:01 AM, Richard Biener wrote: >>> >> First, the loop passes that at the moment preceede IVOPTs leave >>> >> around IL that is in desparate need of basic re-optimization >>> >> like CSE, constant propagation and DCE.

Re: Simplify jump threading slightly

2013-09-10 Thread Markus Trippelsdorf
On 2013.09.05 at 14:30 -0600, Jeff Law wrote: > > Bootstrapped and regression tested on x86_64-unknown-linux-gnu. > Installed onto the trunk. This patch caused http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58373 -- Markus

RE: [PATCH GCC]Catch more MEM_REFs sharing common addressing part in gimple strength reduction

2013-09-10 Thread bin.cheng
On Mon, Sep 9, 2013 at 11:35 PM, Bill Schmidt wrote: > >> > I rely on size_binop to convert T2 into sizetype, because T2' may be in >> > other kind of type. Otherwise there will be ssa_verify error later. >> >> OK, I see now. I had thought this was handled by fold_build2, but >> apparently not

Re: [PATCH, x86] Use vector moves in memmove expanding

2013-09-10 Thread Kirill Yukhin
Hello, On 09 Sep 13:50, Uros Bizjak wrote: > OK. Checked into main trunk: http://gcc.gnu.org/ml/gcc-cvs/2013-09/msg00286.html -- Thanks, K

Re: [PATCH][RFC] Move IVOPTs closer to RTL expansion

2013-09-10 Thread Richard Biener
On Mon, 9 Sep 2013, Steven Bosscher wrote: > On Mon, Sep 9, 2013 at 10:01 AM, Richard Biener wrote: > >> >> First, the loop passes that at the moment preceede IVOPTs leave > >> >> around IL that is in desparate need of basic re-optimization > >> >> like CSE, constant propagation and DCE. That put

Re: [PATCH][ARM] Improve cond_exec opportunities for immediate shifts for -mrestrict-it

2013-09-10 Thread Richard Earnshaw
On 09/09/13 17:32, Kyrylo Tkachov wrote: > Hi all, > > Shift operations with an immediate can generate a 16-bit encoding when the > immediate is 5-bit wide, i.e. in the range [0-31]. Therefore we can use them > in IT blocks even with the -mrestrict-it rules. > > I decided to reuse the "N" constra

[AArch64] Prevent generic pipeline description from dominating other pipeline descriptions.

2013-09-10 Thread James Greenhalgh
Hi, Looking at the way we handle the generic scheduler in AArch64, the order of includes suggests that we will always match to the generic unit, even when tuning for a non-generic pipeline. This patch explicitly prevents that by defining a "generic_sched" attribute, which is only true when the g

Re: [PATCH v2 1/6] Convert symtab, cgraph and varpool nodes into a real class hierarchy

2013-09-10 Thread Richard Biener
On Mon, Sep 9, 2013 at 9:32 PM, David Malcolm wrote: > This patch is the handwritten part of the conversion of these types > to C++; it requires the followup patch, which is autogenerated. > > It converts: > struct GTY(()) symtab_node_base > to: > class GTY((user)) symtab_node_base > > and con

[PATCH, libgcc] Disable JCR section when java is not enabled

2013-09-10 Thread Joey Ye
Updated to http://gcc.gnu.org/ml/gcc-patches/2012-12/msg01097.html Build passes on arm-none-eabi and bootstrap passes on x86. OK to trunk? ChangeLog * libgcc/Makefile.in: Include JAVA_IS_ENABLED in CFLAGS. * libgcc/configure.ac (java_is_enabled): New variable. * libgcc/configur

Re: [PATCH 6/6] Andes nds32: wwwdoc for nds32 target.

2013-09-10 Thread Gerald Pfeifer
On Mon, 9 Sep 2013, Chung-Ju Wu wrote: > Is it OK to apply on the cvs wwwdoc trunk? :) I would perhaps say: "A new nds32 port supports the 32-bit architecture from Andes Technology Corporation" or similar. If you prefer the current wording, that needs an extra "the", as in "to support the

[PATCH] RDG and loop distribution TLC

2013-09-10 Thread Richard Biener
This cleans up the RDG API and avoids computing data references twice for each loop processed in loop distribution. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2013-09-10 Richard Biener * tree-data-ref.h (build_rdg): Drop all parameters but loop.

Re: PATCH: PR other/58374: Wrong target check in configure.ac in libvtv

2013-09-10 Thread Jakub Jelinek
On Mon, Sep 09, 2013 at 01:56:29PM -0700, Caroline Tice wrote: > The patch looks good to me, but somebody else needs to approve it. Why? You are listed as libvtv maintainer, the patch is fully contained in libvtv, thus you can review it and approve. On an unrelated note, what kind of testing was

[PATCH] Fix crossjumping (PR rtl-optimization/58365)

2013-09-10 Thread Jakub Jelinek
Hi! If two instructions are rtl_equal_p, and cross-jumping decides to cross-jump them together, merge_memattrs takes care of clearing various MEM_ATTRS or setting alignment to minimum, size to maximum etc. But, it didn't handle flags on the MEMs. The following patch fixes that. MEM_KEEP_ALIAS_SE

Re: [PATCH] Fix crossjumping (PR rtl-optimization/58365)

2013-09-10 Thread Richard Biener
On Tue, Sep 10, 2013 at 12:38 PM, Jakub Jelinek wrote: > Hi! > > If two instructions are rtl_equal_p, and cross-jumping decides to cross-jump > them together, merge_memattrs takes care of clearing various MEM_ATTRS > or setting alignment to minimum, size to maximum etc. > But, it didn't handle fla

Re: [PATCH] Fix crossjumping (PR rtl-optimization/58365)

2013-09-10 Thread Jakub Jelinek
On Tue, Sep 10, 2013 at 01:18:34PM +0200, Richard Biener wrote: > Ok. Thanks. > > BTW, I wonder about REG_ATTRS and REG_POINTER, REG_USERVAR_P, > > REG_FUNCTION_VALUE_P, is it fine to keep them as is > > Definitely REG_EXPR is used to check for signedness of a register, but I > suppose > that i

Re: [PATCH, i386, MPX 1/X] Support of Intel MPX ISA

2013-09-10 Thread Ilya Enkovich
Ping^4 Could please someone look at this patch? It is mostly i386 target specific and is basic for further MPX based features. Thanks, Ilya 2013/9/2 Ilya Enkovich : > Ping^3 > > Attached is the same patch but against the current trunk. > > 2013/8/26 Ilya Enkovich : >> Ping >> >> 2013/8/19 Ilya E

Re: [patch] Remove unused macro and functions from tree-flow.h and tree-flow-inline.h

2013-09-10 Thread Andrew MacLeod
On 09/10/2013 01:27 AM, Jakub Jelinek wrote: On Mon, Sep 09, 2013 at 08:39:16PM -0600, Jeff Law wrote: On 09/09/2013 06:59 PM, Andrew MacLeod wrote: Whilst poking around, I discovered these hast table functions and the macro are no longer used anywhere in the compiler. bootstraps on x86_64-unkn

Re: Fwd: [PATCH] Scheduling result adjustment to enable macro-fusion

2013-09-10 Thread Alexander Monakov
On Fri, 6 Sep 2013, Wei Mi wrote: > SCHED_GROUP works after I add chain_to_prev_insn after > add_branch_dependences, in order to chain control dependences to prev > insn for sched group. chain_to_prev_insn is done in the end of deps_analyze_insn, why is that not sufficient? Alexander

[PATCH] Make IPA-CP work when there are SCCs of call graph nodes represented by a thunk

2013-09-10 Thread Martin Jambor
Hi, until recently we did not have thunks with incoming edges in the call graph. However, speculative devirtualization can introduce them which may lead to creation of new SCCs in the call graph. What is more, ipa_reduced_postorder called with reduce parameter set to true may decide to represent

Re: [patch] Remove unused macro and functions from tree-flow.h and tree-flow-inline.h

2013-09-10 Thread Jakub Jelinek
On Tue, Sep 10, 2013 at 07:42:42AM -0400, Andrew MacLeod wrote: > On 09/10/2013 01:27 AM, Jakub Jelinek wrote: > >On Mon, Sep 09, 2013 at 08:39:16PM -0600, Jeff Law wrote: > >>On 09/09/2013 06:59 PM, Andrew MacLeod wrote: > >>>Whilst poking around, I discovered these hast table functions and the >

Re: [PATCH] Make IPA-CP work when there are SCCs of call graph nodes represented by a thunk

2013-09-10 Thread Jan Hubicka
> Hi, > > until recently we did not have thunks with incoming edges in the call > graph. However, speculative devirtualization can introduce them which We did, just not very often. Normal devirtualization code can produce them, too. > may lead to creation of new SCCs in the call graph. What i

[PATCH] Fix pr58343

2013-09-10 Thread Jeff Law
As mentioned in the PR, we have a jump threading request with a loop header in the middle of the jump threading path. In the past this would have been rejected earlier but due to recent changes it gets registered. The code to update the CFG didn't know how to detect this particular case and

Re: [PATCH][RFC] Move IVOPTs closer to RTL expansion

2013-09-10 Thread Jeff Law
On 09/10/2013 02:00 AM, Richard Biener wrote: On Mon, 9 Sep 2013, Steven Bosscher wrote: On Mon, Sep 9, 2013 at 10:01 AM, Richard Biener wrote: First, the loop passes that at the moment preceede IVOPTs leave around IL that is in desparate need of basic re-optimization like CSE, constant propag

Re: [AArch64] Prevent generic pipeline description from dominating other pipeline descriptions.

2013-09-10 Thread Marcus Shawcroft
On 10 September 2013 09:23, James Greenhalgh wrote: > 2013-09-10 James Greenhalgh > > * config/aarch64/aarch64.md (generic_sched): New. > * config/aarch64/aarch64-generic.md (load): Make conditional > on generic_sched attribute. > (nonload): Likewise. OK /Marcu

Re: [PATCH v2 0/6] Port symtab/cgraph/varpool nodes to use C++ inheritance; rename types.

2013-09-10 Thread Jan Hubicka
> Here's version 2 of this patch series. > > This is now 6 patches. > > The first two patches correspond to the two patches from the original > patch series (and must both be applied together to make sense). They > convert cgraph_node and varpool_node to inherit from symtab_node_base, > eliminat

Re: [PATCH i386 2/8] [AVX512] Add mask registers.

2013-09-10 Thread Kirill Yukhin
Hello Richard, Thanks for inputs. On 09 Sep 10:39, Richard Henderson wrote: > gen_andhi_1 is not used, nor is it likely to be in the future, therefore this > should still have "*". We're using it in patch 6/8 when introducing plugins: + { OPTION_MASK_ISA_AVX512F, CODE_FOR_andhi_1, "__builtin_ia3

Re: [patch] Remove unused macro and functions from tree-flow.h and tree-flow-inline.h

2013-09-10 Thread Andrew MacLeod
On 09/10/2013 08:30 AM, Jakub Jelinek wrote: On Tue, Sep 10, 2013 at 07:42:42AM -0400, Andrew MacLeod wrote: On 09/10/2013 01:27 AM, Jakub Jelinek wrote: On Mon, Sep 09, 2013 at 08:39:16PM -0600, Jeff Law wrote: On 09/09/2013 06:59 PM, Andrew MacLeod wrote: Whilst poking around, I discovered

RE: [PATCH][ARM] Improve cond_exec opportunities for immediate shifts for -mrestrict-it

2013-09-10 Thread Kyrill Tkachov
> On 09/09/13 17:32, Kyrylo Tkachov wrote: > > Hi all, > > > > Shift operations with an immediate can generate a 16-bit encoding when > > the immediate is 5-bit wide, i.e. in the range [0-31]. Therefore we > > can use them in IT blocks even with the -mrestrict-it rules. > > > > I decided to reuse t

Re: [patch] Remove unused macro and functions from tree-flow.h and tree-flow-inline.h

2013-09-10 Thread Jakub Jelinek
On Tue, Sep 10, 2013 at 09:04:41AM -0400, Andrew MacLeod wrote: > Really? If it were useful I would have thought they'd be using it now. > > In any case, it doesn't belong in tree-flow.h.. . shouldn't these > functions and macros be in hashtab.h then? It doesn't belong to hashtab.h, because that

Re: [ping][PATCH][1 of 2] Add value range info to SSA_NAME for zero sign extension elimination in RTL

2013-09-10 Thread Richard Biener
On Tue, 10 Sep 2013, Kugan wrote: > On 09/09/13 19:01, Richard Biener wrote: > > On Mon, Sep 9, 2013 at 1:09 AM, Kugan > > wrote: > > > > > > On 06/09/13 16:16, Richard Biener wrote: > > > > > > > > On 9/3/13 2:15 PM, Kugan wrote: > > > > > > > > > > Thanks Richard for reviewing. > > > > > >

Re: [PATCH][RFC] Move IVOPTs closer to RTL expansion

2013-09-10 Thread Richard Biener
On Tue, 10 Sep 2013, Jeff Law wrote: > On 09/10/2013 02:00 AM, Richard Biener wrote: > > On Mon, 9 Sep 2013, Steven Bosscher wrote: > > > > > On Mon, Sep 9, 2013 at 10:01 AM, Richard Biener wrote: > > > > > > > First, the loop passes that at the moment preceede IVOPTs leave > > > > > > > around I

Re: [PATCH][RFC] Move IVOPTs closer to RTL expansion

2013-09-10 Thread Jeff Law
On 09/10/2013 07:23 AM, Richard Biener wrote: update-ssa for example just queues to release SSA names. But yes, re-using SSA names from a freelist has issues and advantages ;) Yup. I've wondered from time to time if we could do away with the name manager -- IIRCC it was written when we took e

RE: [PATCH GCC]Catch more MEM_REFs sharing common addressing part in gimple strength reduction

2013-09-10 Thread Bill Schmidt
On Tue, 2013-09-10 at 15:41 +0800, bin.cheng wrote: > On Mon, Sep 9, 2013 at 11:35 PM, Bill Schmidt > wrote: > > > >> > I rely on size_binop to convert T2 into sizetype, because T2' may be in > >> > other kind of type. Otherwise there will be ssa_verify error later. > >> > >> OK, I see now.

Re: [PATCH][ARM] Improve cond_exec opportunities for immediate shifts for -mrestrict-it

2013-09-10 Thread Richard Earnshaw
On 10/09/13 14:11, Kyrylo Tkachov wrote: >> On 09/09/13 17:32, Kyrylo Tkachov wrote: >>> Hi all, >>> >>> Shift operations with an immediate can generate a 16-bit encoding when >>> the immediate is 5-bit wide, i.e. in the range [0-31]. Therefore we >>> can use them in IT blocks even with the -mrestr

Re: Dump framework newline cleanup

2013-09-10 Thread Teresa Johnson
On Mon, Sep 9, 2013 at 9:55 PM, Xinliang David Li wrote: > looks fine to me. > > In the long run, I wonder if the machinery in diagnostic messages can > be reused for opt-info dumping -- i.e., support different streams. It > has many nice features including %qD specifier for printing tree > decls.

Re: [PATCH][RFC] Move IVOPTs closer to RTL expansion

2013-09-10 Thread Richard Biener
On Tue, 10 Sep 2013, Jeff Law wrote: > On 09/10/2013 07:23 AM, Richard Biener wrote: > > > > update-ssa for example just queues to release SSA names. But yes, > > re-using SSA names from a freelist has issues and advantages ;) > Yup. I've wondered from time to time if we could do away with the

Re: [PATCH v2 1/6] Convert symtab, cgraph and varpool nodes into a real class hierarchy

2013-09-10 Thread Jan Hubicka
> This patch is the handwritten part of the conversion of these types > to C++; it requires the followup patch, which is autogenerated. > > It converts: > struct GTY(()) symtab_node_base > to: > class GTY((user)) symtab_node_base > > and converts: > struct GTY(()) cgraph_node > to: > stru

Re: [PATCH v2 3/6] Split symtab_node declarations onto multiple lines

2013-09-10 Thread Jan Hubicka
> Amongst other things, the rename_symtab.py script converts > "symtab_node" to "symtab_node *". > > This will lead to broken code on declarations that declare > more than one variable (only the first would get a "*"), so split > up such declarations. > > gcc/ > * cgraphunit.c (analyze_func

Re: [PATCH v2 2/6] Automated conversion of symtab to class hierarchy

2013-09-10 Thread Jan Hubicka
> This patch is 439KB in size, so to avoid mailing-list limitations I've > uploaded it to: > http://dmalcolm.fedorapeople.org/gcc/large-patches/fd607e77883b8d3f8fb7c8091d0626dbbd31b9a5-0002-Automated-conversion-of-symtab-to-class-hierarchy.patch OK, thanks! Honza

Re: [PATCH v2 4/6] Remove symtab_node and const_symtab_node typedefs.

2013-09-10 Thread Jan Hubicka
> gcc/ > > * ipa-ref.h (symtab_node): Remove typedef to pointer type, as it > clashes with the preferred name for the base class. > (const_symtab_node): Remove redundant typedef. This is OK, too. Actually it is not only clash - it was really inconsistent to write symtab_node nod

Re: [PATCH v2 5/6] Automated renaming of symtab types

2013-09-10 Thread Jan Hubicka
> gcc/ > > Patch autogenerated by rename_symtab.py from > https://github.com/davidmalcolm/gcc-refactoring-scripts > revision 714e57b66b08fb29f47826fbb642707bdfa19520 OK, thanks! Honza

Re: [PATCH v2 6/6] Update hand-written GTY routines for type renaming

2013-09-10 Thread Jan Hubicka
> * cgraph.c (gt_ggc_mx): Update for renaming of symtab_node_base > to symtab_node > (gt_pch_nx): Likewise. > --- > gcc/cgraph.c | 24 > 1 file changed, 12 insertions(+), 12 deletions(-) > > diff --git a/gcc/cgraph.c b/gcc/cgraph.c > index bb2626d..abbff

Re: [ping][PATCH][1 of 2] Add value range info to SSA_NAME for zero sign extension elimination in RTL

2013-09-10 Thread Jakub Jelinek
On Tue, Sep 10, 2013 at 03:17:50PM +0200, Richard Biener wrote: > > unsigned short s; > > s.1_3 = (short unsigned int) l.0_2; > > l.0_2: VARYING > > s.1_3: [0, +INF] > > Note that [0, +INF] is the same as VARYING and [-INF, +INF] and VARYING for > l.0_2 is the same as [-INF, +INF]. Yeah, I don't

Re: [patch] Remove unused macro and functions from tree-flow.h and tree-flow-inline.h

2013-09-10 Thread Andrew MacLeod
On 09/10/2013 09:15 AM, Jakub Jelinek wrote: On Tue, Sep 10, 2013 at 09:04:41AM -0400, Andrew MacLeod wrote: Really? If it were useful I would have thought they'd be using it now. In any case, it doesn't belong in tree-flow.h.. . shouldn't these functions and macros be in hashtab.h then? It do

Re: Factor gimple structures out of gimple.h

2013-09-10 Thread Andrew MacLeod
On 09/09/2013 05:00 AM, Richard Biener wrote: More discussion on rationale at the thread: http://gcc.gnu.org/ml/gcc-patches/2013-09/msg00300.html Tested on x86_64. The split looks ok to me, given the plan. But as there is still discussion around it please hold off until that died down with a

Fix overactive devirtualization to external functions

2013-09-10 Thread Jan Hubicka
Hi, fold_ctor_reference expects VAR or FUNCTION_DECL as FROM_DECL parameter. gimple_get_virt_method_for_binfo instead passes expression (pointer_plus_expr (addr_expr vtable_decl) (integer_cst XXX)) This bug makes can_refere_from_current_unit_p to mistakely think that the references are safe because

Consider polymorphic call targets to be part of boundary

2013-09-10 Thread Jan Hubicka
Hi, this patch adds polymorphic call targets into the boundary of an unit. This enables more late devirtualization. I briefly measured size on effect of WPA->ltrans files on firefox and they still seem to be around 2GB. Bootstrapped/regtested x86_64-linux, comitted. * lto-cgraph.c: Inc

[i386, doc] Add documentation for fxsr, xsave, xsaveopt

2013-09-10 Thread Alexander Ivchenko
Hi, I've added references to fxsr, xsave and xsaveopt options and builtins to doc/[invoke,extend].texi. Is it OK? doc_fxsr_xsave_fxsave.patch Description: Binary data

Re: [i386, AVX-512F, pr58269] Partial fix for PR58269: properly initialize last EXT REX SSE register.

2013-09-10 Thread Jack Howarth
On Fri, Sep 06, 2013 at 11:04:45AM +0100, Iain Sandoe wrote: > Hi Kirill, > > Thanks for Ilya's input on the PR thread. > > We've done some testing/checking across the Darwin versions last night and > I've bootstrapped all langs including Ada, and tested the patch below > (together with the fra

[Ada] Missing aspect specifications on bodies, renamings and stubs

2013-09-10 Thread Arnaud Charlet
This patch allows the compiler to parse and analyze aspect specifications that apply to package bodies, protected bodies, task bodies, [generic] renaming declarations, and body stubs. -- Source -- -- bodies.adb package body Bodies with Warnings => On is protected bo

[Ada] Proper handling of aspects on a compilation unit package instance

2013-09-10 Thread Arnaud Charlet
This patch implements properly the handling of categorization aspects that apply to a package instantiation. Compiling inst.ads must yield: inst.ads:1:06: cannot depend on "Gen" (wrong categorization) inst.ads:1:06: pure unit cannot depend on non-pure unit generic type T is private; package G

[Ada] Don't allow REASON parameter for pragma Warnings in compiler unit

2013-09-10 Thread Arnaud Charlet
This patch forbids the use of the pragma Warnings REASON parameter in compiler units (since this would cause bootstrap issues). This is for internal development purposes only. No functionality change. Tested on x86_64-pc-linux-gnu, committed on trunk 2013-09-10 Robert Dewar * sem_prag

[Ada] Warn if -gnateE specified and cannot be supported

2013-09-10 Thread Arnaud Charlet
This implements a warning that is output if the switch -gnateE (Extra Exception Information) is specified on the command line, and the configuration in use does not support it (true of configurable run-times with the restriction No_Exception_Handlers or No_Exception_Propagation. If a trivial progra

[Ada] Infinite loop while analysing aspect Global

2013-09-10 Thread Arnaud Charlet
This patch corrects the check of a Global item of mode In_Out or Out that appear as an input in the Global aspect of an enclosing subprogram. Prior to this patch, the check caused an infinite loop in certain scenarios. -- Source -- -- stack_overflow.adb procedure Stack

[Ada] Add For_Each and Sort_Table procedures to GNAT.Table

2013-09-10 Thread Arnaud Charlet
This patch adds the procedures For_Each and Sort_Table to GNAT.Table making its interface more similar to that of GNAT.Dynamic_Tables. The following test: 1. with GNAT.Table; 2. with Text_IO; use Text_IO; 3. procedure GTableTestFS is 4.package T is new GNAT.Table 5.

[Ada] Give error if both -gnatR and -gnatc given

2013-09-10 Thread Arnaud Charlet
The use of -gnatR in check semantics only (-gnatc) mode does not work since code must be generated for -gnatR to work. The attempt to combine the two switches is now properly diagnosed. The following trivial package 1. package gnatrgnatc is 2. end; If compiled with switches -gnatc -gnat

[Ada] Improve error msgs for Ada 2012 feature not in Ada 2012 mode

2013-09-10 Thread Arnaud Charlet
Previously if an Ada 2012 feature was used in an earlier Ada mode, the error message always advised the use of the -gnat2012 switch. But that is not helpful if the mode was set by an explicit use of pragma Ada_xx. This patch improves the error message in this case by pointing to the relevant pragma

[Ada] Avoid reading past end of file when checking for BOM

2013-09-10 Thread Arnaud Charlet
This patch makes sure that the routine Check_For_BOM cannot read past the end of file. In practice it is probably the case that this cannot cause a real error, but valgrind can see that this is happening. So this change will avoid the annoying false positive from valgrind. It's not worth setting up

[Ada] Don't delete real errors with specific warning control

2013-09-10 Thread Arnaud Charlet
The pragma Warnings (Off, msg) is intended only to delete warnings, but it was deleting real errors as well. This patch corrects that mistake. The following compiles with the indicated message (previously this message was suppressed). 1. procedure ErrMsgDelete is 2.X : Integer;

[x86,PATCH] Simple performance tuning for SLM.

2013-09-10 Thread Yuri Rumyantsev
Hi All, Here is a simple fix which improves SLM performance by avoiding memory operand in conditional move instructions. Our measurements have shown significant speedup (~+10%) for routelookup bench from eembc2.0 suite. Bootstrapping and regression testing were successful for x86-64. Is it OK fo

[Ada] Placement of aspect/pragma SPARK_Mode

2013-09-10 Thread Arnaud Charlet
This patch modifies the processing of aspect/pragma SPARK_Mode to properly handle the cases where the aspect/pragma apply to a [library-level] package or subprogram [body]. -- Source -- -- func.ads function Func return Integer with SPARK_Mode => On; -- pack.adb pack

[Ada] Resolution of parameterless calls that return arrays

2013-09-10 Thread Arnaud Charlet
This patch handles properly additional constructs of the form F.all (I), where F is an access_to_function that can be called without parameters, and that returns an array type. Compiling err.adb must yield: err.adb:23:09: too many arguments in call to "A" err.adb:24:09: too many arguments in cal

[Ada] Constraints on class-wide types are ignored

2013-09-10 Thread Arnaud Charlet
A class-wide type has anonymous discriminants, because type extensions can add discriminants at will. A constraint on a class-wide type is thus a partial constraint that applies only to the known discriminants of the root type. Such a partial constraint is a language pathology that the ARG has dec

Re: [PATCH i386 2/8] [AVX512] Add mask registers.

2013-09-10 Thread Richard Henderson
On 09/10/2013 05:57 AM, Kirill Yukhin wrote: > Do you still think we need "*"? No, I suppose that's fine. r~

Re: PATCH: PR other/58374: Wrong target check in configure.ac in libvtv

2013-09-10 Thread Caroline Tice
On Tue, Sep 10, 2013 at 9:10 AM, Jakub Jelinek wrote: > On Tue, Sep 10, 2013 at 08:55:35AM -0700, Caroline Tice wrote: >> Based on the errors you are reporting, my guess is that you did not >> configure with --enable-vtable-verifiy. The testsuite in libvtv will > > I'm not, but it doesn't make se

[PATCH GCC] Tweak gimple-ssa-strength-reduction.c:backtrace_base_for_ref () to cover different cases as seen on AArch64

2013-09-10 Thread Yufeng Zhang
Hi, Following Bin's patch in http://gcc.gnu.org/ml/gcc-patches/2013-09/msg00695.html, this patch tweaks backtrace_base_for_ref () to strip of any widening conversion after the first TREE_CODE check fails. Without this patch, the test (gcc.dg/tree-ssa/slsr-39.c) in Bin's patch will fail on AA

Re: PATCH: PR other/58374: Wrong target check in configure.ac in libvtv

2013-09-10 Thread Caroline Tice
On Tue, Sep 10, 2013 at 3:17 AM, Jakub Jelinek wrote: > On Mon, Sep 09, 2013 at 01:56:29PM -0700, Caroline Tice wrote: >> The patch looks good to me, but somebody else needs to approve it. > > Why? You are listed as libvtv maintainer, the patch is fully contained in > libvtv, thus you can review

Re: C++ demangler fix

2013-09-10 Thread Jakub Jelinek
On Wed, Sep 04, 2013 at 03:29:43PM +0100, Gary Benson wrote: > I've added the result to the demangler test suite, but I know of > no way to check the validity of the demangled symbol other than by > inspection (and I am no expert here!) If anybody knows a way to > check this then please let me kno

Re: [patch] Remove unused macro and functions from tree-flow.h and tree-flow-inline.h

2013-09-10 Thread Tom Tromey
> "Jakub" == Jakub Jelinek writes: Jakub> On Tue, Sep 10, 2013 at 09:04:41AM -0400, Andrew MacLeod wrote: >> Really? If it were useful I would have thought they'd be using it now. >> >> In any case, it doesn't belong in tree-flow.h.. . shouldn't these >> functions and macros be in hashtab.h

[Ada] Fixes in handling of spark code

2013-09-10 Thread Arnaud Charlet
This patch corrects the analysis of pragma SPARK_Mode to handle the case where the pragma appears without an argument. It also corrects the analysis of aspect/pragma Global to propery process an item that appears as a selected component and is later converted into an expanded name. Tested on x86_

Re: [PATCH, AArch64] Fix the pointer-typed function argument expansion in aarch64_simd_expand_args

2013-09-10 Thread Yufeng Zhang
Oops, now attach the correct patch and change log. Thanks, Yufeng gcc/ * config/aarch64/aarch64-builtins.c (aarch64_simd_expand_args): Call aarch64_simd_expand_args to update op[argc]. On 09/10/13 18:08, Yufeng Zhang wrote: This patch fixes a number of test failures in gcc.ta

Re: [1/4] Using gen_int_mode instead of GEN_INT

2013-09-10 Thread James Greenhalgh
Hi, This seems to have caused PR58373. The bug occurs where GEN_INT would previously have then been used to build a constant of vector mode. These pop in a few places when building for AArch64, though I did the debugging using gcc.target/aarch64/vect-fcm-eq-d.c Here we could get in to the situa

patch implementing a new version of optional reloads

2013-09-10 Thread Vladimir Makarov
The following patch switches on optional reloads. The optional reload patch resolves PR55342. The original code was switched off as it resulted in new GCC failures. The current code contains a new version of optional reload implementation. I've tried many different strategies to use optional

[PATCH, ARM] PR58361 fix failure to conditionalize VFP instruction

2013-09-10 Thread Richard Earnshaw
PR target/58361 is a wrong code bug where we treat an instruction as conditional but fail to put the conditional marker on the assembly. Since the instruction can be correctly executed as a conditional instruction, the fix is to enable that and to put out the condition code accordingly. The partic

Re: RFC: patch to build GCC for arm with LRA

2013-09-10 Thread Yvan Roux
> Yeah, but that's because strip_address_mutations doesn't consider > SIGN_EXTRACT to be a "mutation" as things stand. My point was that > I think it should, at least for the special extract-from-lsb case. > It then shouldn't be necessary to handle SIGN_EXTRACT in the other > address-analysis rout

Re: [PATCH i386 2/8] [AVX512] Add mask registers.

2013-09-10 Thread Kirill Yukhin
Hello, On 10 Sep 09:17, Richard Henderson wrote: > On 09/10/2013 05:57 AM, Kirill Yukhin wrote: > > + { OPTION_MASK_ISA_AVX512F, CODE_FOR_andhi_1, "__builtin_ia32_kandhi", > > IX86_BUILTIN_KAND16, UNKNOWN, (int) HI_FTYPE_HI_HI }, > > Alternately, why not use the standard CODE_FOR_andhi3 expander

Re: [x86,PATCH] Simple performance tuning for SLM.

2013-09-10 Thread Uros Bizjak
On Tue, Sep 10, 2013 at 4:56 PM, Yuri Rumyantsev wrote: > Here is a simple fix which improves SLM performance by avoiding memory > operand in conditional move instructions. Our measurements have shown > significant speedup (~+10%) for routelookup bench from eembc2.0 suite. > > Bootstrapping and r

Re: PATCH: PR other/58374: Wrong target check in configure.ac in libvtv

2013-09-10 Thread Caroline Tice
I believe I know how to fix this problem; I am in the middle of testing my patch. I should be able to submit the patch either late today or early tomorrow. In the meantime, if this is impacting your ability to make progress, you can configure gcc with --disable-libvtv and that should remove the p

Re: [PATCH i386 2/8] [AVX512] Add mask registers.

2013-09-10 Thread Richard Henderson
On 09/10/2013 11:25 AM, Kirill Yukhin wrote: > Hello, > On 10 Sep 09:17, Richard Henderson wrote: >> On 09/10/2013 05:57 AM, Kirill Yukhin wrote: >>> + { OPTION_MASK_ISA_AVX512F, CODE_FOR_andhi_1, "__builtin_ia32_kandhi", >>> IX86_BUILTIN_KAND16, UNKNOWN, (int) HI_FTYPE_HI_HI }, >> >> Alternately

Re: RFC: patch to build GCC for arm with LRA

2013-09-10 Thread Richard Sandiford
Yvan Roux writes: >> Yeah, but that's because strip_address_mutations doesn't consider >> SIGN_EXTRACT to be a "mutation" as things stand. My point was that >> I think it should, at least for the special extract-from-lsb case. >> It then shouldn't be necessary to handle SIGN_EXTRACT in the other

Re: [PATCH i386 2/8] [AVX512] Add mask registers.

2013-09-10 Thread Richard Henderson
On 09/10/2013 05:57 AM, Kirill Yukhin wrote: > + { OPTION_MASK_ISA_AVX512F, CODE_FOR_andhi_1, "__builtin_ia32_kandhi", > IX86_BUILTIN_KAND16, UNKNOWN, (int) HI_FTYPE_HI_HI }, Alternately, why not use the standard CODE_FOR_andhi3 expander? r~

Re: [1/4] Using gen_int_mode instead of GEN_INT

2013-09-10 Thread Richard Sandiford
James Greenhalgh writes: > This seems to have caused PR58373. The bug occurs where GEN_INT would > previously have then been used to build a constant of vector mode. > > These pop in a few places when building for AArch64, though I did > the debugging using gcc.target/aarch64/vect-fcm-eq-d.c > > H

Re: [PATCH, PR 57748] Check for out of bounds access

2013-09-10 Thread Martin Jambor
Hi, On Fri, Sep 06, 2013 at 11:19:18AM +0200, Richard Biener wrote: > On Fri, Sep 6, 2013 at 10:35 AM, Bernd Edlinger > wrote: > > Richard, > > > >> But the movmisalign path skips all this code and with the > >> current code thinks the actual access is in the mode of the > >> whole structure. (an

[c++-concepts] template parameter constraints

2013-09-10 Thread Andrew Sutton
I added a new macro to replace the use of TREE_TYPE to get constraints. It's called TEMPLATE_PARMS_CONSTRAINTS. Patch attached: 2013-09-10 Andrew Sutton * gcc/cp/cp-tree.h (TEMPLATE_PARMS_CONSTRAINTS): New. * gcc/cp/parser.c (cp_parser_template_declaration_after_export), (cp_par

Re: C++ demangler fix

2013-09-10 Thread Jakub Jelinek
On Tue, Sep 10, 2013 at 08:36:02PM +0200, Paolo Carlini wrote: > On 09/10/2013 05:34 PM, Jakub Jelinek wrote: > >On Wed, Sep 04, 2013 at 03:29:43PM +0100, Gary Benson wrote: > >>I've added the result to the demangler test suite, but I know of > >>no way to check the validity of the demangled symbol

Re: C++ demangler fix

2013-09-10 Thread Paolo Carlini
On 09/10/2013 08:38 PM, Jakub Jelinek wrote Agreed, can you please revert it? Sure, I'll do that momentarily. Paolo.

Re: C++ demangler fix

2013-09-10 Thread Paolo Carlini
Hi, On 09/10/2013 05:34 PM, Jakub Jelinek wrote: On Wed, Sep 04, 2013 at 03:29:43PM +0100, Gary Benson wrote: I've added the result to the demangler test suite, but I know of no way to check the validity of the demangled symbol other than by inspection (and I am no expert here!) If anybody kno

[patch libstdc++]: Fix Bug 54314 - [4.8 Regression] undefined references to 'construction vtable for std::ostream-in-std::basic_ostringstream, std::allocator >'

2013-09-10 Thread Kai Tietz
Hi, this seems to be a trivial one. ChangeLog 2013-09-10 Kai Tietz PR/54314 * config/abi/pre/gnu-versioned-namespace.ver: Add thunk _ZTv0_n12_NS* like in gnu,ver. Tested for i686-w64-mingw32, x86_64-w64-mingw32. Ok for apply? Regards, Kai Index: config/abi/pre/gnu-versioned-n

[patch 2/2] tree-flow.h restructuring

2013-09-10 Thread Andrew MacLeod
This splits out tree-ssaname related things to tree-ssanames.h. This is then included from tree-ssa.h similar treatment can be given to tree-phinodes.c I notice a number of the other ssa passes only export a couple of functions, and thats it.. no structs or anything like that. (like tree-ss

Enable ipa-deivrt with LTO

2013-09-10 Thread Jan Hubicka
Hi, All the latent issues wthat ipa-devirt has triggered has been hopefully fixed. So I am enabling ipa-devirt with LTO. To answer original David's comment on non-LTO performance, I did not really noticed any significant improvements/dergradations at -O2 with our benchmarks (SPEC2k, 2k6 and C++

Re: crash fix for unhanded operation

2013-09-10 Thread Mike Stump
On Sep 9, 2013, at 4:49 PM, Mike Stump wrote: >> I don't see how it can be appropriate here; my impression >> is that this code should never fail for any compiler input, Oh, I might have missed what you meant by this… If so, sorry… The nicest of options would be to generate a libcall for the

[PATCH] Fix build_range_check (PR tree-optimization/58385)

2013-09-10 Thread Jakub Jelinek
Hi! If exp has side effects, for [-,-] ranges we would optimize them away. Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk/4.8? 2013-09-10 Jakub Jelinek PR tree-optimization/58385 * fold-const.c (build_range_check): If both low and high are NU

[PATCH, AArch64] Fix the pointer-typed function argument expansion in aarch64_simd_expand_args

2013-09-10 Thread Yufeng Zhang
This patch fixes a number of test failures in gcc.target/aarch64/v*.c in ILP32. The corresponding RTL patterns for some load/store builtins have Pmode (i.e. DImode) specified for their address operands. However, coming from a pointer-typed function argument, op[argc] will have SImode in ILP3

[google] record system paths (isystem) in module infos (LIPO mode)

2013-09-10 Thread Xinliang David Li
The following patch enables GCC to record system include paths in module infos. This allows more precise parsing context to be established when compiling auxiliary modules -- FE behaves slightly differently when parsing system headers. There are also a couple of other cleanups in the patch. David

Re: PATCH: PR other/58374: Wrong target check in configure.ac in libvtv

2013-09-10 Thread Jakub Jelinek
On Tue, Sep 10, 2013 at 08:55:35AM -0700, Caroline Tice wrote: > Based on the errors you are reporting, my guess is that you did not > configure with --enable-vtable-verifiy. The testsuite in libvtv will I'm not, but it doesn't make sense if you don't configure gcc in certain non-default way, you

Re: Fwd: [PATCH] Scheduling result adjustment to enable macro-fusion

2013-09-10 Thread Wei Mi
Because deps_analyze_insn only analyzes data deps but no control deps. Control deps are included by add_branch_dependences. Without the chain_to_prev_insn in the end of add_branch_dependences, jmp will be control dependent on every previous insn in the same bb, and the cmp and jmp group could still

Re: PATCH: PR other/58374: Wrong target check in configure.ac in libvtv

2013-09-10 Thread H.J. Lu
On Tue, Sep 10, 2013 at 8:55 AM, Caroline Tice wrote: > On Tue, Sep 10, 2013 at 3:17 AM, Jakub Jelinek wrote: >> On Mon, Sep 09, 2013 at 01:56:29PM -0700, Caroline Tice wrote: >>> The patch looks good to me, but somebody else needs to approve it. >> >> Why? You are listed as libvtv maintainer, t

Re: [1/4] Using gen_int_mode instead of GEN_INT

2013-09-10 Thread James Greenhalgh
On Tue, Sep 10, 2013 at 08:09:42PM +0100, Richard Sandiford wrote: > Sorry for the breakage. gen_int_mode and GEN_INT really are only for > scalar integers though. (So is plus_constant.) Vector constants should > be CONST_VECTORs rather than CONST_INTs. > > I think the gcc.target/aarch64/vect-f

Re: [i386, doc] Add documentation for fxsr, xsave, xsaveopt

2013-09-10 Thread Uros Bizjak
Hello! > I've added references to fxsr, xsave and xsaveopt options and builtins > to doc/[invoke,extend].texi. > > Is it OK? > > 2013-09-10 Alexander Ivchenko > > * doc/invoke.texi: Document fxsr, xsave and xsaveopt options. > * doc/extend.texi: Document fxsr, xsave and xsaveopt builtins. Pl

Re: [c++-concepts] template parameter constraints

2013-09-10 Thread Gabriel Dos Reis
Andrew Sutton writes: | I added a new macro to replace the use of TREE_TYPE to get | constraints. It's called TEMPLATE_PARMS_CONSTRAINTS. Patch attached: | | 2013-09-10 Andrew Sutton | * gcc/cp/cp-tree.h (TEMPLATE_PARMS_CONSTRAINTS): New. | * gcc/cp/parser.c (cp_parser_template_declar

  1   2   >