xref: /openbmc/qemu/gdb-xml/i386-32bit.xml (revision b14df228)
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>
193