10 #include "/arm/include/ureg.h"
13 #define REGOFF(x) (uintptr)(&((struct Ureg *) 0)->x)
15 #define SP REGOFF(r13)
18 #define REGSIZE sizeof(struct Ureg)
20 Reglist armreglist[] =
22 {"TYPE", REGOFF(type), RINT|RRDONLY, 'X'},
23 {"PSR", REGOFF(psr), RINT|RRDONLY, 'X'},
24 {"PC", PC, RINT, 'X'},
25 {"SP", SP, RINT, 'X'},
26 {"R15", PC, RINT, 'X'},
27 {"R14", REGOFF(r14), RINT, 'X'},
28 {"R13", REGOFF(r13), RINT, 'X'},
29 {"R12", REGOFF(r12), RINT, 'X'},
30 {"R11", REGOFF(r11), RINT, 'X'},
31 {"R10", REGOFF(r10), RINT, 'X'},
32 {"R9", REGOFF(r9), RINT, 'X'},
33 {"R8", REGOFF(r8), RINT, 'X'},
34 {"R7", REGOFF(r7), RINT, 'X'},
35 {"R6", REGOFF(r6), RINT, 'X'},
36 {"R5", REGOFF(r5), RINT, 'X'},
37 {"R4", REGOFF(r4), RINT, 'X'},
38 {"R3", REGOFF(r3), RINT, 'X'},
39 {"R2", REGOFF(r2), RINT, 'X'},
40 {"R1", REGOFF(r1), RINT, 'X'},
41 {"R0", REGOFF(r0), RINT, 'X'},
45 /* the machine description */
49 MARM, /* machine type */
50 armreglist, /* register set */
51 REGSIZE, /* register set size */
52 0, /* fp register set size */
53 "PC", /* name of PC */
54 "SP", /* name of SP */
55 "R14", /* name of link register */
56 "setR12", /* static base register name */
57 0, /* static base register value */
58 0x1000, /* page size */
59 0xC0000000ULL, /* kernel base */
60 0xC0000000ULL, /* kernel text mask */
61 0x3FFFFFFFULL, /* user stack top */
62 4, /* quantization of pc */