URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 297 |
Rev 338 |
int tab[9];
|
int tab[9];
|
execute(oip, ip)
|
execute(oip, ip)
|
unsigned short *oip, *ip;
|
unsigned short *oip, *ip;
|
{
|
{
|
#ifndef NO_LABEL_VALUES
|
#ifndef NO_LABEL_VALUES
|
int x = 0;
|
int x = 0;
|
int *xp = tab;
|
int *xp = tab;
|
base:
|
base:
|
x++;
|
x++;
|
if (x == 4)
|
if (x == 4)
|
{
|
{
|
*xp = 0;
|
*xp = 0;
|
return;
|
return;
|
}
|
}
|
*xp++ = ip - oip;
|
*xp++ = ip - oip;
|
goto *(&&base + *ip++);
|
goto *(&&base + *ip++);
|
#else
|
#else
|
tab[0] = 0;
|
tab[0] = 0;
|
tab[1] = 1;
|
tab[1] = 1;
|
tab[2] = 2;
|
tab[2] = 2;
|
tab[3] = 0;
|
tab[3] = 0;
|
#endif
|
#endif
|
}
|
}
|
|
|
main()
|
main()
|
{
|
{
|
unsigned short ip[10];
|
unsigned short ip[10];
|
int i;
|
int i;
|
for (i = 0; i < 10; i++)
|
for (i = 0; i < 10; i++)
|
ip[i] = 0;
|
ip[i] = 0;
|
execute(ip, ip);
|
execute(ip, ip);
|
if (tab[0] != 0 || tab[1] != 1 || tab[2] != 2 || tab[3] != 0)
|
if (tab[0] != 0 || tab[1] != 1 || tab[2] != 2 || tab[3] != 0)
|
abort();
|
abort();
|
exit(0);
|
exit(0);
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.