URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 149 |
Rev 154 |
/* { dg-do run } */
|
/* { dg-do run } */
|
|
|
extern void abort(void);
|
extern void abort(void);
|
struct a
|
struct a
|
{
|
{
|
unsigned int bits : 1;
|
unsigned int bits : 1;
|
signed long val : ((sizeof(long) * 8) - 1);
|
signed long val : ((sizeof(long) * 8) - 1);
|
};
|
};
|
int Fnegate (struct a b)
|
int Fnegate (struct a b)
|
{
|
{
|
if ((-((long)b.val)) <= ((long) ((1UL << ((sizeof(long) * 8) - 2)) -1UL))
|
if ((-((long)b.val)) <= ((long) ((1UL << ((sizeof(long) * 8) - 2)) -1UL))
|
&& (-((long)b.val)) >= (-(((long) ((1UL << ((sizeof(long) * 8) - 2)) -1UL))) - 1))
|
&& (-((long)b.val)) >= (-(((long) ((1UL << ((sizeof(long) * 8) - 2)) -1UL))) - 1))
|
return 0 ;
|
return 0 ;
|
abort ();
|
abort ();
|
}
|
}
|
int main ()
|
int main ()
|
{
|
{
|
struct a b = {1, 1};
|
struct a b = {1, 1};
|
Fnegate (b);
|
Fnegate (b);
|
return 0;
|
return 0;
|
}
|
}
|
|
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.