This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PR tree-optimization/54985
The following trivial patch seems to fix it.
Index: tree-ssa-threadedge.c
===================================================================
--- tree-ssa-threadedge.c (revision 192749)
+++ tree-ssa-threadedge.c (working copy)
@@ -743,7 +743,7 @@
safe to thread this edge. */
if (e->flags & EDGE_DFS_BACK)
{
- if (cond_arg_set_in_bb (e, e->dest, 1))
+ if (cond_arg_set_in_bb (e, e->dest))
goto fail;
}
@@ -787,7 +787,7 @@
of threading without having to re-run DOM or VRP. */
if (dest
&& ((e->flags & EDGE_DFS_BACK) == 0
- || ! cond_arg_set_in_bb (taken_edge, e->dest, 2)))
+ || ! cond_arg_set_in_bb (taken_edge, e->dest)))
{
/* We don't want to thread back to a block we have already
visited. This may be overly conservative. */
@@ -846,7 +846,7 @@
do
{
if ((e->flags & EDGE_DFS_BACK) == 0
- || ! cond_arg_set_in_bb (e3, e->dest, 3))
+ || ! cond_arg_set_in_bb (e3, e->dest))
e2 = thread_around_empty_block (e3,
dummy_cond,
handle_dominating_asserts,
Sharad
On Tue, Oct 23, 2012 at 4:48 PM, Sharad Singhai <singhai@google.com> wrote:
> The trunk seems to be broken at r192749 due to this patch.
>
> ../../srctrunk/gcc/tree-ssa-threadedge.c: In function ‘void
> thread_across_edge(gimple_statement_d*, edge_def*, bool,
> vec_t<tree_node*>**, tree_node* (*)(gimple_statement_d*,
> gimple_statement_d*))’:
> ../../srctrunk/gcc/tree-ssa-threadedge.c:583: error: too many
> arguments to function ‘bool cond_arg_set_in_bb(edge_def*,
> basic_block_def*)’
> ../../srctrunk/gcc/tree-ssa-threadedge.c:746: error: at this point in file
> ../../srctrunk/gcc/tree-ssa-threadedge.c:583: error: too many
> arguments to function ‘bool cond_arg_set_in_bb(edge_def*,
> basic_block_def*)’
> ../../srctrunk/gcc/tree-ssa-threadedge.c:790: error: at this point in file
> ../../srctrunk/gcc/tree-ssa-threadedge.c:583: error: too many
> arguments to function ‘bool cond_arg_set_in_bb(edge_def*,
> basic_block_def*)’
> ../../srctrunk/gcc/tree-ssa-threadedge.c:849: error: at this point in file
> make: *** [tree-ssa-threadedge.o] Error 1
>
> Sharad