Re: [PATCH] Remove dead labels to increase superblock scope

2011-12-07 Thread Tom de Vries
On 06/12/11 14:25, Michael Matz wrote: Hi, On Tue, 6 Dec 2011, Tom de Vries wrote: what should be the 'next' returned by delete_insn? There are exactly two calls of delete_insn that take the return value. One (delete_insn_and_edges) just uses it to return it itself

Re: [PATCH, PR43814] Assume function arguments of pointer type are aligned.

2011-12-08 Thread Tom de Vries
On 26/10/11 12:19, Richard Guenther wrote: On Tue, Oct 25, 2011 at 2:22 PM, Tom de Vries tom_devr...@mentor.com wrote: On 09/24/2011 01:42 PM, Richard Guenther wrote: On Sat, Sep 24, 2011 at 11:40 AM, Jakub Jelinek ja...@redhat.com wrote: On Sat, Sep 24, 2011 at 11:31:25AM +0200, Richard

[PATCH] Prevent 'control reaches end of non-void function' warning for DO_WHILE

2011-12-09 Thread Tom de Vries
Jakub, This patch fixes the problem reported in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25973#c4 . The test-case listed there is: ... struct Block { public: Block(); ~Block(); }; bool func( bool bar ) { Block block; bool foo = false; if( !foo || bar ) do { return true;

[PATCH, PR51491] add CLOBBER before __builtin_stack_restore when converting vla alloca_with_align to array decl

2011-12-13 Thread Tom de Vries
a ... Bootstrapped and reg-tested (ada inclusive) on x86_64. OK for stage3? Thanks, - Tom 2011-12-13 Tom de Vries t...@codesourcery.com PR tree-optimization/51491 * tree-ssa-ccp.c (insert_clobber_before_stack_restore): New function. (ccp_fold_stmt): Use

Re: [PATCH, PR51491] add CLOBBER before __builtin_stack_restore when converting vla alloca_with_align to array decl

2011-12-15 Thread Tom de Vries
On 13/12/11 14:13, Jakub Jelinek wrote: On Tue, Dec 13, 2011 at 01:26:42PM +0100, Tom de Vries wrote: 2011-12-13 Tom de Vries t...@codesourcery.com PR tree-optimization/51491 * tree-ssa-ccp.c (insert_clobber_before_stack_restore): New function. (ccp_fold_stmt): Use

Re: testsuite typo fixed in [PATCH, PR51491] add CLOBBER before __builtin_stack_restore when converting vla alloca_with_align to array decl

2011-12-18 Thread Tom de Vries
On 18/12/11 09:47, Hans-Peter Nilsson wrote: From: Hans-Peter Nilsson h...@axis.com Date: Sun, 18 Dec 2011 09:32:36 +0100 Typos like this cause the test-run to be aborted for the current .exp file, In this case, some 3000 test-cases went missing, judging by the gcc Summary output.

[PATCH] PR51271. Fix handling of frame-related insn in delay slot of annulled branch

