5 #include "/68020/include/ureg.h"
12 #define REGOFF(x) (ulong)(&((struct Ureg *) 0)->x)
14 #define VO REGOFF(vo) /* vo, 2 bytes */
15 #define SR REGOFF(sr) /* sr, 2 bytes */
18 #define DBMAGIC REGOFF(magic)
19 #define SP REGOFF(usp)
21 #define REGSIZE (R0+4)
22 #define FCTL(x) (REGSIZE+(x)*4)
23 #define FREG(x) (FCTL(3)+(x)*12)
24 #define FPREGSIZE (11*12)
29 Reglist m68020reglist[] = {
30 {"VO", VO, RINT, 'x'},
31 {"SR", SR, RINT, 'x'},
32 {"MAGIC", DBMAGIC, RINT, 'X'},
33 {"PC", PC, RINT, 'X'},
34 {"A7", SP, RINT, 'X'},
35 {"KSP", REGOFF(sp), RINT, 'X'},
36 {"A6", REGOFF(a6), RINT, 'X'},
37 {"A5", REGOFF(a5), RINT, 'X'},
38 {"A4", REGOFF(a4), RINT, 'X'},
39 {"A3", REGOFF(a3), RINT, 'X'},
40 {"A2", REGOFF(a2), RINT, 'X'},
41 {"A1", REGOFF(a1), RINT, 'X'},
42 {"A0", REGOFF(a0), RINT, 'X'},
43 {"R7", REGOFF(r7), RINT, 'X'},
44 {"R6", REGOFF(r6), RINT, 'X'},
45 {"R5", REGOFF(r5), RINT, 'X'},
46 {"R4", REGOFF(r4), RINT, 'X'},
47 {"R3", REGOFF(r3), RINT, 'X'},
48 {"R2", REGOFF(r2), RINT, 'X'},
49 {"R1", REGOFF(r1), RINT, 'X'},
50 {"R0", REGOFF(r0), RINT, 'X'},
51 {"FPCR", FCTL(0), RFLT, 'X'},
52 {"FPSR", FCTL(1), RFLT, 'X'},
53 {"FPIAR", FCTL(2), RFLT, 'X'},
54 {"F0", FREG(0), RFLT, '8'},
55 {"F1", FREG(1), RFLT, '8'},
56 {"F2", FREG(2), RFLT, '8'},
57 {"F3", FREG(3), RFLT, '8'},
58 {"F4", FREG(4), RFLT, '8'},
59 {"F5", FREG(5), RFLT, '8'},
60 {"F6", FREG(6), RFLT, '8'},
61 {"F7", FREG(7), RFLT, '8'},
68 M68020, /* machine type */
69 m68020reglist, /* register list */
70 REGSIZE, /* number of bytes in reg set */
71 FPREGSIZE, /* number of bytes in fp reg set */
74 0, /* link register */
75 "a6base", /* static base register name */
77 0x2000, /* page size */
78 0x80000000ULL, /* kernel base */
79 0x80000000ULL, /* kernel text mask */
80 0x7FFFFFFFULL, /* user stack top */
81 2, /* quantization of pc */