Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20200703' into...
[qemu.git] / gdb-xml / i386-32bit.xml
1 <?xml version="1.0"?>
2 <!-- Copyright (C) 2010-2017 Free Software Foundation, Inc.
3
4 Copying and distribution of this file, with or without modification,
5 are permitted in any medium without royalty provided the copyright
6 notice and this notice are preserved. -->
7
8 <!-- I386 with SSE -->
9
10 <!DOCTYPE target SYSTEM "gdb-target.dtd">
11 <feature name="org.gnu.gdb.i386.core">
12 <flags id="i386_eflags" size="4">
13 <field name="" start="22" end="31"/>
14 <field name="ID" start="21" end="21"/>
15 <field name="VIP" start="20" end="20"/>
16 <field name="VIF" start="19" end="19"/>
17 <field name="AC" start="18" end="18"/>
18 <field name="VM" start="17" end="17"/>
19 <field name="RF" start="16" end="16"/>
20 <field name="" start="15" end="15"/>
21 <field name="NT" start="14" end="14"/>
22 <field name="IOPL" start="12" end="13"/>
23 <field name="OF" start="11" end="11"/>
24 <field name="DF" start="10" end="10"/>
25 <field name="IF" start="9" end="9"/>
26 <field name="TF" start="8" end="8"/>
27 <field name="SF" start="7" end="7"/>
28 <field name="ZF" start="6" end="6"/>
29 <field name="" start="5" end="5"/>
30 <field name="AF" start="4" end="4"/>
31 <field name="" start="3" end="3"/>
32 <field name="PF" start="2" end="2"/>
33 <field name="" start="1" end="1"/>
34 <field name="CF" start="0" end="0"/>
35 </flags>
36
37 <reg name="eax" bitsize="32" type="int32" regnum="0"/>
38 <reg name="ecx" bitsize="32" type="int32"/>
39 <reg name="edx" bitsize="32" type="int32"/>
40 <reg name="ebx" bitsize="32" type="int32"/>
41 <reg name="esp" bitsize="32" type="data_ptr"/>
42 <reg name="ebp" bitsize="32" type="data_ptr"/>
43 <reg name="esi" bitsize="32" type="int32"/>
44 <reg name="edi" bitsize="32" type="int32"/>
45
46 <reg name="eip" bitsize="32" type="code_ptr"/>
47 <reg name="eflags" bitsize="32" type="i386_eflags"/>
48
49 <reg name="cs" bitsize="32" type="int32"/>
50 <reg name="ss" bitsize="32" type="int32"/>
51 <reg name="ds" bitsize="32" type="int32"/>
52 <reg name="es" bitsize="32" type="int32"/>
53 <reg name="fs" bitsize="32" type="int32"/>
54 <reg name="gs" bitsize="32" type="int32"/>
55
56 <!-- Segment descriptor caches and TLS base MSRs -->
57
58 <!--reg name="cs_base" bitsize="32" type="int32"/>
59 <reg name="ss_base" bitsize="32" type="int32"/>
60 <reg name="ds_base" bitsize="32" type="int32"/>
61 <reg name="es_base" bitsize="32" type="int32"/-->
62 <reg name="fs_base" bitsize="32" type="int32"/>
63 <reg name="gs_base" bitsize="32" type="int32"/>
64 <reg name="k_gs_base" bitsize="32" type="int32"/>
65
66 <flags id="i386_cr0" size="4">
67 <field name="PG" start="31" end="31"/>
68 <field name="CD" start="30" end="30"/>
69 <field name="NW" start="29" end="29"/>
70 <field name="AM" start="18" end="18"/>
71 <field name="WP" start="16" end="16"/>
72 <field name="NE" start="5" end="5"/>
73 <field name="ET" start="4" end="4"/>
74 <field name="TS" start="3" end="3"/>
75 <field name="EM" start="2" end="2"/>
76 <field name="MP" start="1" end="1"/>
77 <field name="PE" start="0" end="0"/>
78 </flags>
79
80 <flags id="i386_cr3" size="4">
81 <field name="PDBR" start="12" end="31"/>
82 <!--field name="" start="3" end="11"/>
83 <field name="WT" start="2" end="2"/>
84 <field name="CD" start="1" end="1"/>
85 <field name="" start="0" end="0"/-->
86 <field name="PCID" start="0" end="11"/>
87 </flags>
88
89 <flags id="i386_cr4" size="4">
90 <field name="VME" start="0" end="0"/>
91 <field name="PVI" start="1" end="1"/>
92 <field name="TSD" start="2" end="2"/>
93 <field name="DE" start="3" end="3"/>
94 <field name="PSE" start="4" end="4"/>
95 <field name="PAE" start="5" end="5"/>
96 <field name="MCE" start="6" end="6"/>
97 <field name="PGE" start="7" end="7"/>
98 <field name="PCE" start="8" end="8"/>
99 <field name="OSFXSR" start="9" end="9"/>
100 <field name="OSXMMEXCPT" start="10" end="10"/>
101 <field name="UMIP" start="11" end="11"/>
102 <field name="LA57" start="12" end="12"/>
103 <field name="VMXE" start="13" end="13"/>
104 <field name="SMXE" start="14" end="14"/>
105 <field name="FSGSBASE" start="16" end="16"/>
106 <field name="PCIDE" start="17" end="17"/>
107 <field name="OSXSAVE" start="18" end="18"/>
108 <field name="SMEP" start="20" end="20"/>
109 <field name="SMAP" start="21" end="21"/>
110 <field name="PKE" start="22" end="22"/>
111 </flags>
112
113 <flags id="i386_efer" size="8">
114 <field name="TCE" start="15" end="15"/>
115 <field name="FFXSR" start="14" end="14"/>
116 <field name="LMSLE" start="13" end="13"/>
117 <field name="SVME" start="12" end="12"/>
118 <field name="NXE" start="11" end="11"/>
119 <field name="LMA" start="10" end="10"/>
120 <field name="LME" start="8" end="8"/>
121 <field name="SCE" start="0" end="0"/>
122 </flags>
123
124 <reg name="cr0" bitsize="32" type="i386_cr0"/>
125 <reg name="cr2" bitsize="32" type="int32"/>
126 <reg name="cr3" bitsize="32" type="i386_cr3"/>
127 <reg name="cr4" bitsize="32" type="i386_cr4"/>
128 <reg name="cr8" bitsize="32" type="int32"/>
129 <reg name="efer" bitsize="32" type="i386_efer"/>
130
131 <reg name="st0" bitsize="80" type="i387_ext"/>
132 <reg name="st1" bitsize="80" type="i387_ext"/>
133 <reg name="st2" bitsize="80" type="i387_ext"/>
134 <reg name="st3" bitsize="80" type="i387_ext"/>
135 <reg name="st4" bitsize="80" type="i387_ext"/>
136 <reg name="st5" bitsize="80" type="i387_ext"/>
137 <reg name="st6" bitsize="80" type="i387_ext"/>
138 <reg name="st7" bitsize="80" type="i387_ext"/>
139
140 <reg name="fctrl" bitsize="32" type="int" group="float"/>
141 <reg name="fstat" bitsize="32" type="int" group="float"/>
142 <reg name="ftag" bitsize="32" type="int" group="float"/>
143 <reg name="fiseg" bitsize="32" type="int" group="float"/>
144 <reg name="fioff" bitsize="32" type="int" group="float"/>
145 <reg name="foseg" bitsize="32" type="int" group="float"/>
146 <reg name="fooff" bitsize="32" type="int" group="float"/>
147 <reg name="fop" bitsize="32" type="int" group="float"/>
148 <!--/feature>
149 <feature name="org.gnu.gdb.i386.32bit.sse"-->
150 <vector id="v4f" type="ieee_single" count="4"/>
151 <vector id="v2d" type="ieee_double" count="2"/>
152 <vector id="v16i8" type="int8" count="16"/>
153 <vector id="v8i16" type="int16" count="8"/>
154 <vector id="v4i32" type="int32" count="4"/>
155 <vector id="v2i64" type="int64" count="2"/>
156 <union id="vec128">
157 <field name="v4_float" type="v4f"/>
158 <field name="v2_double" type="v2d"/>
159 <field name="v16_int8" type="v16i8"/>
160 <field name="v8_int16" type="v8i16"/>
161 <field name="v4_int32" type="v4i32"/>
162 <field name="v2_int64" type="v2i64"/>
163 <field name="uint128" type="uint128"/>
164 </union>
165 <flags id="i386_mxcsr" size="4">
166 <field name="IE" start="0" end="0"/>
167 <field name="DE" start="1" end="1"/>
168 <field name="ZE" start="2" end="2"/>
169 <field name="OE" start="3" end="3"/>
170 <field name="UE" start="4" end="4"/>
171 <field name="PE" start="5" end="5"/>
172 <field name="DAZ" start="6" end="6"/>
173 <field name="IM" start="7" end="7"/>
174 <field name="DM" start="8" end="8"/>
175 <field name="ZM" start="9" end="9"/>
176 <field name="OM" start="10" end="10"/>
177 <field name="UM" start="11" end="11"/>
178 <field name="PM" start="12" end="12"/>
179 <field name="FZ" start="15" end="15"/>
180 </flags>
181
182 <reg name="xmm0" bitsize="128" type="vec128"/>
183 <reg name="xmm1" bitsize="128" type="vec128"/>
184 <reg name="xmm2" bitsize="128" type="vec128"/>
185 <reg name="xmm3" bitsize="128" type="vec128"/>
186 <reg name="xmm4" bitsize="128" type="vec128"/>
187 <reg name="xmm5" bitsize="128" type="vec128"/>
188 <reg name="xmm6" bitsize="128" type="vec128"/>
189 <reg name="xmm7" bitsize="128" type="vec128"/>
190
191 <reg name="mxcsr" bitsize="32" type="i386_mxcsr" group="vector"/>
192 </feature>