URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 301 |
Rev 384 |
// Test that attributes work in a variety of situations.
|
// Test that attributes work in a variety of situations.
|
// { dg-options -O }
|
// { dg-options -O }
|
// { dg-do run }
|
// { dg-do run }
|
|
|
#define attrib __attribute ((mode (QI)))
|
#define attrib __attribute ((mode (QI)))
|
|
|
attrib signed int a; // attributes before type are broken
|
attrib signed int a; // attributes before type are broken
|
static attrib unsigned int b;
|
static attrib unsigned int b;
|
|
|
int foo(attrib int o) // attribute arguments are broken
|
int foo(attrib int o) // attribute arguments are broken
|
{
|
{
|
return (sizeof (a) != 1
|
return (sizeof (a) != 1
|
|| sizeof (b) != 1
|
|| sizeof (b) != 1
|
|| sizeof (o) != 1
|
|| sizeof (o) != 1
|
|| sizeof ((attrib signed int) b) != 1);
|
|| sizeof ((attrib signed int) b) != 1);
|
}
|
}
|
|
|
int main ()
|
int main ()
|
{
|
{
|
return foo (42);
|
return foo (42);
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.