Lines Matching refs:instr
415 int call_undef_hook(struct pt_regs *regs, unsigned int instr) in call_undef_hook() argument
419 int (*fn)(struct pt_regs *regs, unsigned int instr) = NULL; in call_undef_hook()
423 if ((instr & hook->instr_mask) == hook->instr_val && in call_undef_hook()
428 return fn ? fn(regs, instr) : 1; in call_undef_hook()
433 unsigned int instr; in do_undefinstr() local
441 instr = __mem_to_opcode_thumb16(((u16 *)pc)[0]); in do_undefinstr()
442 if (is_wide_instruction(instr)) { in do_undefinstr()
445 instr = __opcode_thumb32_compose(instr, inst2); in do_undefinstr()
449 instr = __mem_to_opcode_arm(*(u32 *) pc); in do_undefinstr()
451 if (get_user(instr, (u16 __user *)pc)) in do_undefinstr()
453 instr = __mem_to_opcode_thumb16(instr); in do_undefinstr()
454 if (is_wide_instruction(instr)) { in do_undefinstr()
459 instr = __opcode_thumb32_compose(instr, instr2); in do_undefinstr()
462 if (get_user(instr, (u32 __user *)pc)) in do_undefinstr()
464 instr = __mem_to_opcode_arm(instr); in do_undefinstr()
467 if (call_undef_hook(regs, instr) == 0) in do_undefinstr()
681 static int get_tp_trap(struct pt_regs *regs, unsigned int instr) in get_tp_trap() argument
683 int reg = (instr >> 12) & 15; in get_tp_trap()
714 baddataabort(int code, unsigned long instr, struct pt_regs *regs) in baddataabort() argument
722 task_pid_nr(current), current->comm, code, instr); in baddataabort()
729 SIGILL, ILL_ILLOPC, (void __user *)addr, instr, 0); in baddataabort()