Add assembler and disassembler support for the new Armv8.4-a registers for AArch64.
[deliverable/binutils-gdb.git] / gas / testsuite / gas / aarch64 / armv8_4-a-registers.s
1 .macro gen_mrs reg
2 .irp m, 3, 11, 15
3 MRS X\m, \reg
4 .endr
5 .endm
6
7 .macro gen_tlbi reg
8 .irp m, 3, 11, 15
9 TLBI \reg, X\m
10 .endr
11 .endm
12 func:
13 # Secure second stage
14 gen_mrs VSTTBR_EL2
15 gen_mrs VSTCR_EL2
16
17 # Timer changes
18 gen_mrs CNTP_TVAL_EL0
19 gen_mrs CNTP_CTL_EL0
20 gen_mrs CNTP_CVAL_EL0
21 gen_mrs CNTV_TVAL_EL0
22 gen_mrs CNTV_CTL_EL0
23 gen_mrs CNTV_CVAL_EL0
24
25 gen_mrs CNTHVS_TVAL_EL2
26 gen_mrs CNTHVS_CVAL_EL2
27 gen_mrs CNTHVS_CTL_EL2
28 gen_mrs CNTHPS_TVAL_EL2
29 gen_mrs CNTHPS_CVAL_EL2
30 gen_mrs CNTHPS_CTL_EL2
31
32 # Debug state
33 gen_mrs SDER32_EL2
34
35 # Nested Virtualization
36 gen_mrs VNCR_EL2
37
38 # PSTATE
39 MSR DIT, #01
40 MSR DIT, #00
41 MSR DIT, X3
42 MSR DIT, X11
43 MSR DIT, X15
44 gen_mrs DIT
45
46 # TLB Maintenance instructions
47 TLBI VMALLE1OS
48 TLBI ALLE2OS
49 TLBI ALLE1OS
50 TLBI ALLE3OS
51 TLBI VMALLS12E1OS
52 gen_tlbi VAE1OS
53 gen_tlbi ASIDE1OS
54 gen_tlbi VAAE1OS
55 gen_tlbi VALE1OS
56 gen_tlbi VAALE1OS
57 gen_tlbi IPAS2E1OS
58 gen_tlbi IPAS2LE1OS
59 gen_tlbi VAE2OS
60 gen_tlbi VALE2OS
61 gen_tlbi VAE3OS
62 gen_tlbi VALE3OS
63
64 # TLB Range Maintenance Instructions
65 gen_tlbi RVAE1
66 gen_tlbi RVAAE1
67 gen_tlbi RVALE1
68 gen_tlbi RVAALE1
69 gen_tlbi RVAE1IS
70 gen_tlbi RVAAE1IS
71 gen_tlbi RVALE1IS
72 gen_tlbi RVAALE1IS
73 gen_tlbi RVAE1OS
74 gen_tlbi RVAAE1OS
75 gen_tlbi RVALE1OS
76 gen_tlbi RVAALE1OS
77 gen_tlbi RIPAS2E1IS
78 gen_tlbi RIPAS2LE1IS
79 gen_tlbi RIPAS2E1
80 gen_tlbi RIPAS2LE1
81 gen_tlbi RIPAS2E1OS
82 gen_tlbi RIPAS2LE1OS
83 gen_tlbi RVAE2
84 gen_tlbi RVALE2
85 gen_tlbi RVAE2IS
86 gen_tlbi RVALE2IS
87 gen_tlbi RVAE2OS
88 gen_tlbi RVALE2OS
89 gen_tlbi RVAE3
90 gen_tlbi RVALE3
91 gen_tlbi RVAE3IS
92 gen_tlbi RVALE3IS
93 gen_tlbi RVAE3OS
94 gen_tlbi RVALE3OS
This page took 0.031643 seconds and 4 git commands to generate.