summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/compile/20010605-3.c
blob: a43c0b1e462e1c9b039800de04e7433584473e00 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
struct A { unsigned long buf[100]; };
int foo(unsigned int *x)
{
  unsigned int a;

  if (!x)
    return -22;

#ifdef __ia64__
  if (({
    register long b asm ("r8") = 0;
    register long c asm ("r9") = 0;
    asm ("" : "=r"(c), "=r"(b) : "m"(*(struct A *)x), "1"(b));
    a = (unsigned int) c;
    b; }))
    return -14;
#endif

  return 0;
}