aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.arch/riscv-tdesc-regs-64.xml
blob: b2422aeb86667c9e5045fc3c04ad971fa8f0c501 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?xml version="1.0"?>
<!DOCTYPE target SYSTEM "gdb-target.dtd">
<target>
  <architecture>riscv</architecture>
  <feature name="org.gnu.gdb.riscv.cpu">
    <reg name="zero" bitsize="64" type="int"/>
    <reg name="ra" bitsize="64" type="code_ptr"/>
    <reg name="sp" bitsize="64" type="data_ptr"/>
    <reg name="gp" bitsize="64" type="data_ptr"/>
    <reg name="tp" bitsize="64" type="data_ptr"/>
    <reg name="t0" bitsize="64" type="int"/>
    <reg name="t1" bitsize="64" type="int"/>
    <reg name="t2" bitsize="64" type="int"/>
    <reg name="fp" bitsize="64" type="data_ptr"/>
    <reg name="s1" bitsize="64" type="int"/>
    <reg name="a0" bitsize="64" type="int"/>
    <reg name="a1" bitsize="64" type="int"/>
    <reg name="a2" bitsize="64" type="int"/>
    <reg name="a3" bitsize="64" type="int"/>
    <reg name="a4" bitsize="64" type="int"/>
    <reg name="a5" bitsize="64" type="int"/>
    <reg name="a6" bitsize="64" type="int"/>
    <reg name="a7" bitsize="64" type="int"/>
    <reg name="s2" bitsize="64" type="int"/>
    <reg name="s3" bitsize="64" type="int"/>
    <reg name="s4" bitsize="64" type="int"/>
    <reg name="s5" bitsize="64" type="int"/>
    <reg name="s6" bitsize="64" type="int"/>
    <reg name="s7" bitsize="64" type="int"/>
    <reg name="s8" bitsize="64" type="int"/>
    <reg name="s9" bitsize="64" type="int"/>
    <reg name="s10" bitsize="64" type="int"/>
    <reg name="s11" bitsize="64" type="int"/>
    <reg name="t3" bitsize="64" type="int"/>
    <reg name="t4" bitsize="64" type="int"/>
    <reg name="t5" bitsize="64" type="int"/>
    <reg name="t6" bitsize="64" type="int"/>
    <reg name="pc" bitsize="64" type="code_ptr"/>
  </feature>
  <feature name="org.gnu.gdb.riscv.fpu">
    <union id="riscv_double">
      <field name="float" type="ieee_single"/>
      <field name="double" type="ieee_double"/>
    </union>
    <reg name="ft0" bitsize="64" type="riscv_double"/>
    <reg name="ft1" bitsize="64" type="riscv_double"/>
    <reg name="ft2" bitsize="64" type="riscv_double"/>
    <reg name="ft3" bitsize="64" type="riscv_double"/>
    <reg name="ft4" bitsize="64" type="riscv_double"/>
    <reg name="ft5" bitsize="64" type="riscv_double"/>
    <reg name="ft6" bitsize="64" type="riscv_double"/>
    <reg name="ft7" bitsize="64" type="riscv_double"/>
    <reg name="fs0" bitsize="64" type="riscv_double"/>
    <reg name="fs1" bitsize="64" type="riscv_double"/>
    <reg name="fa0" bitsize="64" type="riscv_double"/>
    <reg name="fa1" bitsize="64" type="riscv_double"/>
    <reg name="fa2" bitsize="64" type="riscv_double"/>
    <reg name="fa3" bitsize="64" type="riscv_double"/>
    <reg name="fa4" bitsize="64" type="riscv_double"/>
    <reg name="fa5" bitsize="64" type="riscv_double"/>
    <reg name="fa6" bitsize="64" type="riscv_double"/>
    <reg name="fa7" bitsize="64" type="riscv_double"/>
    <reg name="fs2" bitsize="64" type="riscv_double"/>
    <reg name="fs3" bitsize="64" type="riscv_double"/>
    <reg name="fs4" bitsize="64" type="riscv_double"/>
    <reg name="fs5" bitsize="64" type="riscv_double"/>
    <reg name="fs6" bitsize="64" type="riscv_double"/>
    <reg name="fs7" bitsize="64" type="riscv_double"/>
    <reg name="fs8" bitsize="64" type="riscv_double"/>
    <reg name="fs9" bitsize="64" type="riscv_double"/>
    <reg name="fs10" bitsize="64" type="riscv_double"/>
    <reg name="fs11" bitsize="64" type="riscv_double"/>
    <reg name="ft8" bitsize="64" type="riscv_double"/>
    <reg name="ft9" bitsize="64" type="riscv_double"/>
    <reg name="ft10" bitsize="64" type="riscv_double"/>
    <reg name="ft11" bitsize="64" type="riscv_double"/>
    <!-- The following 3 registers are duplicated. -->
    <reg name="fflags" bitsize="32" type="int"/>
    <reg name="frm" bitsize="32" type="int"/>
    <reg name="fcsr" bitsize="32" type="int"/>
  </feature>
  <feature name="org.gnu.gdb.riscv.csr">
    <!-- The following 3 registers are duplicated. -->
    <reg name="fflags" bitsize="32" type="int"/>
    <reg name="frm" bitsize="32" type="int"/>
    <reg name="fcsr" bitsize="32" type="int"/>
    <!-- The following is a CSR unknown to GDB. -->
    <reg name="unknown_csr" bitsize="32" type="int"/>
    <!-- The following is now known as 'dscratch0' in the official
         RISC-V spec, but GDB should NOT rename this register. -->
    <reg name="dscratch" bitsize="32" type="int"/>
  </feature>
</target>