Lines Matching full:asi
176 struct arch_probes_insn *asi, in probes_simulate_nop() argument
182 struct arch_probes_insn *asi, in probes_emulate_none() argument
185 asi->insn_fn(); in probes_emulate_none()
196 prepare_emulated_insn(probes_opcode_t insn, struct arch_probes_insn *asi, in prepare_emulated_insn() argument
201 u16 *thumb_insn = (u16 *)asi->insn; in prepare_emulated_insn()
207 asi->insn[1] = __opcode_to_mem_arm(0xe12fff1e); /* ARM bx lr */ in prepare_emulated_insn()
209 asi->insn[1] = __opcode_to_mem_arm(0xe1a0f00e); /* mov pc, lr */ in prepare_emulated_insn()
222 set_emulated_insn(probes_opcode_t insn, struct arch_probes_insn *asi, in set_emulated_insn() argument
227 u16 *ip = (u16 *)asi->insn; in set_emulated_insn()
234 asi->insn[0] = __opcode_to_mem_arm(insn); in set_emulated_insn()
344 struct arch_probes_insn *asi, in run_checkers() argument
359 retval = checker_func(insn, asi, h); in run_checkers()
411 probes_decode_insn(probes_opcode_t insn, struct arch_probes_insn *asi, in probes_decode_insn() argument
433 asi->stack_space = 0; in probes_decode_insn()
440 asi->register_usage_flags = ~0UL; in probes_decode_insn()
443 insn = prepare_emulated_insn(insn, asi, thumb); in probes_decode_insn()
474 err = run_checkers(checkers, action, origin_insn, asi, h); in probes_decode_insn()
477 return actions[action].decoder(insn, asi, h); in probes_decode_insn()
485 err = run_checkers(checkers, action, origin_insn, asi, h); in probes_decode_insn()
488 asi->insn_handler = actions[action].handler; in probes_decode_insn()
497 err = run_checkers(checkers, action, origin_insn, asi, h); in probes_decode_insn()
502 return actions[action].decoder(insn, asi, h); in probes_decode_insn()
504 asi->insn_handler = actions[action].handler; in probes_decode_insn()
505 set_emulated_insn(insn, asi, thumb); in probes_decode_insn()