URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 320 |
Rev 519 |
/* { dg-do compile } */
|
/* { dg-do compile } */
|
/* { dg-options "-mcpu=fidoa -O2 -fomit-frame-pointer" } */
|
/* { dg-options "-mcpu=fidoa -O2 -fomit-frame-pointer" } */
|
|
|
/* Check that interrupt_thread attribute works. */
|
/* Check that interrupt_thread attribute works. */
|
|
|
#ifdef __mfido__
|
#ifdef __mfido__
|
extern void foo (void) __attribute__ ((interrupt_thread));
|
extern void foo (void) __attribute__ ((interrupt_thread));
|
|
|
int a, b, c, d;
|
int a, b, c, d;
|
|
|
void bar (void);
|
void bar (void);
|
|
|
void
|
void
|
foo (void)
|
foo (void)
|
{
|
{
|
int w, x, y, z;
|
int w, x, y, z;
|
|
|
w = a;
|
w = a;
|
x = b;
|
x = b;
|
y = c;
|
y = c;
|
z = d;
|
z = d;
|
|
|
bar ();
|
bar ();
|
|
|
a = w;
|
a = w;
|
b = x;
|
b = x;
|
c = y;
|
c = y;
|
d = z;
|
d = z;
|
}
|
}
|
#else
|
#else
|
/* If the current mutilib is, say, -mcpu=5485, the compiler gets
|
/* If the current mutilib is, say, -mcpu=5485, the compiler gets
|
-mcpu=fidoa -mcpu=5485, where -mcpu=fidoa is overridden. In that
|
-mcpu=fidoa -mcpu=5485, where -mcpu=fidoa is overridden. In that
|
case, we just print out "sleep" in the assembly file and pretend
|
case, we just print out "sleep" in the assembly file and pretend
|
that everything is all right. */
|
that everything is all right. */
|
asm ("sleep");
|
asm ("sleep");
|
#endif
|
#endif
|
|
|
/* "sleep" should be generated in place of "rts". */
|
/* "sleep" should be generated in place of "rts". */
|
/* { dg-final { scan-assembler-times "sleep" 1 } } */
|
/* { dg-final { scan-assembler-times "sleep" 1 } } */
|
/* { dg-final { scan-assembler-times "rts" 0 } } */
|
/* { dg-final { scan-assembler-times "rts" 0 } } */
|
|
|
/* There should be no stack adjustment. */
|
/* There should be no stack adjustment. */
|
/* { dg-final { scan-assembler-times "sp" 0 } } */
|
/* { dg-final { scan-assembler-times "sp" 0 } } */
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.