http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54200
--- Comment #6 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-08-10
14:18:51 UTC ---
Guality test that fails:
/* PR tree-optimization/54200 */
/* { dg-do run } */
/* { dg-options "-g -fno-var-tracking-assignments" } */
int o __attribute__((used));
void bar (void) { o = 2; }
int __attribute__((noinline,noclone))
foo (int z, int x, int b)
{
if (x == 1)
{
bar ();
return z;
}
else
{
int a = (x + z) + b;
return a; /* { dg-final { gdb-test 20 "z" "3" } } */
}
}
int main ()
{
foo (3, 2, 1);
return 0;
}
the patch fixes it, but not at -Os (need to investigate that).