db_printf("[WARNING: byte order in kernel frame at %x "
db_printf("[WARNING: byte order in kernel frame at %p "
frame_is_sane(db_regs_t *regs){	/* no good if we can't read the whole frame */	if (badwordaddr((vaddr_t)regs) || badwordaddr((vaddr_t)&regs->mode)) {		db_printf("[WARNING: frame at 0x%x : unreadable]\n", regs);		return 0;	}#ifndef DIAGNOSTIC	/* disabled for now  -- see fpu_enable in luna88k/eh.s */	/* r0 must be 0 (obviously) */	if (regs->r[0] != 0) {		db_printf("[WARNING: frame at 0x%x : r[0] != 0]\n", regs);		return 0;	}#endif	/* stack sanity ... r31 must be nonzero, but must be word aligned */	if (regs->r[31] == 0 || (regs->r[31] & 3) != 0) {		db_printf("[WARNING: frame at 0x%x : r[31] == 0 or not word aligned]\n", regs);		return 0;	}	if (cputyp != CPU_88110) {		/* sxip is reasonable */#if 0		if ((regs->sxip & 1) == 1)			return 0;#endif		/* snip is reasonable */		if ((regs->snip & 3) != 2)			return 0;		/* sfip is reasonable */		if ((regs->sfip & 3) != 2)			return 0;	}	/* epsr sanity */	if ((regs->epsr & PSR_MODE)) { /* kernel mode */		if (regs->epsr & PSR_BO)			db_printf("[WARNING: byte order in kernel frame at %x "				  "is little-endian!]\n", regs);		return 1;	}	if (!(regs->epsr & PSR_MODE)) {	/* user mode */		if (regs->epsr & PSR_BO)			db_printf("[WARNING: byte order in user frame at %x "				  "is little-endian!]\n", regs);		return 2;	}	db_printf("[WARNING: not an exception frame?]\n");	return 0;}