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
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
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;
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
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
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.
?
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
-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
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
.
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
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
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
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
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
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
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
)', 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
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
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
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
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
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
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
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.
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
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
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
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
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
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
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
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
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
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
(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
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
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
: 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
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
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
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
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
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
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
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
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
.
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
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
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
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
?
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
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
[ 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
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
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
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
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
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
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
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
?
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
)
...
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
) 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
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
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.
))
| (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
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
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
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
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__
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
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
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
-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
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
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
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
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
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
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
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
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
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
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
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
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
,
- 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
-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
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
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
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
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
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
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
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
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
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
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
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
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
301 - 400 of 2297 matches
Mail list logo