re PR tree-optimization/81203 (tail recursion: internal compiler error: verify_ssa failed)
2017-06-26 Richard Biener <rguenther@suse.de> PR tree-optimization/81203 * tree-tailcall.c (find_tail_calls): Do not move stmts into non-dominating BBs. * gcc.dg/torture/pr81203.c: New testcase. From-SVN: r249644
This commit is contained in:
parent
3e2becc495
commit
75f0112f1b
@ -1,3 +1,9 @@
|
||||
2017-06-26 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/81203
|
||||
* tree-tailcall.c (find_tail_calls): Do not move stmts into
|
||||
non-dominating BBs.
|
||||
|
||||
2017-06-26 Marek Polacek <polacek@redhat.com>
|
||||
|
||||
PR c/80116
|
||||
|
||||
@ -1,3 +1,8 @@
|
||||
2017-06-26 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/81203
|
||||
* gcc.dg/torture/pr81203.c: New testcase.
|
||||
|
||||
2017-06-26 Marek Polacek <polacek@redhat.com>
|
||||
|
||||
PR c/80116
|
||||
|
||||
10
gcc/testsuite/gcc.dg/torture/pr81203.c
Normal file
10
gcc/testsuite/gcc.dg/torture/pr81203.c
Normal file
@ -0,0 +1,10 @@
|
||||
/* { dg-do compile } */
|
||||
|
||||
int a;
|
||||
int b()
|
||||
{
|
||||
int c, d;
|
||||
if (a)
|
||||
d = b();
|
||||
return 1 + c + d;
|
||||
}
|
||||
@ -573,6 +573,11 @@ find_tail_calls (basic_block bb, struct tailcall **ret)
|
||||
{
|
||||
if (! tail_recursion)
|
||||
return;
|
||||
/* Do not deal with checking dominance, the real fix is to
|
||||
do path isolation for the transform phase anyway, removing
|
||||
the need to compute the accumulators with new stmts. */
|
||||
if (abb != bb)
|
||||
return;
|
||||
for (unsigned opno = 1; opno < gimple_num_ops (stmt); ++opno)
|
||||
{
|
||||
tree op = gimple_op (stmt, opno);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user