URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 297 |
Rev 338 |
f1 (unsigned int x, unsigned int y)
|
f1 (unsigned int x, unsigned int y)
|
{
|
{
|
if (x == 0)
|
if (x == 0)
|
dummy ();
|
dummy ();
|
x -= y;
|
x -= y;
|
/* 0xfffffff2 < 0x80000000? */
|
/* 0xfffffff2 < 0x80000000? */
|
if (x < ~(~(unsigned int) 0 >> 1))
|
if (x < ~(~(unsigned int) 0 >> 1))
|
abort ();
|
abort ();
|
return x;
|
return x;
|
}
|
}
|
|
|
f2 (unsigned long int x, unsigned long int y)
|
f2 (unsigned long int x, unsigned long int y)
|
{
|
{
|
if (x == 0)
|
if (x == 0)
|
dummy ();
|
dummy ();
|
x -= y;
|
x -= y;
|
/* 0xfffffff2 < 0x80000000? */
|
/* 0xfffffff2 < 0x80000000? */
|
if (x < ~(~(unsigned long int) 0 >> 1))
|
if (x < ~(~(unsigned long int) 0 >> 1))
|
abort ();
|
abort ();
|
return x;
|
return x;
|
}
|
}
|
|
|
|
|
dummy () {}
|
dummy () {}
|
|
|
main ()
|
main ()
|
{
|
{
|
/* 0x7ffffff3 0x80000001 */
|
/* 0x7ffffff3 0x80000001 */
|
f1 ((~(unsigned int) 0 >> 1) - 12, ~(~(unsigned int) 0 >> 1) + 1);
|
f1 ((~(unsigned int) 0 >> 1) - 12, ~(~(unsigned int) 0 >> 1) + 1);
|
f2 ((~(unsigned long int) 0 >> 1) - 12, ~(~(unsigned long int) 0 >> 1) + 1);
|
f2 ((~(unsigned long int) 0 >> 1) - 12, ~(~(unsigned long int) 0 >> 1) + 1);
|
exit (0);
|
exit (0);
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.