xref: /minix3/sys/arch/i386/include/tlog.h (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1*0a6a1f1dSLionel Sambuc /*	$NetBSD: tlog.h,v 1.4 2004/02/13 11:36:14 wiz Exp $	*/
2*0a6a1f1dSLionel Sambuc 
3*0a6a1f1dSLionel Sambuc /*
4*0a6a1f1dSLionel Sambuc  * Trap log.  Per-CPU ring buffer containing a log of the last 2**N
5*0a6a1f1dSLionel Sambuc  * traps.
6*0a6a1f1dSLionel Sambuc  */
7*0a6a1f1dSLionel Sambuc 
8*0a6a1f1dSLionel Sambuc struct trec
9*0a6a1f1dSLionel Sambuc {
10*0a6a1f1dSLionel Sambuc 	uint32_t	tr_sp;	/* stack pointer */
11*0a6a1f1dSLionel Sambuc 	uint32_t	tr_hpc;	/* handler pc */
12*0a6a1f1dSLionel Sambuc 	uint32_t	tr_ipc;	/* interrupted pc */
13*0a6a1f1dSLionel Sambuc 	uint32_t	tr_tsc;	/* timestamp counter */
14*0a6a1f1dSLionel Sambuc 	uint32_t	tr_lbf;	/* MSR_LAST{BRANCH,INT}{FROM,TO}IP */
15*0a6a1f1dSLionel Sambuc 	uint32_t	tr_lbt;
16*0a6a1f1dSLionel Sambuc 	uint32_t	tr_ibf;
17*0a6a1f1dSLionel Sambuc 	uint32_t	tr_ibt;
18*0a6a1f1dSLionel Sambuc };
19*0a6a1f1dSLionel Sambuc 
20*0a6a1f1dSLionel Sambuc struct tlog
21*0a6a1f1dSLionel Sambuc {
22*0a6a1f1dSLionel Sambuc 	struct trec	tl_recs[128];
23*0a6a1f1dSLionel Sambuc };
24*0a6a1f1dSLionel Sambuc 
25*0a6a1f1dSLionel Sambuc 
26*0a6a1f1dSLionel Sambuc 
27