[binutils][aarch64] Add SVE2 tests
[binutils-gdb.git] / gas / testsuite / gas / aarch64 / system.s
1 .text
2 drps
3
4 //
5 // HINTS
6 //
7
8 nop
9 yield
10 wfe
11 wfi
12 sev
13 sevl
14
15 .macro all_hints from=0, to=127
16 hint \from
17 .if \to-\from
18 all_hints "(\from+1)", \to
19 .endif
20 .endm
21
22 all_hints from=0, to=63
23 all_hints from=64, to=127
24
25 //
26 // SYSL
27 //
28
29 sysl x7, #3, C15, C7, #7
30
31 //
32 // BARRIERS
33 //
34
35 .macro all_barriers op, from=0, to=15
36 \op \from
37 .if \to-\from
38 all_barriers \op, "(\from+1)", \to
39 .endif
40 .endm
41
42 all_barriers op=dsb, from=0, to=15
43 all_barriers op=dmb, from=0, to=15
44 all_barriers op=isb, from=0, to=15
45
46 isb
47 ssbb
48 pssbb
49
50 //
51 // PREFETCHS
52 //
53
54 .macro all_prefetchs op, from=0, to=31
55 \op \from, LABEL1
56 \op \from, [sp, x15, lsl #0]
57 \op \from, [x7, w30, uxtw #3]
58 \op \from, [x3, #24]
59 .if \to-\from
60 all_prefetchs \op, "(\from+1)", \to
61 .endif
62 .endm
63
64 all_prefetchs op=prfm, from=0, to=31
65
66 //
67 // PREFETCHS with named operation
68 //
69
70 .irp op, pld, pli, pst
71 .irp l, l1, l2, l3
72 .irp t, keep, strm
73 prfm \op\l\t, [x3, #24]
74 .endr
75 .endr
76 .endr