URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 154 |
Rev 816 |
// { dg-do link }
|
// { dg-do link }
|
// { dg-options "-O2" }
|
// { dg-options "-O2" }
|
|
|
class Foo {
|
class Foo {
|
public:
|
public:
|
// No out-of-class definition is provided for these class members.
|
// No out-of-class definition is provided for these class members.
|
// That's technically a violation of the standard, but no diagnostic
|
// That's technically a violation of the standard, but no diagnostic
|
// is required, and, as a QOI issue, we should optimize away all
|
// is required, and, as a QOI issue, we should optimize away all
|
// references.
|
// references.
|
static const int erf = 0;
|
static const int erf = 0;
|
static const int foo = 1;
|
static const int foo = 1;
|
};
|
};
|
|
|
int one()
|
int one()
|
{
|
{
|
return Foo::foo;
|
return Foo::foo;
|
}
|
}
|
|
|
int two()
|
int two()
|
{
|
{
|
return Foo::foo + Foo::erf;
|
return Foo::foo + Foo::erf;
|
}
|
}
|
|
|
int three(int x)
|
int three(int x)
|
{
|
{
|
return x ? Foo::erf : Foo::foo;
|
return x ? Foo::erf : Foo::foo;
|
}
|
}
|
|
|
int i;
|
int i;
|
|
|
int main ()
|
int main ()
|
{
|
{
|
one ();
|
one ();
|
two ();
|
two ();
|
three (i);
|
three (i);
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.