URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 297 |
Rev 338 |
/* Copyright (C) 2003 Free Software Foundation.
|
/* Copyright (C) 2003 Free Software Foundation.
|
|
|
Test that switch statements suitable using case bit tests are
|
Test that switch statements suitable using case bit tests are
|
implemented correctly.
|
implemented correctly.
|
|
|
Written by Roger Sayle, 01/25/2001. */
|
Written by Roger Sayle, 01/25/2001. */
|
|
|
extern void abort (void);
|
extern void abort (void);
|
|
|
int
|
int
|
foo (int x)
|
foo (int x)
|
{
|
{
|
switch (x)
|
switch (x)
|
{
|
{
|
case 4:
|
case 4:
|
case 6:
|
case 6:
|
case 9:
|
case 9:
|
case 11:
|
case 11:
|
return 30;
|
return 30;
|
}
|
}
|
return 31;
|
return 31;
|
}
|
}
|
|
|
int
|
int
|
main (int argc)
|
main (int argc)
|
{
|
{
|
int i, r;
|
int i, r;
|
|
|
for (i=-1; i<66; i++)
|
for (i=-1; i<66; i++)
|
{
|
{
|
r = foo (i);
|
r = foo (i);
|
if (i == 4)
|
if (i == 4)
|
{
|
{
|
if (r != 30)
|
if (r != 30)
|
abort ();
|
abort ();
|
}
|
}
|
else if (i == 6)
|
else if (i == 6)
|
{
|
{
|
if (r != 30)
|
if (r != 30)
|
abort ();
|
abort ();
|
}
|
}
|
else if (i == 9)
|
else if (i == 9)
|
{
|
{
|
if (r != 30)
|
if (r != 30)
|
abort ();
|
abort ();
|
}
|
}
|
else if (i == 11)
|
else if (i == 11)
|
{
|
{
|
if (r != 30)
|
if (r != 30)
|
abort ();
|
abort ();
|
}
|
}
|
else if (r != 31)
|
else if (r != 31)
|
abort ();
|
abort ();
|
}
|
}
|
return 0;
|
return 0;
|
}
|
}
|
|
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.