re PR tree-optimization/19952 (ICE: tree check: expected class 'declaration', have 'statement' (label_expr) in tree_verify_flow_info, at tree-cfg.c:3709)
PR 19952 * tree-if-conv.c (process_phi_nodes): Use bsi_after_labels and skip all labels * g++.dg/tree-ssa/pr19952.C: New test. From-SVN: r95430
This commit is contained in:
parent
a47e0c22a0
commit
263fb23d4a
4 changed files with 36 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
|||
2005-02-22 Devang Patel <dpatel@apple.com>
|
||||
|
||||
PR 19952
|
||||
* tree-if-conv.c (process_phi_nodes): Use bsi_after_labels and skip
|
||||
all labels
|
||||
|
||||
2005-02-22 David Edelsohn <edelsohn@gnu.org>
|
||||
|
||||
* config/rs6000/aix.h (WINT_TYPE): Define.
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2005-02-22 Devang Patel <dpatel@apple.com>
|
||||
|
||||
PR 19952
|
||||
* g++.dg/tree-ssa/pr19952.C: New test.
|
||||
|
||||
2005-02-22 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
PR c++/19883
|
||||
|
|
24
gcc/testsuite/g++.dg/tree-ssa/pr19952.C
Normal file
24
gcc/testsuite/g++.dg/tree-ssa/pr19952.C
Normal file
|
@ -0,0 +1,24 @@
|
|||
/* PR 19952 */
|
||||
/* { dg-compile } */
|
||||
/* { dg-options "-ftree-vectorize -O2" } */
|
||||
|
||||
int i;
|
||||
|
||||
struct A
|
||||
{
|
||||
~A() { ++i; }
|
||||
};
|
||||
|
||||
struct B
|
||||
{
|
||||
A a;
|
||||
};
|
||||
|
||||
void foo()
|
||||
{
|
||||
for (int i=0; i<2; ++i)
|
||||
{
|
||||
B *p;
|
||||
if (p) p->~B();
|
||||
}
|
||||
}
|
|
@ -830,7 +830,7 @@ process_phi_nodes (struct loop *loop)
|
|||
continue;
|
||||
|
||||
phi = phi_nodes (bb);
|
||||
bsi = bsi_start (bb);
|
||||
bsi = bsi_after_labels (bb);
|
||||
|
||||
/* BB has two predecessors. Using predecessor's aux field, set
|
||||
appropriate condition for the PHI node replacement. */
|
||||
|
|
Loading…
Add table
Reference in a new issue