mirror of git://gcc.gnu.org/git/gcc.git
re PR middle-end/67512 (internal compiler error: in invert_tree_comparison, at fold-const.c:2456)
PR middle-end/67512 * tree-ssa-uninit.c (pred_equal_p): Only call invert_tree_comparison for comparisons. * gcc.dg/pr67512.c: New test. From-SVN: r227594
This commit is contained in:
parent
273aa49e2f
commit
c27348aaa5
|
|
@ -1,3 +1,9 @@
|
||||||
|
2015-09-09 Marek Polacek <polacek@redhat.com>
|
||||||
|
|
||||||
|
PR middle-end/67512
|
||||||
|
* tree-ssa-uninit.c (pred_equal_p): Only call invert_tree_comparison
|
||||||
|
for comparisons.
|
||||||
|
|
||||||
2015-09-09 Paolo Carlini <paolo.carlini@oracle.com>
|
2015-09-09 Paolo Carlini <paolo.carlini@oracle.com>
|
||||||
|
|
||||||
PR c++/53184
|
PR c++/53184
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,8 @@
|
||||||
|
2015-09-09 Marek Polacek <polacek@redhat.com>
|
||||||
|
|
||||||
|
PR middle-end/67512
|
||||||
|
* gcc.dg/pr67512.c: New test.
|
||||||
|
|
||||||
2015-09-09 Paolo Carlini <paolo.carlini@oracle.com>
|
2015-09-09 Paolo Carlini <paolo.carlini@oracle.com>
|
||||||
|
|
||||||
PR c++/53184
|
PR c++/53184
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
/* PR middle-end/67512 */
|
||||||
|
/* { dg-do compile } */
|
||||||
|
/* { dg-options "-O -Wuninitialized" } */
|
||||||
|
|
||||||
|
extern int fn2 (void);
|
||||||
|
extern int fn3 (int);
|
||||||
|
void
|
||||||
|
fn1 (void)
|
||||||
|
{
|
||||||
|
int z, m;
|
||||||
|
if (1 & m) /* { dg-warning "is used uninitialized" } */
|
||||||
|
z = fn2 ();
|
||||||
|
z = 1 == m ? z : 2 == m;
|
||||||
|
fn3 (z);
|
||||||
|
}
|
||||||
|
|
@ -1296,7 +1296,8 @@ pred_equal_p (pred_info x1, pred_info x2)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
c1 = x1.cond_code;
|
c1 = x1.cond_code;
|
||||||
if (x1.invert != x2.invert)
|
if (x1.invert != x2.invert
|
||||||
|
&& TREE_CODE_CLASS (x2.cond_code) == tcc_comparison)
|
||||||
c2 = invert_tree_comparison (x2.cond_code, false);
|
c2 = invert_tree_comparison (x2.cond_code, false);
|
||||||
else
|
else
|
||||||
c2 = x2.cond_code;
|
c2 = x2.cond_code;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue