[gcc]
[official-gcc.git] / gcc / testsuite / gcc.target / aarch64 / assembler_arch_1.c
blob5deea5cf0ee9306743bc47bace6f762d0e35ce65
1 /* { dg-do assemble } */
2 /* { dg-require-effective-target aarch64_asm_lse_ok } */
3 /* { dg-options "-march=armv8-a" } */
5 /* Make sure that the function header in assembly doesn't override
6 user asm arch_extension directives. */
8 __asm__ (".arch_extension lse");
10 void
11 foo (int i, int *v)
13 register int w0 asm ("w0") = i;
14 register int *x1 asm ("x1") = v;
16 asm volatile (
17 "\tstset %w[i], %[v]\n"
18 : [i] "+r" (w0), [v] "+Q" (v)
19 : "r" (x1)
20 : "x30");