URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 816 |
Rev 826 |
/* { dg-do run } */
|
/* { dg-do run } */
|
/* { dg-options "-O2" } */
|
/* { dg-options "-O2" } */
|
|
|
struct A
|
struct A
|
{
|
{
|
int a;
|
int a;
|
int b;
|
int b;
|
};
|
};
|
|
|
struct A a;
|
struct A a;
|
const int B = 42;
|
const int B = 42;
|
|
|
void foo (int i)
|
void foo (int i)
|
{
|
{
|
if (i > 10)
|
if (i > 10)
|
a.a = 42;
|
a.a = 42;
|
else
|
else
|
{
|
{
|
a.b = 21;
|
a.b = 21;
|
a.a = a.b + 21;
|
a.a = a.b + 21;
|
}
|
}
|
|
|
/* This should be folded to 'if (0)' as a.a and B are both 42. */
|
/* This should be folded to 'if (0)' as a.a and B are both 42. */
|
if (a.a != B)
|
if (a.a != B)
|
link_error ();
|
link_error ();
|
}
|
}
|
|
|
main ()
|
main ()
|
{
|
{
|
foo (3);
|
foo (3);
|
return 0;
|
return 0;
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.