blob: 607ac6b8e9c750b93a5de100ff9f5ae8d2813d58 [file] [log] [blame]
/* PR tree-optimization/88676 */
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-optimized" } */
/* { dg-final { scan-tree-dump-not " = PHI <" "optimized" } } */
void bar (int, int, int);
__attribute__((noipa)) int
f1 (unsigned x)
{
int r;
if (x >= 2)
__builtin_unreachable ();
switch (x)
{
case 0:
r = 1;
break;
case 1:
r = 2;
break;
default:
r = 0;
break;
}
return r;
}
__attribute__((noipa)) void
f2 (int x)
{
int y;
x = (x & 1) + 98;
if (x != 98)
y = 115;
else
y = 116;
bar (x, y, 116);
}
__attribute__((noipa)) void
f3 (int x)
{
int y;
x = (x & 1) + 98;
if (x == 98)
y = 115;
else
y = 116;
bar (x, y, 115);
}
__attribute__((noipa)) void
f4 (int x)
{
int y;
x = (x & 1) + 98;
if (x != 99)
y = 115;
else
y = 116;
bar (x, y, 115);
}
__attribute__((noipa)) void
f5 (int x)
{
int y;
x = (x & 1) + 98;
if (x == 99)
y = 115;
else
y = 116;
bar (x, y, 116);
}
__attribute__((noipa)) void
f6 (int x)
{
int y;
x = (x & 1) + 98;
if (x != 98)
y = 116;
else
y = 115;
bar (x, y, 115);
}
__attribute__((noipa)) void
f7 (int x)
{
int y;
x = (x & 1) + 98;
if (x == 98)
y = 116;
else
y = 115;
bar (x, y, 116);
}
__attribute__((noipa)) void
f8 (int x)
{
int y;
x = (x & 1) + 98;
if (x != 99)
y = 116;
else
y = 115;
bar (x, y, 116);
}
__attribute__((noipa)) void
f9 (int x)
{
int y;
x = (x & 1) + 98;
if (x == 99)
y = 116;
else
y = 115;
bar (x, y, 115);
}
__attribute__((noipa)) int
f10 (int x)
{
x = (x & 1) + 36;
if (x == 36)
return 85;
else
return 84;
}