rt_gccstream/gcc/testsuite/gcc.target/ia64/asm-1.c

30 lines
439 B
C

/* { dg-do run } */
/* { dg-options } */
extern void abort (void);
/* Test that "=S" properly avoids the post-increment on the memory address. */
static void foo(int *x)
{
long i;
for (i = 0; i < 100; ++i)
__asm__("st4 %0 = r0" : "=S"(x[i]));
}
int main()
{
int array[100];
long i;
for (i = 0; i < 100; ++i)
array[i] = -1;
foo(array);
for (i = 0; i < 100; ++i)
if (array[i])
abort ();
return 0;
}