2012-01-08 Thread Tom de Vries
? Thanks, - Tom 2012-01-08 Tom de Vries t...@codesourcery.com * dwarf2cfi.c (scan_trace): Save and restore cur_row-reg_save when handling annulled branch. Index: gcc/dwarf2cfi.c === --- gcc/dwarf2cfi.c (revision 182903

[PATCH] PR51471. Don't speculate frame-related insns during delayed branch scheduling.

2012-01-08 Thread Tom de Vries
-tested on mips64el-linux-gnu. Andrew, did you get to do bootstrap/test on mips64-linux-gnu? Jeff, ok for trunk? Thanks, - Tom 2012-01-08 Tom de Vries t...@codesourcery.com Andrew Pinski apin...@cavium.com * reorg.c (fill_slots_from_thread): Don't speculate frame-related insns

Re: [PATCH] Prevent 'control reaches end of non-void function' warning for DO_WHILE

2012-01-22 Thread Tom de Vries
On 09/12/11 10:45, Richard Guenther wrote: On Fri, Dec 9, 2011 at 9:38 AM, Tom de Vries tom_devr...@mentor.com wrote: Jakub, This patch fixes the problem reported in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25973#c4 . The test-case listed there is: ... struct Block { public

[PATCH] Fix for PR51879 - Missed tail merging with non-const/pure calls

2012-01-23 Thread Tom de Vries
. The patch makes sure non-const/pure call results (gimple_vdef and gimple_call_lhs) are properly value numbered. Bootstrapped and reg-tested on x86_64. ok for stage1? Thanks, - Tom 2012-01-23 Tom de Vries t...@codesourcery.com PR tree-optimization/51879 tree-ssa-sccvn.c

[PATCH] FIx for PR51990 - ICE in copy_reference_ops_from_ref

2012-01-26 Thread Tom de Vries
Richard, This patch fixes PR51990. The patch adds handling of WITH_SIZE_EXPR in copy_reference_ops_from_ref and create_component_ref_by_pieces_1, preventing ICEs on the test-cases. Bootstrapped and reg-tested on x86_64. Ok for stage4 or stage1? Thanks, - Tom 2012-01-26 Tom de Vries t

Re: [PATCH] FIx for PR51990 - ICE in copy_reference_ops_from_ref

2012-01-27 Thread Tom de Vries
On 26/01/12 12:08, Richard Guenther wrote: On Thu, Jan 26, 2012 at 10:35 AM, Tom de Vries tom_devr...@mentor.com wrote: Richard, This patch fixes PR51990. The patch adds handling of WITH_SIZE_EXPR in copy_reference_ops_from_ref and create_component_ref_by_pieces_1, preventing ICEs

Re: [PATCH] Fix for PR51879 - Missed tail merging with non-const/pure calls

2012-01-27 Thread Tom de Vries
On 24/01/12 11:40, Richard Guenther wrote: On Mon, Jan 23, 2012 at 10:27 PM, Tom de Vries tom_devr...@mentor.com wrote: Richard, Jakub, the following patch fixes PR51879. Consider the following test-case: ... int bar (int); void baz (int); void foo (int y) { int a; if (y == 6

[PATCH] Prevent frame-related insn from occurring in delay slots of insns that throw

2012-01-28 Thread Tom de Vries
on mips64el. I don't know of any tests currently failing on this, so I think it's not appropriate for stage4. OK for stage1 ? Thanks, - Tom 2012-01-27 Andrew Pinski apin...@cavium.com Tom de Vries t...@codesourcery.com * dwarf2cfi.c (scan_trace): Add assert that frame

[PATCH] Fix for PR52009 - Another missed tail merging opportunity

2012-01-31 Thread Tom de Vries
numbers for assignments during tail-merge Bootstrapped and reg-tested on x86_64. OK for stage1? Thanks, - Tom 2012-01-31 Tom de Vries t...@codesourcery.com PR tree-optimization/52009 * tree-ssa-tail-merge.c (gimple_equal_p): For GIMPLE_ASSIGN, compare value numbers

Re: [PATCH] Fix for PR52009 - Another missed tail merging opportunity

2012-01-31 Thread Tom de Vries
On 31/01/12 22:05, Tom de Vries wrote: Richard, Sorry, with patch this time. this patch fixes PR52009. Consider this test-case: ... int z; void foo (int y) { if (y == 6) z = 5; else z = 5; } ... Currently, compiling with -O2 gives us this representation

[PATCH] Fix for PR52081 - Missed tail merging with pure calls

2012-02-02 Thread Tom de Vries
)', and gimple_call_same_target_p will return false. This is fixed by ignoring local defs in this comparison, by using gsi_advance_fw_nondebug_nonlocal on the iterators. bootstrapped and reg-tested on x86_64. ok for stage1? Thanks, - Tom 2012-02-02 Tom de Vries t...@codesourcery.com * tree-ssa-tail-merge.c

[PATCH, C++, PR58282] Handle noexcept on transactions with -fno-exceptions

2013-09-03 Thread Tom de Vries
on x86_64. OK for trunk? Thanks, - Tom 2013-09-02 Tom de Vries t...@codesourcery.com PR c++/58282 * semantics.c (finish_transaction_stmt, build_transaction_expr): Handle flag_exceptions. diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index ee3503c..c8b328c 100644

Re: [PATCH, C++, PR58282] Handle noexcept on transactions with -fno-exceptions

2013-09-06 Thread Tom de Vries
On 04/09/13 19:21, Jason Merrill wrote: On 09/03/2013 06:03 AM, Tom de Vries wrote: * semantics.c (finish_transaction_stmt, build_transaction_expr): Handle flag_exceptions. I'd rather handle this at a lower level, by making build_must_not_throw_expr return its argument if -fno

[PATCH, ARM] Fix line number data for PIC register setup code

2013-10-13 Thread Tom de Vries
with target arm-none-linux-gnueabi atm. OK for trunk? Thanks, - Tom 2013-10-13 Tom de Vries t...@codesourcery.com * cfgexpand.c (gimple_expand_cfg): Don't commit insertions after NOTE_INSN_FUNCTION_BEG. * gcc.target/arm/require-pic-register-loc.c: New test. Index: gcc

Re: [PATCH, ARM] Fix line number data for PIC register setup code

2013-10-14 Thread Tom de Vries
On 14/10/13 00:17, Tom de Vries wrote: This patch makes sure we emit insertions scheduled for the first real BB before NOTE_INSN_FUNCTION_BEG. As a consequence, it moves the PIC register setup code to before the NOTE_INSN_FUNCTION_BEG. This removes the second .loc, and the breakpoint of main

[PATCH, PR58805] Add missing check in stmt_local_def for tail-merge

2013-10-22 Thread Tom de Vries
Richard, This patch adds a missing check for gimple_vdef in stmt_local_def for the tail-merge pass. Bootstrapped and reg-tested on x86_64. OK for trunk, gcc-4_8-branch? Thanks, - Tom 2013-10-22 Tom de Vries t...@codesourcery.com PR tree-optimization/58805 * tree-ssa-tail

Re: [PATCH, PR58805] Add missing check in stmt_local_def for tail-merge

2013-10-23 Thread Tom de Vries
On 22/10/13 20:50, Jeff Law wrote: On 10/22/13 03:58, Tom de Vries wrote: Richard, This patch adds a missing check for gimple_vdef in stmt_local_def for the tail-merge pass. Bootstrapped and reg-tested on x86_64. OK for trunk, gcc-4_8-branch? Thanks, - Tom 2013-10-22 Tom de Vries t

Re: [PATCH, C++, PR58282] Handle noexcept on transactions with -fno-exceptions

2013-10-25 Thread Tom de Vries
On 07/09/13 18:54, Jason Merrill wrote: OK. I've reproduced the same problem with the 4.7 and 4.8 branch, and checked that applying the patch fixes the problem. Committed to 4.7 and 4.8 branch as well. Thanks, - Tom

[PING] [PATCH, ARM] Fix line number data for PIC register setup code

2013-10-27 Thread Tom de Vries
Ping. Original submission at http://gcc.gnu.org/ml/gcc-patches/2013-10/msg00903.html . This patch fixes a regression of 174 tests in the gdb testsuite for arm-linux-gnueabi with -fPIC (or arm-linux-androideabi) caused by the fix for PR47028. The fix for PR47028 made sure that insertions on the

Re: [PATCH, ARM] Fix line number data for PIC register setup code

2013-10-28 Thread Tom de Vries
and committed to trunk. Also applied to 4.7 and 4.8 branches, the same problem is present there. Thanks, - Tom 2013-10-28 Tom de Vries t...@codesourcery.com * cfgexpand.c (gimple_expand_cfg): Remove test for parm_birth_insn. Don't commit insertions after NOTE_INSN_FUNCTION_BEG

Re: [PATCH, ARM] Fix line number data for PIC register setup code

2013-10-29 Thread Tom de Vries
On 29/10/13 09:12, Eric Botcazou wrote: Updated patch, re-bootstrapped on x86_64 and committed to trunk. Also applied to 4.7 and 4.8 branches, the same problem is present there. You only asked for approval on trunk though, Eric, Sorry about that. and I'm not sure we really care about

Re: [PATCH] Handle __builtin_unreachable () using assertions in VRP

2013-11-03 Thread Tom de Vries
On 29/10/13 14:54, Jakub Jelinek wrote: +/* Return true if all imm uses of VAR are either in STMT, or + feed (optionally through a chain of single imm uses) GIMPLE_COND + in basic block COND_BB. */ + +static bool +all_imm_uses_in_stmt_or_feed_cond (tree var, gimple stmt, basic_block

[committed] Remove duplicate contents in gcc/config/rs6000/t-xilinx

2013-11-09 Thread Tom de Vries
Michael, This patch removes duplicate contents in gcc/config/rs6000/t-xilinx. Looks like a patch was applied twice. Committed as trivial. Thanks, - Tom 2013-11-08 Tom de Vries t...@codesourcery.com * config/rs6000/t-xilinx: Remove duplicate contents. diff --git a/gcc/config/rs6000

Simplify code in gimple_equal_p

2013-11-09 Thread Tom de Vries
Richard, This patch simplifies code in gimple_equal_p. Bootstrapped and regtested on x86_64. OK for trunk? Thanks, - Tom 2013-11-06 Tom de Vries t...@codesourcery.com * tree-ssa-tail-merge.c (gimple_equal_p): Remove equal variable. diff --git a/gcc/tree-ssa-tail-merge.c b/gcc/tree

[PATCH] Factor out gimple_dont_merge_p

2013-11-09 Thread Tom de Vries
Richard, This patch factors out gimple_dont_merge_p from gimple_equal_p and find_duplicate. Bootstrapped and regtested on x86_64. OK for trunk? Thanks, - Tom 2013-11-06 Tom de Vries t...@codesourcery.com * tree-ssa-tail-merge.c (gimple_dont_merge_p): Factor function out

Re: [PATCH PR45098, 4/10] Iv init cost.

2011-05-26 Thread Tom de Vries
Hi Richard, On 05/25/2011 03:44 PM, Richard Sandiford wrote: Sorry for being so late. I was just curious... Tom de Vries vr...@codesourcery.com writes: The init cost of an iv will in general not be zero. It will be exceptional that the iv register happens to be initialized with the proper

Re: [PATCH PR45098, 7/10] Nowrap limits iterations

2011-05-28 Thread Tom de Vries
Hi Zdenek, On 05/21/2011 07:59 PM, Tom de Vries wrote: On 05/21/2011 02:24 PM, Zdenek Dvorak wrote: * tree-ssa-loop-ivopts.c (may_eliminate_iv): Fix estimated_loop_iterations comparison. I don't think this part is correct, though: Index: gcc/tree-ssa-loop-ivopts.c

Re: [PATCH PR45098, 7/10] Nowrap limits iterations

2011-05-31 Thread Tom de Vries
On 05/30/2011 02:38 PM, Zdenek Dvorak wrote: Hi, The header block of the loop is bb 4, the latch block is bb 3: ... (gdb) p loop.header.index $4 = 4 (gdb) p loop.latch.index $5 = 3 ... The number of times the latch edge is executed, is 10. But loop-nb_iterations_upper_bound, or

[PATCH, PR43864] Gimple level duplicate block cleanup.

2011-06-08 Thread Tom de Vries
(f) f (int c, int b, int d) { int e; bb 2: e_6 = b_3(D) + d_4(D); return e_6; } I'll send the patch with the testcases in a separate email. OK for trunk? Thanks, - Tom 2011-06-08 Tom de Vries t...@codesourcery.com PR middle-end/43864 * tree-cfgcleanup.c

[PATCH, PR43864] Gimple level duplicate block cleanup - test cases.

2011-06-08 Thread Tom de Vries
On 06/08/2011 11:42 AM, Tom de Vries wrote: I'll send the patch with the testcases in a separate email. OK for trunk? Thanks, - Tom 2011-06-08 Tom de Vries t...@codesourcery.com PR middle-end/43864 * gcc.dg/pr43864.c: New test. * gcc.dg/pr43864-2.c: New test. Index

Re: [PATCH, PR43864] Gimple level duplicate block cleanup.

2011-06-10 Thread Tom de Vries
Hi Richard, thanks for the review. On 06/08/2011 11:55 AM, Richard Guenther wrote: On Wed, Jun 8, 2011 at 11:42 AM, Tom de Vries vr...@codesourcery.com wrote: Hi Richard, I have a patch for PR43864. The patch adds a gimple level duplicate block cleanup. The patch has been bootstrapped

Re: [PATCH PR45098, 7/10] Nowrap limits iterations

2011-06-11 Thread Tom de Vries
: the amount of latch executions. That change is countered at all use sites, except for tree-ssa-loop-ivopts.c:may_eliminate_iv. Passed x86_64 bootstrapping and reg-testing. OK for trunk? 2011-06-10 Zdenek Dvorak o...@ucw.cz Tom de Vries t...@codesourcery.com PR target

Re: [testsuite] ARM ivopts tests: skip for no thumb support

2011-06-24 Thread Tom de Vries
if we're compiling for thumb2. - arm_nothumb: Tests if we're not compiling for any thumb. I don't know how to get the same effect with the existing arm-related effective targets. Thanks, - Tom 2011-06-24 Janis Johnson jani...@codesourcery.com Tom de Vries t...@codesourcery.com

Re: [patch, mips] Fix for PR 54619, GCC aborting with -O -mips16

2012-11-14 Thread Tom de Vries
a full mips build with newlib with this patch. I've bootstrapped and reg-tested this patch on x86_64. OK for trunk (without the assert)? Thanks, - Tom 2012-11-14 Tom de Vries t...@codesourcery.com * tree-ssa-loop-ivopts.c (get_use_type): New function. (get_computation_at): Use

[PATCH, PR55315] Don't assume a nonzero address plus a const is a nonzero address

2012-11-17 Thread Tom de Vries
prevents nonzero_address_p from assuming that a nonzero address plus a const is a nonzero address. Build and reg-tested on mips. OK for trunk? Thanks, - Tom 2012-11-17 Tom de Vries t...@codesourcery.com PR rtl-optimization/55315 * rtlanal.c (nonzero_address_p): Don't assume

PR55124 - tentative patch for ICE in PRE

2012-11-18 Thread Tom de Vries
Richard, Consider the PR55124 example test.c: ... int a, b; long c; static void inline f2 (void) { unsigned long k = 1; foo (b ? k = 0 : 0); b = (((c = b) ? (k ?: (c = 0)) : a) * c); } void f1 (void) { f2 (); a = b | c; } ... when compiling with -O2, we're

Re: [PATCH, PR55315] Don't assume a nonzero address plus a const is a nonzero address

2012-11-19 Thread Tom de Vries
On 19/11/12 14:00, Jakub Jelinek wrote: On Sun, Nov 18, 2012 at 10:50:53AM +, Richard Sandiford wrote: Tom de Vries tom_devr...@mentor.com writes: 2012-11-17 Tom de Vries t...@codesourcery.com PR rtl-optimization/55315 * rtlanal.c (nonzero_address_p): Don't assume a nonzero

Re: PR55124 - tentative patch for ICE in PRE

2012-11-28 Thread Tom de Vries
On 27/11/12 13:41, Richard Biener wrote: On Mon, Nov 19, 2012 at 3:33 AM, Tom de Vries tom_devr...@mentor.com wrote: Richard, Consider the PR55124 example test.c: ... int a, b; long c; static void inline f2 (void) { unsigned long k = 1; foo (b ? k = 0 : 0); b = (((c = b

Re: PR55124 - tentative patch for ICE in PRE

2012-11-29 Thread Tom de Vries
or weakly ordered array could give different results. The second patch calculates value_id during pre. If you're working on the value_id part, I'll stop here. Thanks, - Tom 2012-11-29 Tom de Vries t...@codesourcery.com * tree-ssa-pre.c (sorted_array_from_bitmap_set): Use

[PATCH] Factor out gimple_operand_equal_value_p from gimple_equal_p

2013-11-09 Thread Tom de Vries
Richard, This patch factors out gimple_operand_equal_value_p from gimple_equal_p. Bootstrapped and regtested on x86_64. OK for trunk? Thanks, - Tom 2013-11-06 Tom de Vries t...@codesourcery.com * tree-ssa-tail-merge.c (gimple_operand_equal_value_p): Factor new function out

[PATCH] Handle GIMPLE_ASSIGNs with different vuse in gimple_equal_p

2013-11-09 Thread Tom de Vries
. This patch handles GIMPLE_ASSIGNs with different vuse in gimple_equal_p, by doing a structural comparison. Bootstrapped and regtested on x86_64. OK for trunk? Thanks, - Tom 2013-11-06 Tom de Vries t...@codesourcery.com * tree-ssa-tail-merge.c (gimple_equal_p): Add test for structural

Re: [PATCH] Handle GIMPLE_ASSIGNs with different vuse in gimple_equal_p

2013-11-11 Thread Tom de Vries
On 11/11/13 10:50, Richard Biener wrote: On Sat, 9 Nov 2013, Tom de Vries wrote: Bootstrapped and regtested on x86_64. OK for trunk? Comments inline diff --git a/gcc/tree-ssa-tail-merge.c b/gcc/tree-ssa-tail-merge.c index 98b5882..43516a7 100644 --- a/gcc/tree-ssa-tail-merge.c +++ b

Re: [PATCH] Handle GIMPLE_ASSIGNs with different vuse in gimple_equal_p

2013-11-12 Thread Tom de Vries
On 11-11-13 14:17, Richard Biener wrote: On Mon, 11 Nov 2013, Tom de Vries wrote: On 11/11/13 10:50, Richard Biener wrote: On Sat, 9 Nov 2013, Tom de Vries wrote: Bootstrapped and regtested on x86_64. OK for trunk? Comments inline diff --git a/gcc/tree-ssa-tail-merge.c b/gcc/tree-ssa

Re: [PATCH] Factor out gimple_dont_merge_p

2013-11-13 Thread Tom de Vries
On 11-11-13 10:37, Richard Biener wrote: On Sat, 9 Nov 2013, Tom de Vries wrote: Richard, This patch factors out gimple_dont_merge_p from gimple_equal_p and find_duplicate. Bootstrapped and regtested on x86_64. OK for trunk? +static bool +gimple_dont_merge_p (gimple stmt) +{ + switch

[PATCH] Don't create out-of-bounds BIT_FIELD_REFs

2013-11-25 Thread Tom de Vries
? Thanks, - Tom 2013-11-26 Tom de Vries t...@codesourcery.com Marc Glisse marc.gli...@inria.fr PR middle-end/59037 * semantics.c (cxx_fold_indirect_ref): Don't create out-of-bounds BIT_FIELD_REF. * fold-const.c (fold_indirect_ref_1): Don't create out

[PATCH] Handle vector increment/decrement in build_unary_op

2013-11-26 Thread Tom de Vries
for trunk? Thanks, - Tom 2013-11-26 Tom de Vries t...@codesourcery.com Marc Glisse marc.gli...@inria.fr PR c++/59032 * c-typeck.c (build_unary_op): Allow vector increment and decrement. * typeck.c (cp_build_unary_op): Allow vector increment and decrement

Re: [PATCH] Don't create out-of-bounds BIT_FIELD_REFs

2013-11-26 Thread Tom de Vries
[ Fix email address Marc ] On 26-11-13 08:57, Tom de Vries wrote: Jason, This patch prevents creating out-of-bounds BIT_FIELD_REFs in 3 locations. It fixes a SIGSEGV (triggered by gimple_fold_indirect_ref_1) in simplify_bitfield_ref. I've added an assert to detect the problematic BIT_FIELD_REF

Re: [PATCH] Don't create out-of-bounds BIT_FIELD_REFs

2013-11-26 Thread Tom de Vries
On 26-11-13 11:12, Richard Biener wrote: On Tue, Nov 26, 2013 at 8:57 AM, Tom de Vries tom_devr...@mentor.com wrote: Jason, This patch prevents creating out-of-bounds BIT_FIELD_REFs in 3 locations. It fixes a SIGSEGV (triggered by gimple_fold_indirect_ref_1) in simplify_bitfield_ref. I've

Re: [PATCH] Handle vector increment/decrement in build_unary_op

2013-11-27 Thread Tom de Vries
On 27-11-13 01:21, Jason Merrill wrote: On 11/26/2013 03:47 AM, Marc Glisse wrote: On Tue, 26 Nov 2013, Tom de Vries wrote: * g++.dg/pr59032.C: New testcase. * gcc.dg/pr59032.c: Same. I didn't check very carefully, but they look similar. If they are indeed the same, could it move

Re: [PATCH] Don't create out-of-bounds BIT_FIELD_REFs

2013-11-27 Thread Tom de Vries
On 27-11-13 07:20, Jeff Law wrote: On 11/26/13 14:10, Tom de Vries wrote: On 26-11-13 11:12, Richard Biener wrote: On Tue, Nov 26, 2013 at 8:57 AM, Tom de Vries tom_devr...@mentor.com wrote: Jason, This patch prevents creating out-of-bounds BIT_FIELD_REFs in 3 locations. It fixes a SIGSEGV

Re: [PATCH] Don't create out-of-bounds BIT_FIELD_REFs

2013-12-03 Thread Tom de Vries
On 03-12-13 13:49, Jakub Jelinek wrote: On Thu, Nov 28, 2013 at 12:23:43AM +0100, Tom de Vries wrote: Committed to trunk. Also ok for 4.8 branch? It's a 4.8/4.9 regression. Ok, but I guess you need to adjust your patch for 4.8 (tree_to_* and tree_fits_* to host_integerp/tree_low_cst), so

[PATCH] Bug fix in LSHIFT_EXPR case with a shift range in tree-vrp, handle more cases

2012-09-14 Thread Tom de Vries
that bug as well. Bootstrapped and regtested (ada inclusive) on x86_64. OK for trunk? Thanks, - Tom 2012-09-10 Tom de Vries t...@codesourcery.com * tree-vrp.c (extract_range_from_binary_expr_1): Fix bug in handling of LSHIFT_EXPR with shift range. Handle more LSHIFT_EXPR cases

Re: [PATCH] Bug fix in LSHIFT_EXPR case with a shift range in tree-vrp, handle more cases

2012-09-14 Thread Tom de Vries
On 14/09/12 09:38, Jakub Jelinek wrote: On Fri, Sep 14, 2012 at 09:27:27AM +0200, Tom de Vries wrote: * gcc.dg/tree-ssa/vrp81.c: New test. * gcc.dg/tree-ssa/vrp81-2.c: Same. * gcc.dg/tree-ssa/vrp82.c: Same. Why not vrp82.c, vrp83.c and vrp84.c (and rename the recently added

[Patch, Committed] Fix declared inline after being called warning

2012-10-01 Thread Tom de Vries
in the 4.6 branch, and with trunk the warning doesn't trigger, I suppose because we're using g++ now. Build on i686-pc-linux-gnu. Thanks, - Tom 2012-10-01 Tom de Vries t...@codesourcery.com * var-tracking.c (set_dv_changed): Add an 'inline' function specifier to the prototype. Index

Check that unlinked uses do not contain ssa-names when renaming.

2012-10-07 Thread Tom de Vries
? Thanks, - Tom 2012-10-07 Tom de Vries t...@codesourcery.com * tree-into-ssa.c (maybe_replace_use): Add assert. Index: gcc/tree-into-ssa.c === --- gcc/tree-into-ssa.c (revision 192023) +++ gcc/tree-into-ssa.c (working copy

[PATCH] Stop looping in move_by_pieces loops when there's no more data to process

2012-10-16 Thread Tom de Vries
) ... This patch fixes that in this loop, and other move_by_pieces loops. Bootstrapped and reg-tested on x86_64. OK for trunk? Thanks, - Tom 2012-10-16 Tom de Vries t...@codesourcery.com * expr.c (move_by_pieces, move_by_pieces_ninsns, can_store_by_pieces) (store_by_pieces_1): Don't

Re: [PATCH] Preserve loops from CFG build until after RTL loop opts

2013-04-26 Thread Tom de Vries
) maintains simple latches throughout, and that tail-merge does the same. Tentative patch attached. I'll try build test. [ Btw, it would be nice if restricting the optimization also means that we can simplify dominator handling in the pass. ] Thanks, - Tom 2013-04-26 Tom de Vries t

Re: [PATCH] Preserve loops from CFG build until after RTL loop opts

2013-04-28 Thread Tom de Vries
On 26/04/13 16:27, Tom de Vries wrote: On 25/04/13 16:19, Richard Biener wrote: SNIP and compared to the previous patch changed the tree-ssa-tailmerge.c part to deal with merging of loop latch and loop preheader (even if that's a really bad idea) to not regress gcc.dg/pr50763.c. Any

[PATCH] Update tail-merge header comment.

2013-04-29 Thread Tom de Vries
Steven, I answered your question in tree-ssa-tail-merge.c about why tail-merge is not a stand-alone gimple pass. Committed to trunk. Thanks, - Tom 2013-04-29 Tom de Vries t...@codesourcery.com * tree-ssa-tail-merge.c: Update header comment.

Add error message for mismatched parentheses in reservation string

2013-06-07 Thread Tom de Vries
)) | (nothing,(athlon-decode1 + athlon-decode2)))' ... Tested by completing a non-bootstrap build. OK for trunk? Thanks, - Tom 2013-06-07 Tom de Vries t...@codesourcery.com * genautomata.c (gen_regexp_sequence): Handle els_num == -1. Handle sequence_vect == NULL. diff

Re: [Patch ARM] Add Cortex A15 neon scheduler

2013-06-26 Thread Tom de Vries
On 18/10/12 18:48, Ramana Radhakrishnan wrote: +(define_insn_reservation cortex_a15_vfp_adds_subs 6 + (and (eq_attr tune cortexa15) + (eq_attr type fadds)) + ca15_issue1,ca15_cx_vfp) Ramana, I noticed you use here the fadds value for the type attribute to activate this rule. This

Re: [PATCH] if-to-switch pass

2013-07-01 Thread Tom de Vries
pass_switch_conversion later, say the first in pass_all_optimizations, or f.i. after pass_pre to pick-up on tail-merge creating opportunities for if-to-switch conversion once we check that in before or merge with pass_switch_conversion? Thanks, - Tom 2013-07-01 Tom de Vries t...@codesourcery.com

Re: [PATCH] if-to-switch pass

2013-07-01 Thread Tom de Vries
On 01/07/13 14:02, Tom de Vries wrote: I also dislike the two passes being in early optimizations - that way they do not see the effects of IPA inlining / LTO IPA-CP transforms. I'd rather move it way down towards RTL expansion (though eventually some may say that switch-conversion

Re: [PATCH][10/10] -fuse-caller-save - Add test-case

2013-12-05 Thread Tom de Vries
On 27-04-13 12:01, Richard Sandiford wrote: Tom de Vries t...@codesourcery.com writes: +/* { dg-do run } */ +/* { dg-options -fuse-caller-save -save-temps } */ +/* { dg-skip-if { *-*-* } { * } { -Os } } */ +/* Testing -fuse-caller-save optimization option. */ + +static int __attribute__

Re: [PATCH][IRA] Analysis of register usage of functions for usage by IRA.

2013-12-05 Thread Tom de Vries
On 14-03-13 10:34, Tom de Vries wrote: I thought about implementing your optimization for LRA by myself. But it is ok if you decide to work on it. At least, I am not going to start this work for a month. I'm also currently looking at how to use the analysis in LRA. AFAIU, in lra-constraints.c

Re: [PATCH][05/10] -fuse-caller-save - Implement TARGET_FN_OTHER_HARD_REG_USAGE hook for ARM

2013-12-05 Thread Tom de Vries
On 30-03-13 18:11, Tom de Vries wrote: Richard, This patch series adds analysis of register usage of functions for usage by IRA. The original post is here ( http://gcc.gnu.org/ml/gcc-patches/2013-01/msg01234.html ). This patch implements the target hook TARGET_FN_OTHER_HARD_REG_USAGE for ARM

Re: [PATCH][07/10] -fuse-caller-save - Use collected register usage information

2013-12-05 Thread Tom de Vries
On 30-03-13 18:11, Tom de Vries wrote: Paolo, This patch series adds analysis of register usage of functions for usage by IRA. The original post is here ( http://gcc.gnu.org/ml/gcc-patches/2013-01/msg01234.html ). This patch uses the information of which registers are clobbered by a call

[PATCH] -fuse-caller-save - Implement TARGET_FN_OTHER_HARD_REG_USAGE hook for MIPS

2013-12-07 Thread Tom de Vries
-11-12 Chung-Lin Tang clt...@codesourcery.com Tom de Vries t...@codesourcery.com * config/mips/mips.c (POST_CALL_TMP_REG): Define. (mips_split_call): Use POST_CALL_TMP_REG. (mips_fn_other_hard_reg_usage): New function. (TARGET_FN_OTHER_HARD_REG_USAGE): Define targhook using new

Re: question about REG_PARM_STACK_SPACE usage in expand_call

2013-12-14 Thread Tom de Vries
to trunk. Thanks, - Tom jeff 2013-12-14 Tom de Vries t...@codesourcery.com * calls.c (expand_call): Fix REG_PARM_STACK_SPACE comparison. diff --git a/gcc/calls.c b/gcc/calls.c index 2226e78..501474b 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -2595,7 +2595,7 @@ expand_call (tree exp, rtx

Re: question about REG_PARM_STACK_SPACE usage in expand_call

2013-12-14 Thread Tom de Vries
On 15-12-13 04:37, Alan Modra wrote: On Sat, Dec 14, 2013 at 09:14:34PM +0100, Tom de Vries wrote: I wonder if OUTGOING_REG_PARM_STACK_SPACE makes a difference here. If OUTGOING_REG_PARM_STACK_SPACE == 0, it is the responsibility of the callee to allocate the area reserved for arguments passed

Re: [PATCH] -fuse-caller-save - Implement TARGET_FN_OTHER_HARD_REG_USAGE hook for MIPS

2013-12-25 Thread Tom de Vries
On 07-12-13 16:07, Tom de Vries wrote: Richard, This patch implements the target hook TARGET_FN_OTHER_HARD_REG_USAGE (posted here: http://gcc.gnu.org/ml/gcc-patches/2013-03/msg01318.html) for MIPS, to address the issue that $6 is sometimes used in split calls. Build and reg-tested on MIPS. OK

Re: [PATCH] Fix PR59715

2014-01-09 Thread Tom de Vries
is destroyed - notes in pass_sink_code that PROP_no_crit_edge is not required (because it's now ensured by the pass itself) Build and reg-tested pr59715.c on x86_64. OK for stage3 trunk if bootstrap and full reg-test on x86_64 is ok? Thanks, - Tom 2014-01-09 Tom de Vries t...@codesourcery.com * tree

[PING^2][PATCH] -fuse-caller-save - Implement TARGET_FN_OTHER_HARD_REG_USAGE hook for MIPS

2014-01-09 Thread Tom de Vries
On 25/12/13 14:02, Tom de Vries wrote: On 07-12-13 16:07, Tom de Vries wrote: Richard, This patch implements the target hook TARGET_FN_OTHER_HARD_REG_USAGE (posted here: http://gcc.gnu.org/ml/gcc-patches/2013-03/msg01318.html) for MIPS, to address the issue that $6 is sometimes used in split

Re: [PATCH][IRA] Analysis of register usage of functions for usage by IRA.

2014-01-09 Thread Tom de Vries
On 09-01-14 15:41, Richard Earnshaw wrote: On 30/03/13 16:10, Tom de Vries wrote: On 29/03/13 13:54, Tom de Vries wrote: I split the patch up into 10 patches, to facilitate further review: ... 0001-Add-command-line-option.patch 0002-Add-new-reg-note-REG_CALL_DECL.patch 0003-Add-implicit

Re: [PING^2][PATCH] -fuse-caller-save - Implement TARGET_FN_OTHER_HARD_REG_USAGE hook for MIPS

2014-01-09 Thread Tom de Vries
On 09-01-14 16:31, Richard Sandiford wrote: Tom de Vries tom_devr...@mentor.com writes: On 25/12/13 14:02, Tom de Vries wrote: On 07-12-13 16:07, Tom de Vries wrote: Richard, This patch implements the target hook TARGET_FN_OTHER_HARD_REG_USAGE (posted here: http://gcc.gnu.org/ml/gcc-patches

Re: [PATCH][IRA] Analysis of register usage of functions for usage by IRA.

2014-01-09 Thread Tom de Vries
On 09-01-14 22:10, Andi Kleen wrote: Tom de Vries tom_devr...@mentor.com writes: Is this patch OK for stage1 (after proper retesting)? Could you perhaps post the latest series first? I don't think it made it to the mailing list. Andi, the current status is: - toplevel of patch series

Re: [PATCH] Fix PR59715

2014-01-10 Thread Tom de Vries
On 09-01-14 13:33, Richard Biener wrote: On Thu, 9 Jan 2014, Tom de Vries wrote: On 09-01-14 10:16, Richard Biener wrote: This fixes PR59715 by splitting critical edges again before code sinking. The critical edge splitting done before PRE was designed to survive until sinking originally

Re: [PATCH][IRA] Analysis of register usage of functions for usage by IRA.

2014-01-10 Thread Tom de Vries
On 10-01-14 12:39, Richard Earnshaw wrote: On 09/01/14 20:42, Tom de Vries wrote: On 09-01-14 15:41, Richard Earnshaw wrote: On 30/03/13 16:10, Tom de Vries wrote: On 29/03/13 13:54, Tom de Vries wrote: I split the patch up into 10 patches, to facilitate further review: ... 0001-Add-command

Re: [PING^2][PATCH] -fuse-caller-save - Implement TARGET_FN_OTHER_HARD_REG_USAGE hook for MIPS

2014-01-13 Thread Tom de Vries
On 10-01-14 09:47, Richard Sandiford wrote: Tom de Vries tom_devr...@mentor.com writes: Why not just collect the usage information at the end of final rather than at the beginning, so that all splits during final have been done? If we have a call to a leaf function, the final rtl

Re: [PATCH][IRA] Analysis of register usage of functions for usage by IRA.

2014-01-13 Thread Tom de Vries
and -mlra. I'm just using the -mno-lra version here because the -mlra version of -fuse-caller-save is still in review ( http://gcc.gnu.org/ml/gcc-patches/2013-12/msg00586.html ). Thanks, - Tom 2014-01-11 Tom de Vries t...@codesourcery.com * config/aarch64/aarch64.c (TARGET_FN_OTHER_HARD_REG_USAGE

[PATCH] register CALL_INSN_FUNCTION_USAGE in find_all_hard_reg_sets

2014-01-15 Thread Tom de Vries
, - Tom 2014-01-15 Tom de Vries t...@codesourcery.com * rtlanal.c (find_all_hard_reg_sets): Note INSN_CALL_FUNCTION_USAGE clobbers. diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 7e27774..64f83ac 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -1034,8 +1034,25 @@ find_all_hard_reg_sets

[PATCH] Fix PR56131 - Don't reorder DELETED_LABEL and BASIC_BLOCK notes without CFG

2013-02-25 Thread Tom de Vries
-notes.def about when NOTE_INSN_BASIC_BLOCK cannot be expected to be reliable. Bootstrapped and reg-tested on x86_64. OK for trunk? Thanks, - Tom 2013-02-25 Tom de Vries t...@codesourcery.com PR rtl-optimization/56131 * insn-notes.def (INSN_NOTE_BASIC_BLOCK): Update comment

Re: [PATCH][IRA] Analysis of register usage of functions for usage by IRA.

2013-03-14 Thread Tom de Vries
On 13/02/13 23:35, Vladimir Makarov wrote: On 13-02-07 2:11 PM, Tom de Vries wrote: Vladimir, On 25/01/13 16:36, Vladimir Makarov wrote: On 01/25/2013 08:05 AM, Tom de Vries wrote: Vladimir, this patch adds analysis of register usage of functions for usage by IRA. The patch: - adds

Re: [PATCH][IRA] Analysis of register usage of functions for usage by IRA.

2013-03-29 Thread Tom de Vries
On 14/03/13 16:11, Vladimir Makarov wrote: On 03/14/2013 05:34 AM, Tom de Vries wrote: On 13/02/13 23:35, Vladimir Makarov wrote: Actually, I am done with it. In general, it is ok. Although I have some minors comments: Vladimir, Thanks for the review. I split the patch up into 10

[PATCH][01/10] -fuse-caller-save - Add command line option

2013-03-29 Thread Tom de Vries
Vladimir, This patch adds the -fuse-caller-save command line option. Thanks, -Tom 2013-03-29 Radovan Obradovic robrado...@mips.com Tom de Vries t...@codesourcery.com * common.opt (fuse-caller-save): New option. diff --git a/gcc/common.opt b/gcc/common.opt

[PATCH][02/10] -fuse-caller-save - Add new reg-note REG_CALL_DECL

2013-03-29 Thread Tom de Vries
for f.i. sh, and mips with -mabi-calls. Thanks, -Tom 2013-03-29 Radovan Obradovic robrado...@mips.com Tom de Vries t...@codesourcery.com * reg-notes.def (REG_NOTE (CALL_DECL)): New reg-note REG_CALL_DECL. * calls.c (expand_call, emit_library_call_value_1

[PATCH][05/10] -fuse-caller-save - Implement TARGET_FN_OTHER_HARD_REG_USAGE hook for ARM

2013-03-29 Thread Tom de Vries
TARGET_FN_OTHER_HARD_REG_USAGE was introduced in the previous patch in this patch series. Build and reg-tested on ARM. OK for trunk? Thanks, -Tom 2013-03-29 Radovan Obradovic robrado...@mips.com Tom de Vries t...@codesourcery.com * config/arm/arm.c

[PATCH][03/10] -fuse-caller-save - Add implicit parameter to find_all_hard_reg_sets

2013-03-29 Thread Tom de Vries
Vladimir, This patch adds an implicit parameter to find_all_hard_reg_sets. Thanks, -Tom 2013-03-29 Radovan Obradovic robrado...@mips.com Tom de Vries t...@codesourcery.com * rtlanal.c (find_all_hard_reg_sets): Add bool implicit parameter and handle

[PATCH][06/10] -fuse-caller-save - Collect register usage information

2013-03-29 Thread Tom de Vries
Vladimir, This patch adds analysis in pass_final to track which hard registers are set or clobbered by the function body, and stores that information in a struct cgraph_node. Thanks, -Tom 2013-03-29 Radovan Obradovic robrado...@mips.com Tom de Vries t

[PATCH][04/10] -fuse-caller-save - Add TARGET_FN_OTHER_HARD_REG_USAGE hook

2013-03-29 Thread Tom de Vries
2013-03-29 Radovan Obradovic robrado...@mips.com Tom de Vries t...@codesourcery.com * hooks.c (hook_void_hard_reg_set_containerp): New function. * hooks.h (hook_void_hard_reg_set_containerp): Declare. * target.def (fn_other_hard_reg_usage): New

[PATCH][07/10] -fuse-caller-save - Use collected register usage information

2013-03-29 Thread Tom de Vries
and reg-tested on x86_64, Ada inclusive. Build and reg-tested on mips, arm, ppc and sh. Can you approve the df-scan part for trunk? Thanks, -Tom 2013-03-29 Radovan Obradovic robrado...@mips.com Tom de Vries t...@codesourcery.com * df-scan.c (df_get_call_refs

[PATCH][08/10] -fuse-caller-save - Enable by default at O2 and higher

2013-03-29 Thread Tom de Vries
Vladimir, This patch enables the -fuse-caller-save optimization by default. Thanks, -Tom 2013-03-29 Radovan Obradovic robrado...@mips.com Tom de Vries t...@codesourcery.com * opts.c (default_options_table): Add OPT_LEVELS_2_PLUS entry

[PATCH][09/10] -fuse-caller-save - Add documentation

2013-03-29 Thread Tom de Vries
Vladimir, This patch adds the documentation of -fuse-caller-save. Thanks, -Tom 2013-03-29 Radovan Obradovic robrado...@mips.com Tom de Vries t...@codesourcery.com * doc/invoke.texi (@item Optimization Options): Add -fuse-caller-save to gccoptlist

[PATCH][10/10] -fuse-caller-save - Add test-case

2013-03-29 Thread Tom de Vries
and micromips, new effective targets are introduced. Build and reg-tested on mips. OK for trunk? Thanks, -Tom 2013-03-29 Radovan Obradovic robrado...@mips.com Tom de Vries t...@codesourcery.com * lib/target-supports.exp (check_effective_target_mips16

<    1   2   3   4   5   6   7   8   9   10   >