[PATCH] Remove old pointer conversion special-case

2014-05-08 Thread Richard Biener
). Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-05-08 Richard Biener rguent...@suse.de * gimple-fold.c (gimple_fold_stmt_to_constant_1): Remove pointer propagation special-case. Index: gcc/gimple-fold.c

[PATCH] Fix oversight in call gimplification

2014-05-08 Thread Richard Biener
Richard Biener rguent...@suse.de * gimplify.c (gimplify_call_expr): Use saved fnptrtype for looking at TYPE_ARG_TYPES. Index: gcc/gimplify.c === --- gcc/gimplify.c (revision 210207) +++ gcc/gimplify.c (working

[PATCH] Improve and simplify VN expression combining

2014-05-08 Thread Richard Biener
Richard Biener rguent...@suse.de * tree-ssa-sccvn.c (vn_get_expr_for): Valueize operands before folding the expression. (valueize_expr): Remove. (visit_reference_op_load): Do not valueize the result of vn_get_expr_for. (simplify_binary_expression

[PATCH][1/n][RFC] Make FRE/PRE somewhat predicate aware

2014-05-08 Thread Richard Biener
obvious candidate is the alias walker which doesn't have to consider unreachable paths when walking into virtual PHIs. The patch will likely get some more cleanups (due to the hack in set_ssa_val_to). Comments still welcome. Thanks, Richard. 2014-05-08 Richard Biener rguent...@suse.de

[PATCH] Remove tree-ssa-propagate vectors out of GC space

2014-05-09 Thread Richard Biener
Boostrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-05-09 Richard Biener rguent...@suse.de * Makefile.in (GTFILES): Remove tree-ssa-propagate.c. * tree-ssa-propagate.c: Do not include gt-tree-ssa-propagate.h. (interesting_ssa_edges

Re: [PATCH, Pointer Bounds Checker 1/x] Pointer bounds type and mode

2014-05-09 Thread Richard Biener
On Thu, May 8, 2014 at 9:45 PM, H.J. Lu hjl.to...@gmail.com wrote: On Thu, May 8, 2014 at 12:28 PM, Jeff Law l...@redhat.com wrote: On 05/08/14 02:17, Ilya Enkovich wrote: Right. Richi explicitly wanted the entire set approved before staging in any of the bits. I thought it would be

Re: [PATCH 1/3] Handwritten part of conversion of gimple to gimple_stmt *

2014-05-09 Thread Richard Biener
On Fri, May 9, 2014 at 8:49 AM, Jeff Law l...@redhat.com wrote: On 05/02/14 15:56, David Malcolm wrote: gcc/ * coretypes.h (gimple): Drop typedef. (const_gimple): Likewise. (gimple_seq): Convert from being a gimple to a gimple_stmt *. So instead, we just want to

Re: [PATCH] Fix cgraph dumping bug

2014-05-09 Thread Richard Biener
On May 9, 2014 5:53:06 PM CEST, Teresa Johnson tejohn...@google.com wrote: Fixed a place where the wrong dump file was being used, leading to an inconsistency and seg fault when dump_file was non-NULL but cgraph_dump_file was NULL. Bootstrapped and tested on x86-64-unknown-linux-gnu. Ok for

Re: PR 61136: wide-int fallout in int_const_binop_1

2014-05-11 Thread Richard Biener
On Sat, May 10, 2014 at 9:11 PM, Richard Sandiford rdsandif...@googlemail.com wrote: The wide-int version of int_const_binop_1 has: static tree int_const_binop_1 (enum tree_code code, const_tree arg1, const_tree parg2, int overflowable) { [...] tree type = TREE_TYPE

Re: Fix gcse leak

2014-05-11 Thread Richard Biener
On May 11, 2014 3:54:30 PM CEST, Steven Bosscher stevenb@gmail.com wrote: Hello, This patch plugs a GGC leak in gcse.c, which will hold on to test insn to save memory. But this results in holding on to entire RTL function bodies, the function's CFG, and a lot more. Fix is simple: Clear the

Re: [PATCH, PR52252] Vectorization for load/store groups of size 3.

2014-05-13 Thread Richard Biener
/vect/pr52252-ld.c:7:1: note: vectorized 0 loops in function. Rainer -- - Rainer Orth, Center for Biotechnology, Bielefeld University -- Richard Biener rguent...@suse.de SUSE / SUSE Labs SUSE LINUX

Re: [PATCH] Add missing -fdump-* options

2014-05-13 Thread Richard Biener
On Fri, May 9, 2014 at 5:54 PM, Teresa Johnson tejohn...@google.com wrote: I discovered that the support for the documented -fdump-* options optimized, missed, note and optall was missing. Added that and fixed a minor typo in the documentation. Bootstrapped and tested on

Re: [GSoC] use obstack in parse_c_expr

2014-05-13 Thread Richard Biener
On Fri, May 9, 2014 at 10:30 PM, Jeff Law l...@redhat.com wrote: On 04/25/14 05:39, Prathamesh Kulkarni wrote: On Thu, Apr 24, 2014 at 9:18 PM, Diego Novillo dnovi...@google.com wrote: Please remember to send patches to gcc-patches. I'm wondering if you couldn't just use std::string here.

Re: RFA: Fix type incompatibility in get_addr_base_and_unit_offset_1

2014-05-13 Thread Richard Biener
On Sat, May 10, 2014 at 9:19 PM, Richard Sandiford rdsandif...@googlemail.com wrote: get_addr_base_and_unit_offset_1 and get_ref_base_and_extent have similar code to handle array indices. The code in tree-dfa.c extends from the precision of the index, as before wide-int, but the tree-dfa.h

Re: [Ada] RFA: Add some missing integer_one_node conversions

2014-05-13 Thread Richard Biener
On Sat, May 10, 2014 at 9:25 PM, Richard Sandiford rdsandif...@googlemail.com wrote: While testing another patch, I hit cases where Ada was building or folding additions involving integer_one_node without converting it to the type of the other operand. This looked unintentional, since all

Re: [PATCH GCC]Pick up more address lowering cases for ivopt and tree-affine.c

2014-05-13 Thread Richard Biener
On Sun, May 11, 2014 at 2:49 PM, Bin.Cheng amker.ch...@gmail.com wrote: On Thu, May 8, 2014 at 5:08 PM, Bin.Cheng amker.ch...@gmail.com wrote: On Tue, May 6, 2014 at 6:44 PM, Richard Biener richard.guent...@gmail.com wrote: On Tue, May 6, 2014 at 10:39 AM, Bin.Cheng amker.ch...@gmail.com wrote

Re: [PATCH] Fix issue in uninit analysis (PR middle-end/61112)

2014-05-13 Thread Richard Biener
On Mon, May 12, 2014 at 5:42 AM, Patrick Palka patr...@parcs.ath.cx wrote: Hi, This patch fixes a bogus warning generated by -Wmaybe-uninitialized. The problem is that we sometimes fail to acknowledge a defining edge belonging to a control-dependence chain because we assume that each

Re: [PATCH 1/5] rm a bunch of _stat allocation functions

2014-05-13 Thread Richard Biener
On Tue, May 13, 2014 at 8:41 AM, tsaund...@mozilla.com wrote: From: Trevor Saunders tsaund...@mozilla.com Hi, basically this patch is unchanged from the last time I sent this series, except I reordered the includes in rtl.c to have ggc.h come before vec.h because vec.h declares some

Re: [PATCH 4/5] add finalizers to ggc

2014-05-13 Thread Richard Biener
On Tue, May 13, 2014 at 8:41 AM, tsaund...@mozilla.com wrote: From: Trevor Saunders tsaund...@mozilla.com This implements finalizers by keeping a list of registered finalizers and after every mark but before sweeping check to see if any of them are for unmarked blocks. This uses the two

[PATCH] Fix PR60973

2014-05-13 Thread Richard Biener
As discussed in the PR, tailcall settings have to be cleared by the inliner. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk and 4.9 branch. Richard. 2014-05-13 Richard Biener rguent...@suse.de PR ipa/60973 * tree-inline.c (remap_gimple_stmt): Clear

Re: [PATCH 0/3] Compile-time gimple checking v4

2014-05-13 Thread Richard Biener
On Tue, May 13, 2014 at 2:37 PM, Michael Matz m...@suse.de wrote: Hi, On Mon, 12 May 2014, David Malcolm wrote: The gfoo type names are pleasantly terse, though I'm a little unhappy about how they no longer match the prefix of the accessor functions e.g. gimple_switch_num_labels (const

Re: [PATCH 0/3] Compile-time gimple checking v4

2014-05-13 Thread Richard Biener
On Tue, May 13, 2014 at 3:27 PM, David Malcolm dmalc...@redhat.com wrote: On Tue, 2014-05-13 at 15:10 +0200, Richard Biener wrote: On Tue, May 13, 2014 at 2:37 PM, Michael Matz m...@suse.de wrote: Hi, On Mon, 12 May 2014, David Malcolm wrote: The gfoo type names are pleasantly terse

[PATCH][C-family] Fix PR61184

2014-05-14 Thread Richard Biener
-gnu, ok if that succeeds (I expect to have to adjust some testcases)? Thanks, Richard. 2014-05-14 Richard Biener rguent...@suse.de c-family/ * c-gimplify.c (c_gimplify_expr): Gimplify self-modify expressions using unsigned arithmetic if overflow does not wrap instead

Re: [build, lto-plugin] Check for -static-libgcc before use (PR lto/60981)

2014-05-14 Thread Richard Biener
On Wed, May 14, 2014 at 10:31 AM, Rainer Orth r...@cebitec.uni-bielefeld.de wrote: As reported in the PR, the lto-plugin may fail to link if the host compiler defines __GNUC__, but doesn't accept -static-libgcc (like recent versions of clang do). The following patch fixes this by explicitly

Re: [PATCH] Provide inlining context in strict-overflow warnings

2014-05-14 Thread Richard Biener
On Tue, May 13, 2014 at 9:27 PM, Florian Weimer fwei...@redhat.com wrote: Patterns that trigger the optimization and warning can form after inlining, and it can be rather difficult to figure out what exactly is causing the warning. The inlining context at least provides additional hints,

[PATCH][match-and-simplify] Fix call handling

2014-05-14 Thread Richard Biener
This fixes call handling. Committed to the branch. Richard. 2014-05-14 Richard Biener rguent...@suse.de * gimple-match-head.c (maybe_push_res_to_seq): Fix res != NULL case and add a comment. (gimple_match_and_simplify): Properly handle virtual operands when

[PATCH][match-and-simplify] Support re-simplification of two-arg builtins

2014-05-14 Thread Richard Biener
to the branch. Richard. 2014-05-14 Richard Biener rguent...@suse.de * gimple-match-head.c (REAL_CST_P): New predicate. (gimple_match_and_simplify): Support re-simplification of two-argument builtin functions. * match.pd: Add pattern simplifying pow (x, 0.5) to sqrt

[PATCH][RFC] Make FRE/PRE apply copy/constant propagation

2014-05-14 Thread Richard Biener
and uglinesses in the patch, but this is a state that passes bootstrap and regtest otherwise and thus ready. Any comments? Thanks, Richard. 2014-05-14 Richard Biener rguent...@suse.de * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Rewrite to propagate the VN result

Re: [PATCH] Fix (X C1) C2 folding (PR tree-optimization/61158)

2014-05-15 Thread Richard Biener
+foo (unsigned int x) +{ + return ((unsigned long long) x 0x00ffULL) 40; +} + +/* { dg-final { scan-tree-dump return 0; original { target { ilp32 || lp64 } } } } */ +/* { dg-final { cleanup-tree-dump original } } */ Jakub -- Richard Biener rguent...@suse.de SUSE

GCC 4.8.3 Status Report, branch frozen for release (2014-05-15)

2014-05-15 Thread Richard Biener
Status == The 4.8 branch is now frozen as I am preparing a first release candidate for 4.8.3. All patches to the branch now require explicit approval from release managers. Previous Report === https://gcc.gnu.org/ml/gcc/2014-05/msg00026.html

Re: [RFC] Using function clones for Pointer Bounds Checker

2014-05-15 Thread Richard Biener
On Thu, May 15, 2014 at 1:07 PM, Ilya Enkovich enkovich@gmail.com wrote: 2014-05-14 19:09 GMT+04:00 H.J. Lu hjl.to...@gmail.com: On Wed, May 14, 2014 at 1:18 AM, Ilya Enkovich enkovich@gmail.com wrote: 2014-05-13 23:21 GMT+04:00 Jeff Law l...@redhat.com: On 05/13/14 02:38, Ilya

[PATCH][match-and-simplify] match-and-simplify from fold_stmt

2014-05-15 Thread Richard Biener
This adds a dispatch from fold_stmt (!inplace for now) to match-and-simplify. Mainly to get more testing coverage. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-05-15 Richard Biener rguent...@suse.de * gimple-fold.c (fold_stmt_1): Dispatch

[PATCH] Make SCCVN constant-fold calls

2014-05-15 Thread Richard Biener
For some odd reason I didn't implement this earlier. This is one major source of 2nd-stage opportunities that come up when running two adjacent FRE passes. Bootstrap and regtest ongoing on x86_64-unknown-linux-gnu. Richard. 2014-05-15 Richard Biener rguent...@suse.de * tree-ssa

Re: [PATCH] Add support for -fno-sanitize-recover and -fsanitize-undefined-trap-on-error (PR sanitizer/60275)

2014-05-15 Thread Richard Biener
On Thu, 15 May 2014, Marek Polacek wrote: On Thu, May 15, 2014 at 01:42:20PM +0100, Richard Sandiford wrote: It's not, I'm seeing many /home/marek/src/gcc/gcc/wide-int.h:1734:7: runtime error: shift exponent 64 is too large for 64-bit type 'long unsigned int' plus I think I remember

Re: [PATCH, PR 61090] Pass gsi to build_ref_for_model in sra_modify_expr

2014-05-15 Thread Richard Biener
) { -- Richard Biener rguent...@suse.de SUSE / SUSE Labs SUSE LINUX Products GmbH - Nuernberg - AG Nuernberg - HRB 16746 GF: Jeff Hawn, Jennifer Guild, Felix Imendorffer

Re: [PATCH, PR 61085] Add missing type_preserved check

2014-05-15 Thread Richard Biener
On Thu, May 15, 2014 at 4:45 PM, Martin Jambor mjam...@suse.cz wrote: Hi, PR 61085 revealed that I forgot to put a type_preserved check to an important spot, namely to update_indirect_edges_after_inlining, which leads to wrong devirtualization because the function does not ignore jump

Re: avx runtime check

2014-05-16 Thread Richard Biener
On May 16, 2014 4:47:11 AM CEST, Mike Stump mikest...@comcast.net wrote: This reorders the avx checks and gates on a target triplet check before compiling any code. Can you explain why? Ok? diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index

Re: [PATCH] Make SCCVN constant-fold calls

2014-05-16 Thread Richard Biener
On Thu, 15 May 2014, Richard Biener wrote: For some odd reason I didn't implement this earlier. This is one major source of 2nd-stage opportunities that come up when running two adjacent FRE passes. Bootstrap and regtest ongoing on x86_64-unknown-linux-gnu. The following is what I have

Re: [PATCH][1/n][RFC] Make FRE/PRE somewhat predicate aware

2014-05-16 Thread Richard Biener
On Thu, 8 May 2014, Richard Biener wrote: Ok, not really predicate aware, but this makes value-numbering pessimistically handle non-executable edges. In the following patch groundwork is laid and PHI value-numbering is adjusted to take advantage of edges known to be not executable

Re: [PATCH] Fix PR54733 Optimize endian independent load/store

2014-05-16 Thread Richard Biener
On Fri, May 16, 2014 at 12:07 PM, Thomas Preud'homme thomas.preudho...@arm.com wrote: Ping? Sorry ... Best regards, Thomas Preud'homme -Original Message- From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- ow...@gcc.gnu.org] On Behalf Of Thomas Preud'homme Sent: Friday, May

Re: [GCC RFC]A new and simple pass merging paired load store instructions

2014-05-16 Thread Richard Biener
On Fri, May 16, 2014 at 12:10 PM, Bin.Cheng amker.ch...@gmail.com wrote: On Thu, May 15, 2014 at 6:31 PM, Oleg Endo oleg.e...@t-online.de wrote: Hi, On 15 May 2014, at 09:26, bin.cheng bin.ch...@arm.com wrote: Hi, Targets like ARM and AARCH64 support double-word load store instructions,

Re: add dbgcnt and opt-info support for devirtualization

2014-05-16 Thread Richard Biener
On Fri, May 16, 2014 at 1:54 AM, Xinliang David Li davi...@google.com wrote: Hi, debugging runtime bugs due to devirtualization can be hard for very large C++ programs with complicated class hierarchy. This patch adds the support to report this high level transformation via -fopt-info (not

Re: [PATCH] Fix PR54733 Optimize endian independent load/store

2014-05-16 Thread Richard Biener
On Fri, May 16, 2014 at 12:56 PM, pins...@gmail.com wrote: On May 16, 2014, at 3:48 AM, Richard Biener richard.guent...@gmail.com wrote: On Fri, May 16, 2014 at 12:07 PM, Thomas Preud'homme thomas.preudho...@arm.com wrote: Ping? Sorry ... Best regards, Thomas Preud'homme

Re: [PATCH] Fix PR54733 Optimize endian independent load/store

2014-05-16 Thread Richard Biener
On Fri, May 16, 2014 at 1:03 PM, Richard Biener richard.guent...@gmail.com wrote: On Fri, May 16, 2014 at 12:56 PM, pins...@gmail.com wrote: On May 16, 2014, at 3:48 AM, Richard Biener richard.guent...@gmail.com wrote: On Fri, May 16, 2014 at 12:07 PM, Thomas Preud'homme thomas.preudho

[PATCH] Fix one testcase from PR61194

2014-05-16 Thread Richard Biener
This fixes the non-regression testcase from PR61194 by also recognizing COND_EXPRs as sink for bool expressions in vectorizer pattern detection. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-05-16 Richard Biener rguent...@suse.de PR tree-optimization

Re: [PATCH (for next stage 1)] Add return type to gimple function dumps

2014-05-16 Thread Richard Biener
On Tue, Apr 29, 2014 at 5:01 PM, David Malcolm dmalc...@redhat.com wrote: On Tue, 2014-04-29 at 11:16 +0200, Richard Biener wrote: On Tue, Apr 29, 2014 at 2:58 AM, David Malcolm dmalc...@redhat.com wrote: On Thu, 2014-04-24 at 15:46 -0600, Jeff Law wrote: On 03/10/14 13:22, David Malcolm

Re: [PATCH][1/n][RFC] Make FRE/PRE somewhat predicate aware

2014-05-16 Thread Richard Biener
On May 16, 2014 7:07:11 PM CEST, Jeff Law l...@redhat.com wrote: On 05/16/14 02:02, Richard Biener wrote: Quiet as usual. Which strongly suggests folks trust you to do the right thing here :-) I think the FRE/PRE reference in $SUBJECT made me ignore the patch entirely -- my brain hurts when

Re: [PATCH] Fix ARM NAN fraction bits

2014-05-17 Thread Richard Biener
On May 17, 2014 12:22:23 AM CEST, Maciej W. Rozycki ma...@codesourcery.com wrote: On Fri, 16 May 2014, Joseph S. Myers wrote: 2014-05-16 Maciej W. Rozycki ma...@codesourcery.com PR libgcc/60166 * sysdeps/arm/soft-fp/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D)

Re: avx runtime check

2014-05-19 Thread Richard Biener
On Fri, May 16, 2014 at 4:20 PM, Mike Stump mikest...@comcast.net wrote: On May 15, 2014, at 11:52 PM, Richard Biener richard.guent...@gmail.com wrote: On May 16, 2014 4:47:11 AM CEST, Mike Stump mikest...@comcast.net wrote: This reorders the avx checks and gates on a target triplet check

Re: [C++ patch] Reduce vtable alignment

2014-05-19 Thread Richard Biener
On Fri, May 16, 2014 at 9:12 PM, Jan Hubicka hubi...@ucw.cz wrote: Hi, this patch makes also the rtti type info for A in the testcase: struct A { virtual void foo(void) {}; virtual void foo2(void) {}; virtual void foo3(void) {}; virtual void foo4(void) {}; virtual void

Re: [PATCH (for next stage 1)] Add return type to gimple function dumps

2014-05-19 Thread Richard Biener
On Fri, May 16, 2014 at 6:17 PM, David Malcolm dmalc...@redhat.com wrote: On Fri, 2014-05-16 at 14:59 +0200, Richard Biener wrote: On Tue, Apr 29, 2014 at 5:01 PM, David Malcolm dmalc...@redhat.com wrote: On Tue, 2014-04-29 at 11:16 +0200, Richard Biener wrote: On Tue, Apr 29, 2014 at 2:58

Re: Replace C/C++ void_zero_node with a VOID_CST tree code

2014-05-19 Thread Richard Biener
On Sat, May 17, 2014 at 10:15 AM, Richard Sandiford rdsandif...@googlemail.com wrote: The main thing keeping zero-precision wide-ints alive was void_zero_node, a tree used in the C and C++ frontends that has type VOID_TYPE but code INTEGER_CST. Richard B. asked me to replace the INTEGER_CST

Re: [C++ patch] Enable constructor decloning by default

2014-05-19 Thread Richard Biener
On Sun, May 18, 2014 at 9:32 PM, Jan Hubicka hubi...@ucw.cz wrote: Hi, this patch enables -fdeclone-ctor-dtor by default: I believe it is up to the optimizers to decide when the actual worker body should be inlined into the thunks. Bootstrapped/regtested x86_64-linux, OK? Please make sure

Re: add dbgcnt and opt-info support for devirtualization

2014-05-19 Thread Richard Biener
On Fri, May 16, 2014 at 11:19 PM, Xinliang David Li davi...@google.com wrote: Modified the patch according to yours and Richard's feedback. PTAL. ENOPATCH. Btw, I don't see any issue with leaking node order to opt-report. Richard. thanks, David On Fri, May 16, 2014 at 9:03 AM, Jan

Re: Eliminate write-only variables

2014-05-19 Thread Richard Biener
On Sun, May 18, 2014 at 10:59 PM, Jan Hubicka hubi...@ucw.cz wrote: Sandra, This patch seems quite similar in purpose to the remove_local_statics optimization that Mentor has proposed, although the implementation is quite different. Here is the last version of our patch, prepared by Bernd

Re: [patch] Fix over-optimization of calls to pure function

2014-05-19 Thread Richard Biener
On Mon, May 19, 2014 at 10:58 AM, Eric Botcazou ebotca...@adacore.com wrote: Hi, this fixes an over-optimization of the GIMPLE optimizer, whereby two otherwise identical calls to a pure function present in different EH regions are CSEd, which changes the semantics of the program because the

Re: Replace C/C++ void_zero_node with a VOID_CST tree code

2014-05-19 Thread Richard Biener
On Mon, May 19, 2014 at 11:27 AM, Richard Sandiford rdsandif...@googlemail.com wrote: Richard Biener richard.guent...@gmail.com writes: On Sat, May 17, 2014 at 10:15 AM, Richard Sandiford rdsandif...@googlemail.com wrote: The main thing keeping zero-precision wide-ints alive was void_zero_node

Re: [PATCH] Fix PR54733 Optimize endian independent load/store

2014-05-19 Thread Richard Biener
On Mon, May 19, 2014 at 11:30 AM, Thomas Preud'homme thomas.preudho...@arm.com wrote: From: Richard Biener [mailto:richard.guent...@gmail.com] Oh, and what happens for unsigned foo (unsigned char *x) { return x[0] 24 | x[2] 8 | x[3]; } ? We could do an unsigned int load from x

Re: [PATCH][C-family] Fix PR61184

2014-05-19 Thread Richard Biener
On Fri, 16 May 2014, Jeff Law wrote: On 05/14/14 03:06, Richard Biener wrote: The following fixes pre/post-inc/dec gimplification of promoted integer types. There is the issue with the way TYPE_OVERFLOW_UNDEFINED is related to TYPE_OVERFLOW_WRAPS and the (non-)semantics of -fno

Re: Replace C/C++ void_zero_node with a VOID_CST tree code

2014-05-19 Thread Richard Biener
On Mon, May 19, 2014 at 12:03 PM, Richard Sandiford rdsandif...@googlemail.com wrote: Richard Biener richard.guent...@gmail.com writes: On Mon, May 19, 2014 at 11:27 AM, Richard Sandiford rdsandif...@googlemail.com wrote: Richard Biener richard.guent...@gmail.com writes: On Sat, May 17, 2014

Re: [patch] Fix over-optimization of calls to pure function

2014-05-19 Thread Richard Biener
On Mon, May 19, 2014 at 12:21 PM, Eric Botcazou ebotca...@adacore.com wrote: Please keep the redundant test, it speeds up comparison on hash collisions. As you are on it I'd use size_int (lr). The redundant test is very redundant, see the line just below it. Oh... ok ;) I think it's ok to

Re: [patch] Fix over-optimization of calls to pure function

2014-05-19 Thread Richard Biener
On Mon, May 19, 2014 at 12:11 PM, Eric Botcazou ebotca...@adacore.com wrote: I thought we had decided a long time ago that pure and const functions could not throw and that was the documented behavior. No, it's precisely the opposite. Btw, I agree. For this and other attributes the behavior

[RFC] HOST_WIDE_INT transition steps

2014-05-19 Thread Richard Biener
The following is my current idea on progressing on the HOST_WIDE_INT removal 1) https://gcc.gnu.org/ml/gcc-patches/2014-05/msg00381.html (ping) 2) make sure [u]int64_t is available and use that to define HOST_WIDE_INT 3) s/HOST_WIDE_INT/int64_t/ (same for unsigned HOST_WIDE_INT) Leaves us

[PATCH] Fix PR61209

2014-05-19 Thread Richard Biener
This fixes PR61209, we were leaking VN_TOP into the cached expr used for folding. That's of course a no-no. Bootstrap and regtest ongoing on x86_64-unknown-linux-gnu. Richard. 2014-05-19 Richard Biener rguent...@suse.de PR tree-optimization/61209 * tree-ssa-sccvn.c

[PATCH] Fix PR61221

2014-05-19 Thread Richard Biener
Richard Biener rguent...@suse.de PR tree-optimization/61221 * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Do nothing for unreachable blocks. * tree-ssa-sccvn.c (cond_dom_walker::before_dom_children): Improve unreachability detection

Re: [PATCH][1/n] Always-64bit HWI cleanups

2014-05-19 Thread Richard Biener
On Wed, 7 May 2014, Richard Biener wrote: This removes the need_64bit_hwi logic, nothing else (well, brings libcpp in line with gcc). Bootstrap / regtest pending on x86_64-unknown-linux-gnu. Bootstrapped and tested on x86_64-unknown-linux-gnu, ok for trunk? Thanks, Richard. Just as I

Re: [PATCH] Fix PR61221

2014-05-19 Thread Richard Biener
On May 19, 2014 6:57:52 PM CEST, Jeff Law l...@redhat.com wrote: On 05/19/14 06:54, Richard Biener wrote: In this PR we run into the issue that releasing SSA names from FRE/PRE elimination corrupts the VN lattice and thus the VN lookup we perform for removing redudnant stores ICEs. The patch

Re: [PATCH] Fix ARM NAN fraction bits

2014-05-20 Thread Richard Biener
On Tue, 20 May 2014, Maciej W. Rozycki wrote: Ian, On Sat, 17 May 2014, Richard Biener wrote: On May 17, 2014 12:22:23 AM CEST, Maciej W. Rozycki ma...@codesourcery.com wrote: On Fri, 16 May 2014, Joseph S. Myers wrote: 2014-05-16 Maciej W. Rozycki ma...@codesourcery.com

Re: [PATCH] Fix PR61221

2014-05-20 Thread Richard Biener
On Mon, 19 May 2014, Richard Biener wrote: On May 19, 2014 6:57:52 PM CEST, Jeff Law l...@redhat.com wrote: On 05/19/14 06:54, Richard Biener wrote: In this PR we run into the issue that releasing SSA names from FRE/PRE elimination corrupts the VN lattice and thus the VN lookup we

Re: [PATCH] Fix PR54733 Optimize endian independent load/store

2014-05-20 Thread Richard Biener
On Tue, May 20, 2014 at 4:46 AM, Thomas Preud'homme thomas.preudho...@arm.com wrote: From: Richard Biener [mailto:richard.guent...@gmail.com] Agreed, but I am happy with doing that as a followup. Btw, a very simple one would be to reject unaligned SLOW_UNALIGNED_ACCESS (TYPE_MODE (load_type

Re: Eliminate write-only variables

2014-05-20 Thread Richard Biener
On Tue, May 20, 2014 at 6:29 AM, Jan Hubicka hubi...@ucw.cz wrote: On 05/18/2014 08:45 PM, Sandra Loosemore wrote: On 05/18/2014 02:59 PM, Jan Hubicka wrote: For cases like local-statics-7 your approach can be saved by adding simple IPA analysis to look for static vars that are used only by

Re: [RFC] HOST_WIDE_INT transition steps

2014-05-20 Thread Richard Biener
On Tue, 20 May 2014, Eric Botcazou wrote: The following is my current idea on progressing on the HOST_WIDE_INT removal 1) https://gcc.gnu.org/ml/gcc-patches/2014-05/msg00381.html (ping) 2) make sure [u]int64_t is available and use that to define HOST_WIDE_INT 3)

Re: [RFC] HOST_WIDE_INT transition steps

2014-05-20 Thread Richard Biener
On Tue, 20 May 2014, Eric Botcazou wrote: Same as for going C++. Not to the same extent, this will be worse because done en masse throughout the code instead of gradually. Like the gimple - gimple * change pending or the various gimple - gswitch,glabel,etc. stuff? It's on a similar scale

Re: add dbgcnt and opt-info support for devirtualization

2014-05-20 Thread Richard Biener
with an else if, so if you do -fdump-ipa-cgraph then suddenly -fopt-info will stop reporting? At least in the cgraphunit.c part of the patch. I'm ok with the rest of the patch. Thanks, Richard. David On Mon, May 19, 2014 at 2:21 AM, Richard Biener richard.guent...@gmail.com wrote: On Fri, May 16

[PATCH][match-and-simplify] Reject outermost captures

2014-05-20 Thread Richard Biener
We can't really code-generate those (and thus such patterns are simply skipped during code-gen ...). Reject them early. Committed to the branch. Richard. 2014-05-20 Richard Biener rguent...@suse.de * genmatch.c (parse_match_and_simplify): Reject outermost expressions

[PATCH][match-and-simplify] Provide parsing error locations

2014-05-20 Thread Richard Biener
This adds $subject. Committed to branch. Richard. 2014-05-20 Richard Biener rguent...@suse.de * genmatch.c (error_cb, fatal_at): New functions. (expect, parse_expr, parse_op, parse_match_and_simplify, main): Provide error locations. Index: gcc/genmatch.c

[PATCH] Tidy SCCVN dump

2014-05-20 Thread Richard Biener
This makes the dumps easier to follow. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-05-20 Richard Biener rguent...@suse.de * tree-ssa-sccvn.c (process_scc): Dump SCC here, when iterating, (extract_and_process_scc_for_name): not here

Re: [PATCH] Fix PR61221

2014-05-20 Thread Richard Biener
On May 20, 2014 6:47:44 PM CEST, Jeff Law l...@redhat.com wrote: On 05/20/14 02:06, Richard Biener wrote: We're still going to have problems if SSA names are re-used (as even released SSA names have to remain valid lattice entries after this). But currently nothing will create new SSA names

Re: [Patch, ARM] Fix pr 61208

2014-05-21 Thread Richard Biener
On Tue, 20 May 2014, Richard Earnshaw wrote: PR 61208 is a wrong code bug in Thumb2 where we can generate out of range branches due to incorrect instruction size calculations. It's mostly gone latent on 4.9 and trunk (though could still happen at -O0 where splitting is done during final

Re: [PATCH, AArch64] Fix for PR61202

2014-05-21 Thread Richard Biener
On Wed, 21 May 2014, Marcus Shawcroft wrote: On 21 May 2014 09:28, Marcus Shawcroft marcus.shawcr...@gmail.com wrote: On 20 May 2014 18:37, Carrot Wei car...@google.com wrote: Hi James Thank you for pointing this out. In the new patch I removed the modification of vqdmulh_n_s32 and

Re: [patch, lto] add testcase for PR60179

2014-05-21 Thread Richard Biener
On Wed, May 21, 2014 at 3:51 AM, Sandra Loosemore san...@codesourcery.com wrote: One of the consequences of the (now-fixed) bug in PR60179 is that Nios II code using target pragmas to specify custom instructions failed to generate those instructions with -flto. We came up with this test case

Re: [PATCH] proposed fix for bug # 61144

2014-05-21 Thread Richard Biener
On Wed, May 21, 2014 at 3:59 AM, Rich Felker dal...@libc.org wrote: Bug # 61144 is a regression in 4.9.0 that breaks building of musl libc due to aggressive and semantically-incorrect constant folding of weak aliases. The attached patch seems to fix the issue. A weak alias should never be a

[PATCH][RFC] Handle realloc in PTA and alias analysis

2014-05-21 Thread Richard Biener
that specifies that the object can no longer accessed via the pointer argument q (at least if p didn't return NULL and size was not NULL). The C99 standard explicitely mentions that p may have the same pointer value as q though. Thoughts? Thanks, Richard. 2014-05-21 Richard Biener rguent...@suse.de

Re: [PATCH][RFC] Handle realloc in PTA and alias analysis

2014-05-21 Thread Richard Biener
On Wed, 21 May 2014, Richard Biener wrote: PR56955 prompted me to handle BUILT_IN_REALLOC just the same way we already handle BUILT_IN_STR[N]DUP. Bootstrap and regtest running on x86_64-unknown-linux-gnu. Now this will disambiguate *p and *q for p = realloc (q, n) for any value of n

[PATCH][match-and-simplify] Fix missed constant folding / operand canonicalization

2014-05-21 Thread Richard Biener
on x86_64-unknown-linux-gnu, applied to branch. Note this makes a few cases of the match-1.c and match-2.c testcases fail because operands are swapped and we only have one variant of commutative patterns (yeah, points to we need a solution for that). Richard. 2014-05-21 Richard Biener rguent

[PATCH] document -flto-partition=[n]one

2014-05-21 Thread Richard Biener
Committed. Richard. 2014-05-21 Richard Biener rguent...@suse.de * doc/invoke.texi (-flto-partition=): Document one and none algorithms. Index: gcc/doc/invoke.texi === --- gcc/doc/invoke.texi (revision 210694

Re: [PATCH 7/7] Plug ipa-prop escape analysis into gimple_call_arg_flags

2014-05-21 Thread Richard Biener
On Wed, May 21, 2014 at 3:16 PM, Martin Jambor mjam...@suse.cz wrote: Hi, this demonstrates how results of ipa-prop escape analysis from previous patches can be used at a later stage of compilation by directly returning them from gimple_call_arg_flags which currently relies on fnspec

Re: [patch] c/61271 fix ICE for invalid cilkplus array notation

2014-05-22 Thread Richard Biener
On Wed, May 21, 2014 at 5:43 PM, Jonathan Wakely jwak...@redhat.com wrote: This is only one of several cases in the PR, but one that's simple enough for me to write a test for and fix. Tested x86_64-linux, OK for trunk? Ok. Thanks, Richard.

Re: [PATCH] __attribute__ ((malloc)) doc fix (PR other/56955)

2014-05-22 Thread Richard Biener
On Wed, May 21, 2014 at 8:37 PM, Paul Eggert egg...@cs.ucla.edu wrote: Attached is a proposed documentation patch for __attribute__ ((malloc)), taken from: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56955#c9 Richard Biener suggested that I forward it to this list. Thanks Paul. Re-reading

Re: [patch] Small enhancement to associate_plusminus

2014-05-22 Thread Richard Biener
On Wed, May 21, 2014 at 9:45 PM, Eric Botcazou ebotca...@adacore.com wrote: Hi, one of the transformations performed by associate_plusminus is: /* Second match patterns that allow contracting a plus-minus pair irrespective of overflow issues. [...] (T)(P + A) - (T)P -

Re: [PATCH][RFC] Handle realloc in PTA and alias analysis

2014-05-22 Thread Richard Biener
On Wed, 21 May 2014, Richard Biener wrote: On Wed, 21 May 2014, Richard Biener wrote: PR56955 prompted me to handle BUILT_IN_REALLOC just the same way we already handle BUILT_IN_STR[N]DUP. Bootstrap and regtest running on x86_64-unknown-linux-gnu. Now this will disambiguate *p

Re: [PATCH] Fix PR54733 Optimize endian independent load/store

2014-05-22 Thread Richard Biener
On Wed, May 21, 2014 at 3:00 AM, Thomas Preud'homme thomas.preudho...@arm.com wrote: From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- I'll send the new patch as soon as all the tests are done. Here you are. I also simplified the tests a bit having the reference as a function

Re: Add a lto-section-names.h header

2014-05-22 Thread Richard Biener
On Thu, May 22, 2014 at 1:57 PM, Bernd Schmidt ber...@codesourcery.com wrote: This is a change from the gomp4 branch which I think could go on trunk now. It removes some duplicated definitions and puts them in a header file. More definitions will be added to that header once offloading is

Re: [PATCH 7/7] Plug ipa-prop escape analysis into gimple_call_arg_flags

2014-05-22 Thread Richard Biener
On Thu, May 22, 2014 at 2:49 PM, Martin Jambor mjam...@suse.cz wrote: Hi, On Wed, May 21, 2014 at 04:27:32PM +0200, Richard Biener wrote: On Wed, May 21, 2014 at 3:16 PM, Martin Jambor mjam...@suse.cz wrote: Hi, this demonstrates how results of ipa-prop escape analysis from previous

Re: [PATCH 7/7] Plug ipa-prop escape analysis into gimple_call_arg_flags

2014-05-22 Thread Richard Biener
On May 22, 2014 5:24:33 PM CEST, Jan Hubicka hubi...@ucw.cz wrote: Can we? If the body is not readily available we only have decl and cgraph-node, not struct function. I suppose we could exchange the struct function pointer in tree_function_decl for a cgraph_node pointer and put the

[PATCH] Fix PR61266

2014-05-23 Thread Richard Biener
The following reverts the un-XFAILing and adjusts the testcase according to reality (as already noted in testcase comments). Committed. Richard. 2014-05-23 Richard Biener rguent...@suse.de PR testsuite/61266 * gcc.dg/Wstrict-overflow-18.c: Revert un-XFAILing

Re: [PATCH] Disable unroll loop that has header count less than iteration count.

2014-05-23 Thread Richard Biener
On Thu, May 22, 2014 at 11:36 PM, Dehao Chen de...@google.com wrote: If a loop's header count is less than iteration count, the iteration estimation is apparently incorrect for this loop. Thus disable unrolling of such loops. Testing on going. OK for trunk if test pass? No. Why don't you

Re: [PATCH] Fix PR rtl-optimization/61278

2014-05-23 Thread Richard Biener
On Fri, May 23, 2014 at 9:23 AM, Zhenqiang Chen zhenqiang.c...@linaro.org wrote: Hi, The patch fixes PR rtl-optimization/61278. Root cause for issue is that df_live does not exist at -O1. Bootstrap and no make check regression on X86-64. OK for trunk? Why do you need to give up? It seems

Re: [PATCH 7/7] Plug ipa-prop escape analysis into gimple_call_arg_flags

2014-05-23 Thread Richard Biener
On Thu, May 22, 2014 at 8:11 PM, Jan Hubicka hubi...@ucw.cz wrote: It won't be so easy, because struct function is really built at relatively convoluted places within frontend before cgraph node is assigned to them (I tried that few years back). Well, just call cgraph create node from

Re: [PATCH] __attribute__ ((malloc)) doc fix (PR other/56955)

2014-05-23 Thread Richard Biener
On Thu, May 22, 2014 at 4:15 PM, Paul Eggert egg...@cs.ucla.edu wrote: Richard Biener wrote: Can you try to clarify the wording (I'm not a native speaker). Sure. I've filed a clarified version on PR 56955 and am attaching it here for convenience. Thanks, installed. Richard.

<    5   6   7   8   9   10   11   12   13   14   >