Example #1
0
#define GDB_CND   66
#define GDB_LR    67
#define GDB_CNT   68
#define GDB_XER   69
#define GDB_MQ    70 /* Not supported */

#define GP(n) GRLL(gp##n,			\
		   regs.gpr,			\
		   GDB_GPR##n,			\
		   sizeof(unsigned int) * n,	\
		   sizeof(unsigned int),	\
		   sizeof(unsigned int))

/* General */
struct reg_location_list grll[] = {
	GRLL(gp0,  fixreg[0],   GDB_GPR0,   0, 0, 0),
	GRLL(gp1,  fixreg[1],   GDB_GPR1,   0, 0, 0),
	GRLL(gp2,  fixreg[2],   GDB_GPR2,   0, 0, 0),
	GRLL(gp3,  fixreg[3],   GDB_GPR3,   0, 0, 0),
	GRLL(gp4,  fixreg[4],   GDB_GPR4,   0, 0, 0),
	GRLL(gp5,  fixreg[5],   GDB_GPR5,   0, 0, 0),
	GRLL(gp6,  fixreg[6],   GDB_GPR6,   0, 0, 0),
	GRLL(gp7,  fixreg[7],   GDB_GPR7,   0, 0, 0),
	GRLL(gp8,  fixreg[8],   GDB_GPR8,   0, 0, 0),
	GRLL(gp9,  fixreg[9],   GDB_GPR9,   0, 0, 0),
	GRLL(gp10, fixreg[10],  GDB_GPR10,  0, 0, 0),
	GRLL(gp11, fixreg[11],  GDB_GPR11,  0, 0, 0),
	GRLL(gp12, fixreg[12],  GDB_GPR12,  0, 0, 0),
	GRLL(gp13, fixreg[13],  GDB_GPR13,  0, 0, 0),
	GRLL(gp14, fixreg[14],  GDB_GPR14,  0, 0, 0),
	GRLL(gp15, fixreg[15],  GDB_GPR15,  0, 0, 0),
Example #2
0
#define GDB_R12      12
#define GDB_R13      13
#define GDB_R14      14
#define GDB_R15      15
#define GDB_RIP      16
#define GDB_RFLAGS   17
#define GDB_CS       18
#define GDB_SS       19
#define GDB_DS       20
#define GDB_ES       21
#define GDB_FS       22
#define GDB_GS       23

struct reg_location_list grll[] = {
	/* general */
	GRLL(r15,    r_r15,     GDB_R15,      0, 0, 0),
	GRLL(r14,    r_r14,     GDB_R14,      0, 0, 0),
	GRLL(r13,    r_r13,     GDB_R13,      0, 0, 0),
	GRLL(r12,    r_r12,     GDB_R12,      0, 0, 0),
	GRLL(r11,    r_r11,     GDB_R11,      0, 0, 0),
	GRLL(r10,    r_r10,     GDB_R10,      0, 0, 0),
	GRLL(r9,     r_r9,      GDB_R9,       0, 0, 0),
	GRLL(r8,     r_r8,      GDB_R8,       0, 0, 0),
	GRLL(rdi,    r_rdi,     GDB_RDI,      0, 0, 0),
	GRLL(rsi,    r_rsi,     GDB_RSI,      0, 0, 0),
	GRLL(rbp,    r_rbp,     GDB_RBP,      0, 0, 0),
	GRLL(rbx,    r_rbx,     GDB_RBX,      0, 0, 0),
	GRLL(rdx,    r_rdx,     GDB_RDX,      0, 0, 0),
	GRLL(rcx,    r_rcx,     GDB_RCX,      0, 0, 0),
	GRLL(rax,    r_rax,     GDB_RAX,      0, 0, 0),
	/* trapno */
Example #3
0
#define GDB_ESP       4
#define GDB_EBP       5
#define GDB_ESI       6
#define GDB_EDI       7
#define GDB_EIP       8
#define GDB_EFLAGS    9
#define GDB_CS       10
#define GDB_SS       11
#define GDB_DS       12
#define GDB_ES       13
#define GDB_FS       14
#define GDB_GS       15
#define GDB_ORIG_EAX 41

struct reg_location_list grll[] = {
	GRLL(ebx,      regs.ebx,      GDB_EBX,      0, 0, 0),
	GRLL(ecx,      regs.ecx,      GDB_ECX,      0, 0, 0),
	GRLL(edx,      regs.edx,      GDB_EDX,      0, 0, 0),
	GRLL(esi,      regs.esi,      GDB_ESI,      0, 0, 0),
	GRLL(edi,      regs.edi,      GDB_EDI,      0, 0, 0),
	GRLL(ebp,      regs.ebp,      GDB_EBP,      0, 0, 0),
	GRLL(eax,      regs.eax,      GDB_EAX,      0, 0, 0),
	GRLL(ds,       regs.xds,      GDB_DS,       0, 2, 4),
	GRLL(es,       regs.xes,      GDB_ES,       0, 2, 4),
	GRLL(fs,       regs.xfs,      GDB_FS,       0, 2, 4),
	GRLL(gs,       regs.xgs,      GDB_GS,       0, 2, 4),
	GRLL(orig_eax, regs.orig_eax, GDB_ORIG_EAX, 0, 0, 0),
	GRLL(eip,      regs.eip,      GDB_EIP,      0, 0, 0),
	GRLL(cs,       regs.xcs,      GDB_CS,       0, 2, 4),
	GRLL(eflags,   regs.eflags,   GDB_EFLAGS,   0, 0, 0),
	GRLL(esp,      regs.esp,      GDB_ESP,      0, 0, 0),
Example #4
0
#define GDB_STATUS 32 /* ? */
#define GDB_LO 33
#define GDB_HI 34
#define GDB_BADVADDR 35
#define GDB_CAUSE 36
#define GDB_PC 37

#ifdef DEEBE_MIPS_64BIT_COMPAT
#define GDB_GREG_SIZE 8
#else
#define GDB_GREG_SIZE 0
#endif

/* General */
struct reg_location_list grll[] = {
    GRLL(zero, r_regs[0], GDB_ZERO, 0, 0, GDB_GREG_SIZE),
    GRLL(at, r_regs[1], GDB_AT, 0, 0, GDB_GREG_SIZE),
    GRLL(v0, r_regs[2], GDB_V0, 0, 0, GDB_GREG_SIZE),
    GRLL(v1, r_regs[3], GDB_V1, 0, 0, GDB_GREG_SIZE),
    GRLL(a0, r_regs[4], GDB_A0, 0, 0, GDB_GREG_SIZE),
    GRLL(a1, r_regs[5], GDB_A1, 0, 0, GDB_GREG_SIZE),
    GRLL(a2, r_regs[6], GDB_A2, 0, 0, GDB_GREG_SIZE),
    GRLL(a3, r_regs[7], GDB_A3, 0, 0, GDB_GREG_SIZE),
    GRLL(t0, r_regs[8], GDB_T0, 0, 0, GDB_GREG_SIZE),
    GRLL(t1, r_regs[9], GDB_T1, 0, 0, GDB_GREG_SIZE),
    GRLL(t2, r_regs[10], GDB_T2, 0, 0, GDB_GREG_SIZE),
    GRLL(t3, r_regs[11], GDB_T3, 0, 0, GDB_GREG_SIZE),
    GRLL(t4, r_regs[12], GDB_T4, 0, 0, GDB_GREG_SIZE),
    GRLL(t5, r_regs[13], GDB_T5, 0, 0, GDB_GREG_SIZE),
    GRLL(t6, r_regs[14], GDB_T6, 0, 0, GDB_GREG_SIZE),
    GRLL(t7, r_regs[15], GDB_T7, 0, 0, GDB_GREG_SIZE),
Example #5
0
# define ENDIAN_OFFSET 4
#endif

/* General */
#undef GRLL
#define GRLL(N, E, GDB, O, S, GDB_S)	\
{				\
	.off = (O) + (8 * (E)),	\
	.size = (S),		\
	.gdb = (GDB),		\
	.name = #N,		\
	.gdb_size = (GDB_S),	\
}

struct reg_location_list grll[] = {
	GRLL(zero,     0,  GDB_ZERO,     ENDIAN_OFFSET, 4, 4),
	GRLL(at,       1,  GDB_AT,       ENDIAN_OFFSET, 4, 4),
	GRLL(v0,       2,  GDB_V0,       ENDIAN_OFFSET, 4, 4),
	GRLL(v1,       3,  GDB_V1,       ENDIAN_OFFSET, 4, 4),
	GRLL(a0,       4,  GDB_A0,       ENDIAN_OFFSET, 4, 4),
	GRLL(a1,       5,  GDB_A1,       ENDIAN_OFFSET, 4, 4),
	GRLL(a2,       6,  GDB_A2,       ENDIAN_OFFSET, 4, 4),
	GRLL(a3,       7,  GDB_A3,       ENDIAN_OFFSET, 4, 4),
	GRLL(t0,       8,  GDB_T0,       ENDIAN_OFFSET, 4, 4),
	GRLL(t1,       9,  GDB_T1,       ENDIAN_OFFSET, 4, 4),
	GRLL(t2,       10, GDB_T2,       ENDIAN_OFFSET, 4, 4),
	GRLL(t3,       11, GDB_T3,       ENDIAN_OFFSET, 4, 4),
	GRLL(t4,       12, GDB_T4,       ENDIAN_OFFSET, 4, 4),
	GRLL(t5,       13, GDB_T5,       ENDIAN_OFFSET, 4, 4),
	GRLL(t6,       14, GDB_T6,       ENDIAN_OFFSET, 4, 4),
	GRLL(t7,       15, GDB_T7,       ENDIAN_OFFSET, 4, 4),