Beispiel #1
0
/*ARGSUSED*/
int
instr_size(struct regs *rp, caddr_t *addrp, enum seg_rw rw)
{
	uchar_t instr[16];	/* maximum size instruction */
	caddr_t pc = (caddr_t)rp->r_pc;

	(void) copyin_nowatch(pc, (caddr_t)instr, sizeof (instr));

	return (dtrace_dis_isize(instr,
	    rw == S_EXEC ? DIS_ISIZE_INSTR : DIS_ISIZE_OPERAND,
	    curproc->p_model, NULL));
}
Beispiel #2
0
int
dtrace_instr_size(uchar_t *instr)
{
	return (dtrace_dis_isize(instr, DIS_ISIZE_INSTR, DATAMODEL_NATIVE,
	    NULL));
}
Beispiel #3
0
int
dtrace_instr_size_isa(uchar_t *instr, model_t model, int *rmindex)
{
	return (dtrace_dis_isize(instr, DIS_ISIZE_INSTR, model, rmindex));
}