Skip to content

Commit 8005c31

Browse files
remove x86 register code
1 parent ce77442 commit 8005c31

File tree

23 files changed

+31
-1625
lines changed

23 files changed

+31
-1625
lines changed

src/codeview/codeview.c

Lines changed: 0 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@ cv_size_from_reg(CV_Arch arch, CV_Reg reg)
4747
{
4848
switch(arch)
4949
{
50-
case CV_Arch_8086: return cv_size_from_reg_x86(reg);
5150
case CV_Arch_X64 : return cv_size_from_reg_x64(reg);
5251
default: NotImplemented;
5352
}
@@ -59,25 +58,12 @@ cv_is_reg_sp(CV_Arch arch, CV_Reg reg)
5958
{
6059
switch(arch)
6160
{
62-
case CV_Arch_8086: return reg == CV_Regx86_ESP;
6361
case CV_Arch_X64: return reg == CV_Regx64_RSP;
6462
default: NotImplemented;
6563
}
6664
return 0;
6765
}
6866

69-
internal U64
70-
cv_size_from_reg_x86(CV_Reg reg)
71-
{
72-
switch(reg)
73-
{
74-
#define X(NAME, CODE, RDI_NAME, BYTE_POS, BYTE_SIZE) case CV_Regx86_##NAME: return BYTE_SIZE;
75-
CV_Reg_X86_XList(X)
76-
#undef X
77-
}
78-
return 0;
79-
}
80-
8167
internal U64
8268
cv_size_from_reg_x64(CV_Reg reg)
8369
{
@@ -111,18 +97,6 @@ cv_decode_fp_reg(CV_Arch arch, CV_EncodedFramePtrReg encoded_reg)
11197
CV_Reg fp_reg = 0;
11298
switch (arch)
11399
{
114-
case CV_Arch_8086:
115-
{
116-
switch (encoded_reg)
117-
{
118-
case CV_EncodedFramePtrReg_None : break;
119-
case CV_EncodedFramePtrReg_StackPtr: AssertAlways(!"TODO: not tested, this is a guess");
120-
fp_reg = CV_Regx86_ESP; break;
121-
case CV_EncodedFramePtrReg_FramePtr: fp_reg = CV_Regx86_EBP; break;
122-
case CV_EncodedFramePtrReg_BasePtr : fp_reg = CV_Regx86_EBX; break;
123-
default: InvalidPath;
124-
}
125-
} break;
126100
case CV_Arch_X64:
127101
{
128102
switch (encoded_reg)
@@ -144,14 +118,6 @@ cv_map_encoded_base_pointer(CV_Arch arch, U32 encoded_frame_reg)
144118
{
145119
U32 r = 0;
146120
switch (arch) {
147-
case CV_Arch_8086: {
148-
switch (encoded_frame_reg) {
149-
case 0: r = 0; break;
150-
case 1: r = CV_AllReg_VFRAME; break;
151-
case 2: r = CV_Regx86_EBP; break;
152-
case 3: r = CV_Regx86_EBX; break;
153-
}
154-
} break;
155121
case CV_Arch_X64: {
156122
switch (encoded_frame_reg) {
157123
case 0: r = 0; break;
@@ -207,13 +173,6 @@ cv_string_from_reg_id(Arena *arena, CV_Arch arch, U32 id)
207173
{
208174
String8 result = str8_zero();
209175
switch (arch) {
210-
case CV_Arch_8086: {
211-
switch (id) {
212-
#define X(_N, _ID, ...) case _ID: result = str8_lit(Stringify(_N)); break;
213-
CV_Reg_X86_XList(X)
214-
#undef X
215-
}
216-
} break;
217176
case CV_Arch_X64: {
218177
switch (id) {
219178
#define X(_N, _ID, ...) case _ID: result = str8_lit(Stringify(_N)); break;

src/codeview/codeview.h

Lines changed: 0 additions & 256 deletions
Original file line numberDiff line numberDiff line change
@@ -41,261 +41,6 @@ read_only global CV_TypeId cv_type_id_variadic = 0xFFFFFFFF;
4141
////////////////////////////////
4242
//~ rjf: Registers
4343

44-
// X(NAME, CODE, (RDI_RegCode_X86) NAME, BYTE_POS, BYTE_SIZE)
45-
#define CV_Reg_X86_XList(X) \
46-
X(NONE, 0, nil, 0, 0) \
47-
X(AL, 1, eax, 0, 1) \
48-
X(CL, 2, ecx, 0, 1) \
49-
X(DL, 3, edx, 0, 1) \
50-
X(BL, 4, ebx, 0, 1) \
51-
X(AH, 5, eax, 1, 1) \
52-
X(CH, 6, ecx, 1, 1) \
53-
X(DH, 7, edx, 1, 1) \
54-
X(BH, 8, ebx, 1, 1) \
55-
X(AX, 9, eax, 0, 2) \
56-
X(CX, 10, ecx, 0, 2) \
57-
X(DX, 11, edx, 0, 2) \
58-
X(BX, 12, ebx, 0, 2) \
59-
X(SP, 13, esp, 0, 2) \
60-
X(BP, 14, ebp, 0, 2) \
61-
X(SI, 15, esi, 0, 2) \
62-
X(DI, 16, edi, 0, 2) \
63-
X(EAX, 17, eax, 0, 4) \
64-
X(ECX, 18, ecx, 0, 4) \
65-
X(EDX, 19, edx, 0, 4) \
66-
X(EBX, 20, ebx, 0, 4) \
67-
X(ESP, 21, esp, 0, 4) \
68-
X(EBP, 22, ebp, 0, 4) \
69-
X(ESI, 23, esi, 0, 4) \
70-
X(EDI, 24, edi, 0, 4) \
71-
X(ES, 25, es, 0, 2) \
72-
X(CS, 26, cs, 0, 2) \
73-
X(SS, 27, ss, 0, 2) \
74-
X(DS, 28, ds, 0, 2) \
75-
X(FS, 29, fs, 0, 2) \
76-
X(GS, 30, gs, 0, 2) \
77-
X(IP, 31, eip, 0, 2) \
78-
X(FLAGS, 32, eflags, 0, 2) \
79-
X(EIP, 33, eip, 0, 4) \
80-
X(EFLAGS, 34, eflags, 0, 4) \
81-
X(MM0, 146, st0, 0, 8) \
82-
X(MM1, 147, st1, 0, 8) \
83-
X(MM2, 148, st2, 0, 8) \
84-
X(MM3, 149, st3, 0, 8) \
85-
X(MM4, 150, st4, 0, 8) \
86-
X(MM5, 151, st5, 0, 8) \
87-
X(MM6, 152, st6, 0, 8) \
88-
X(MM7, 153, st7, 0, 8) \
89-
X(XMM0, 154, ymm0, 0, 16) \
90-
X(XMM1, 155, ymm1, 0, 16) \
91-
X(XMM2, 156, ymm2, 0, 16) \
92-
X(XMM3, 157, ymm3, 0, 16) \
93-
X(XMM4, 158, ymm4, 0, 16) \
94-
X(XMM5, 159, ymm5, 0, 16) \
95-
X(XMM6, 160, ymm6, 0, 16) \
96-
X(XMM7, 161, ymm7, 0, 16) \
97-
X(XMM00, 162, ymm0, 0, 4) \
98-
X(XMM01, 163, ymm0, 4, 4) \
99-
X(XMM02, 164, ymm0, 8, 4) \
100-
X(XMM03, 165, ymm0, 12, 4) \
101-
X(XMM10, 166, ymm1, 0, 4) \
102-
X(XMM11, 167, ymm1, 4, 4) \
103-
X(XMM12, 168, ymm1, 8, 4) \
104-
X(XMM13, 169, ymm1, 12, 4) \
105-
X(XMM20, 170, ymm2, 0, 4) \
106-
X(XMM21, 171, ymm2, 4, 4) \
107-
X(XMM22, 172, ymm2, 8, 4) \
108-
X(XMM23, 173, ymm2, 12, 4) \
109-
X(XMM30, 174, ymm3, 0, 4) \
110-
X(XMM31, 175, ymm3, 4, 4) \
111-
X(XMM32, 176, ymm3, 8, 4) \
112-
X(XMM33, 177, ymm3, 12, 4) \
113-
X(XMM40, 178, ymm4, 0, 4) \
114-
X(XMM41, 179, ymm4, 4, 4) \
115-
X(XMM42, 180, ymm4, 8, 4) \
116-
X(XMM43, 181, ymm4, 12, 4) \
117-
X(XMM50, 182, ymm5, 0, 4) \
118-
X(XMM51, 183, ymm5, 4, 4) \
119-
X(XMM52, 184, ymm5, 8, 4) \
120-
X(XMM53, 185, ymm5, 12, 4) \
121-
X(XMM60, 186, ymm6, 0, 4) \
122-
X(XMM61, 187, ymm6, 4, 4) \
123-
X(XMM62, 188, ymm6, 8, 4) \
124-
X(XMM63, 189, ymm6, 12, 4) \
125-
X(XMM70, 190, ymm7, 0, 4) \
126-
X(XMM71, 191, ymm7, 4, 4) \
127-
X(XMM72, 192, ymm7, 8, 4) \
128-
X(XMM73, 193, ymm7, 12, 4) \
129-
X(XMM0L, 194, ymm0, 0, 8) \
130-
X(XMM1L, 195, ymm1, 0, 8) \
131-
X(XMM2L, 196, ymm2, 0, 8) \
132-
X(XMM3L, 197, ymm3, 0, 8) \
133-
X(XMM4L, 198, ymm4, 0, 8) \
134-
X(XMM5L, 199, ymm5, 0, 8) \
135-
X(XMM6L, 200, ymm6, 0, 8) \
136-
X(XMM7L, 201, ymm7, 0, 8) \
137-
X(XMM0H, 202, ymm0, 8, 8) \
138-
X(XMM1H, 203, ymm1, 8, 8) \
139-
X(XMM2H, 204, ymm2, 8, 8) \
140-
X(XMM3H, 205, ymm3, 8, 8) \
141-
X(XMM4H, 206, ymm4, 8, 8) \
142-
X(XMM5H, 207, ymm5, 8, 8) \
143-
X(XMM6H, 208, ymm6, 8, 8) \
144-
X(XMM7H, 209, ymm7, 8, 8) \
145-
X(YMM0, 252, ymm0, 0, 32) \
146-
X(YMM1, 253, ymm1, 0, 32) \
147-
X(YMM2, 254, ymm2, 0, 32) \
148-
X(YMM3, 255, ymm3, 0, 32) \
149-
X(YMM4, 256, ymm4, 0, 32) \
150-
X(YMM5, 257, ymm5, 0, 32) \
151-
X(YMM6, 258, ymm6, 0, 32) \
152-
X(YMM7, 259, ymm7, 0, 32) \
153-
X(YMM0H, 260, ymm0, 16, 16) \
154-
X(YMM1H, 261, ymm1, 16, 16) \
155-
X(YMM2H, 262, ymm2, 16, 16) \
156-
X(YMM3H, 263, ymm3, 16, 16) \
157-
X(YMM4H, 264, ymm4, 16, 16) \
158-
X(YMM5H, 265, ymm5, 16, 16) \
159-
X(YMM6H, 266, ymm6, 16, 16) \
160-
X(YMM7H, 267, ymm7, 16, 16) \
161-
X(YMM0I0, 268, ymm0, 0, 8) \
162-
X(YMM0I1, 269, ymm0, 8, 8) \
163-
X(YMM0I2, 270, ymm0, 16, 8) \
164-
X(YMM0I3, 271, ymm0, 24, 8) \
165-
X(YMM1I0, 272, ymm1, 0, 8) \
166-
X(YMM1I1, 273, ymm1, 8, 8) \
167-
X(YMM1I2, 274, ymm1, 16, 8) \
168-
X(YMM1I3, 275, ymm1, 24, 8) \
169-
X(YMM2I0, 276, ymm2, 0, 8) \
170-
X(YMM2I1, 277, ymm2, 8, 8) \
171-
X(YMM2I2, 278, ymm2, 16, 8) \
172-
X(YMM2I3, 279, ymm2, 24, 8) \
173-
X(YMM3I0, 280, ymm3, 0, 8) \
174-
X(YMM3I1, 281, ymm3, 8, 8) \
175-
X(YMM3I2, 282, ymm3, 16, 8) \
176-
X(YMM3I3, 283, ymm3, 24, 8) \
177-
X(YMM4I0, 284, ymm4, 0, 8) \
178-
X(YMM4I1, 285, ymm4, 8, 8) \
179-
X(YMM4I2, 286, ymm4, 16, 8) \
180-
X(YMM4I3, 287, ymm4, 24, 8) \
181-
X(YMM5I0, 288, ymm5, 0, 8) \
182-
X(YMM5I1, 289, ymm5, 8, 8) \
183-
X(YMM5I2, 290, ymm5, 16, 8) \
184-
X(YMM5I3, 291, ymm5, 24, 8) \
185-
X(YMM6I0, 292, ymm6, 0, 8) \
186-
X(YMM6I1, 293, ymm6, 8, 8) \
187-
X(YMM6I2, 294, ymm6, 16, 8) \
188-
X(YMM6I3, 295, ymm6, 24, 8) \
189-
X(YMM7I0, 296, ymm7, 0, 8) \
190-
X(YMM7I1, 297, ymm7, 8, 8) \
191-
X(YMM7I2, 298, ymm7, 16, 8) \
192-
X(YMM7I3, 299, ymm7, 24, 8) \
193-
X(YMM0F0, 300, ymm0, 0, 4) \
194-
X(YMM0F1, 301, ymm0, 4, 4) \
195-
X(YMM0F2, 302, ymm0, 8, 4) \
196-
X(YMM0F3, 303, ymm0, 12, 4) \
197-
X(YMM0F4, 304, ymm0, 16, 4) \
198-
X(YMM0F5, 305, ymm0, 20, 4) \
199-
X(YMM0F6, 306, ymm0, 24, 4) \
200-
X(YMM0F7, 307, ymm0, 28, 4) \
201-
X(YMM1F0, 308, ymm1, 0, 4) \
202-
X(YMM1F1, 309, ymm1, 4, 4) \
203-
X(YMM1F2, 310, ymm1, 8, 4) \
204-
X(YMM1F3, 311, ymm1, 12, 4) \
205-
X(YMM1F4, 312, ymm1, 16, 4) \
206-
X(YMM1F5, 313, ymm1, 20, 4) \
207-
X(YMM1F6, 314, ymm1, 24, 4) \
208-
X(YMM1F7, 315, ymm1, 28, 4) \
209-
X(YMM2F0, 316, ymm2, 0, 4) \
210-
X(YMM2F1, 317, ymm2, 4, 4) \
211-
X(YMM2F2, 318, ymm2, 8, 4) \
212-
X(YMM2F3, 319, ymm2, 12, 4) \
213-
X(YMM2F4, 320, ymm2, 16, 4) \
214-
X(YMM2F5, 321, ymm2, 20, 4) \
215-
X(YMM2F6, 322, ymm2, 24, 4) \
216-
X(YMM2F7, 323, ymm2, 28, 4) \
217-
X(YMM3F0, 324, ymm3, 0, 4) \
218-
X(YMM3F1, 325, ymm3, 4, 4) \
219-
X(YMM3F2, 326, ymm3, 8, 4) \
220-
X(YMM3F3, 327, ymm3, 12, 4) \
221-
X(YMM3F4, 328, ymm3, 16, 4) \
222-
X(YMM3F5, 329, ymm3, 20, 4) \
223-
X(YMM3F6, 330, ymm3, 24, 4) \
224-
X(YMM3F7, 331, ymm3, 28, 4) \
225-
X(YMM4F0, 332, ymm4, 0, 4) \
226-
X(YMM4F1, 333, ymm4, 4, 4) \
227-
X(YMM4F2, 334, ymm4, 8, 4) \
228-
X(YMM4F3, 335, ymm4, 12, 4) \
229-
X(YMM4F4, 336, ymm4, 16, 4) \
230-
X(YMM4F5, 337, ymm4, 20, 4) \
231-
X(YMM4F6, 338, ymm4, 24, 4) \
232-
X(YMM4F7, 339, ymm4, 28, 4) \
233-
X(YMM5F0, 340, ymm5, 0, 4) \
234-
X(YMM5F1, 341, ymm5, 4, 4) \
235-
X(YMM5F2, 342, ymm5, 8, 4) \
236-
X(YMM5F3, 343, ymm5, 12, 4) \
237-
X(YMM5F4, 344, ymm5, 16, 4) \
238-
X(YMM5F5, 345, ymm5, 20, 4) \
239-
X(YMM5F6, 346, ymm5, 24, 4) \
240-
X(YMM5F7, 347, ymm5, 28, 4) \
241-
X(YMM6F0, 348, ymm6, 0, 4) \
242-
X(YMM6F1, 349, ymm6, 4, 4) \
243-
X(YMM6F2, 350, ymm6, 8, 4) \
244-
X(YMM6F3, 351, ymm6, 12, 4) \
245-
X(YMM6F4, 352, ymm6, 16, 4) \
246-
X(YMM6F5, 353, ymm6, 20, 4) \
247-
X(YMM6F6, 354, ymm6, 24, 4) \
248-
X(YMM6F7, 355, ymm6, 28, 4) \
249-
X(YMM7F0, 356, ymm7, 0, 4) \
250-
X(YMM7F1, 357, ymm7, 4, 4) \
251-
X(YMM7F2, 358, ymm7, 8, 4) \
252-
X(YMM7F3, 359, ymm7, 12, 4) \
253-
X(YMM7F4, 360, ymm7, 16, 4) \
254-
X(YMM7F5, 361, ymm7, 20, 4) \
255-
X(YMM7F6, 362, ymm7, 24, 4) \
256-
X(YMM7F7, 363, ymm7, 28, 4) \
257-
X(YMM0D0, 364, ymm0, 0, 8) \
258-
X(YMM0D1, 365, ymm0, 8, 8) \
259-
X(YMM0D2, 366, ymm0, 16, 8) \
260-
X(YMM0D3, 367, ymm0, 24, 8) \
261-
X(YMM1D0, 368, ymm1, 0, 8) \
262-
X(YMM1D1, 369, ymm1, 8, 8) \
263-
X(YMM1D2, 370, ymm1, 16, 8) \
264-
X(YMM1D3, 371, ymm1, 24, 8) \
265-
X(YMM2D0, 372, ymm2, 0, 8) \
266-
X(YMM2D1, 373, ymm2, 8, 8) \
267-
X(YMM2D2, 374, ymm2, 16, 8) \
268-
X(YMM2D3, 375, ymm2, 24, 8) \
269-
X(YMM3D0, 376, ymm3, 0, 8) \
270-
X(YMM3D1, 377, ymm3, 8, 8) \
271-
X(YMM3D2, 378, ymm3, 16, 8) \
272-
X(YMM3D3, 379, ymm3, 24, 8) \
273-
X(YMM4D0, 380, ymm4, 0, 8) \
274-
X(YMM4D1, 381, ymm4, 8, 8) \
275-
X(YMM4D2, 382, ymm4, 16, 8) \
276-
X(YMM4D3, 383, ymm4, 24, 8) \
277-
X(YMM5D0, 384, ymm5, 0, 8) \
278-
X(YMM5D1, 385, ymm5, 8, 8) \
279-
X(YMM5D2, 386, ymm5, 16, 8) \
280-
X(YMM5D3, 387, ymm5, 24, 8) \
281-
X(YMM6D0, 388, ymm6, 0, 8) \
282-
X(YMM6D1, 389, ymm6, 8, 8) \
283-
X(YMM6D2, 390, ymm6, 16, 8) \
284-
X(YMM6D3, 391, ymm6, 24, 8) \
285-
X(YMM7D0, 392, ymm7, 0, 8) \
286-
X(YMM7D1, 393, ymm7, 8, 8) \
287-
X(YMM7D2, 394, ymm7, 16, 8) \
288-
X(YMM7D3, 395, ymm7, 24, 8)
289-
290-
typedef U16 CV_Regx86;
291-
typedef enum CV_Regx86Enum
292-
{
293-
#define X(CVN,C,RDN,BP,BZ) CV_Regx86_##CVN = C,
294-
CV_Reg_X86_XList(X)
295-
#undef X
296-
}
297-
CV_Regx86Enum;
298-
29944
// X(NAME, CODE, (RDI_RegisterCode_X64) NAME, BYTE_POS, BYTE_SIZE)
30045
#define CV_Reg_X64_XList(X) \
30146
X(NONE, 0, nil, 0, 0) \
@@ -2963,7 +2708,6 @@ struct CV_TypeIndexArray
29632708
////////////////////////////////
29642709

29652710
internal CV_Arch cv_arch_from_coff_machine(COFF_MachineType machine);
2966-
internal U64 cv_size_from_reg_x86(CV_Reg reg);
29672711
internal U64 cv_size_from_reg_x64(CV_Reg reg);
29682712
internal U64 cv_size_from_reg(CV_Arch arch, CV_Reg reg);
29692713
internal B32 cv_is_reg_sp(CV_Arch arch, CV_Reg reg);

0 commit comments

Comments
 (0)