PR inline-asm/84742
[official-gcc.git] / gcc / testsuite / gcc.target / i386 / pr78967-3.c
blobb69f409d7efdda3d3fdc0eda07479a372ce179b1
1 /* PR target/78967 */
2 /* { dg-do assemble { target { ! ia32 } } } */
3 /* { dg-options "-O2" } */
5 typedef __SIZE_TYPE__ size_t;
7 struct S1
9 unsigned char pad1;
10 unsigned char val;
11 unsigned short pad2;
14 extern unsigned char t[256];
16 struct S1 foo (struct S1 a, size_t i)
18 register size_t _i __asm ("r10") = i;
20 asm volatile ("" : "+r" (_i));
21 a.val = t[_i];
23 return a;