xref: /netbsd-src/sys/arch/x86/include/db_machdep.h (revision 6a493d6bc668897c91594964a732d38505b70cbb)
1 /*	$NetBSD: db_machdep.h,v 1.3 2011/04/30 16:58:35 christos Exp $	*/
2 
3 #ifndef _X86_DB_MACHDEP_H_
4 #define _X86_DB_MACHDEP_H_
5 
6 #define	INKERNEL(va)	(((vaddr_t)(va)) >= VM_MIN_KERNEL_ADDRESS)
7 
8 #define NONE		0
9 #define TRAP		1
10 #define SYSCALL		2
11 #define INTERRUPT	3
12 #define INTERRUPT_TSS	4
13 #define TRAP_TSS	5
14 
15 #define MAXNARG		16
16 
17 struct db_variable;
18 
19 #ifdef __x86_64__
20 #define	tf_sp		tf_rsp
21 #define	tf_ip		tf_rip
22 #define	tf_bp		tf_rbp
23 #define	pcb_bp		pcb_rbp
24 #define	pcb_sp		pcb_rsp
25 #define	x86_frame	x86_64_frame
26 #else
27 #define	tf_sp		tf_esp
28 #define	tf_ip		tf_eip
29 #define	tf_bp		tf_ebp
30 #define	pcb_bp		pcb_ebp
31 #define	pcb_sp		pcb_esp
32 #define	x86_frame	i386_frame
33 #endif
34 
35 int db_x86_regop(const struct db_variable *, db_expr_t *, int);
36 int db_numargs(long *);
37 int db_nextframe(long **, long **, long **, db_addr_t *, long *, int,
38 		 void (*) (const char *, ...));
39 db_sym_t db_frame_info(long *, db_addr_t, const char **, db_expr_t *,
40                        int *, int *);
41 
42 #endif /* _X86_DB_MACHDEP_H_ */
43