Lines Matching refs:asi
28 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_simulate_table_branch() argument
48 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_simulate_mrs() argument
57 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_simulate_cond_branch() argument
71 t32_decode_cond_branch(probes_opcode_t insn, struct arch_probes_insn *asi, in t32_decode_cond_branch() argument
75 asi->insn_check_cc = probes_condition_checks[cc]; in t32_decode_cond_branch()
76 asi->insn_handler = t32_simulate_cond_branch; in t32_decode_cond_branch()
82 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_simulate_branch() argument
110 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_simulate_ldr_literal() argument
147 t32_decode_ldmstm(probes_opcode_t insn, struct arch_probes_insn *asi, in t32_decode_ldmstm() argument
150 enum probes_insn ret = kprobe_decode_ldmstm(insn, asi, d); in t32_decode_ldmstm()
153 insn = __mem_to_opcode_arm(asi->insn[0]); in t32_decode_ldmstm()
154 ((u16 *)asi->insn)[0] = __opcode_to_mem_thumb16(insn >> 16); in t32_decode_ldmstm()
155 ((u16 *)asi->insn)[1] = __opcode_to_mem_thumb16(insn & 0xffff); in t32_decode_ldmstm()
162 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_emulate_ldrdstrd() argument
177 : "0" (rt1v), "1" (rt2v), "2" (rnv), [fn] "r" (asi->insn_fn) in t32_emulate_ldrdstrd()
189 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_emulate_ldrstr() argument
202 : "0" (rtv), "1" (rnv), "r" (rmv), [fn] "r" (asi->insn_fn) in t32_emulate_ldrstr()
215 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_emulate_rd8rn16rm0_rwflags() argument
232 "1" (cpsr), [fn] "r" (asi->insn_fn) in t32_emulate_rd8rn16rm0_rwflags()
242 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_emulate_rd8pc16_noflags() argument
253 : "0" (rdv), "r" (rnv), [fn] "r" (asi->insn_fn) in t32_emulate_rd8pc16_noflags()
262 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_emulate_rd8rn16_noflags() argument
273 : "0" (rdv), "r" (rnv), [fn] "r" (asi->insn_fn) in t32_emulate_rd8rn16_noflags()
282 struct arch_probes_insn *asi, in t32_emulate_rdlo12rdhi8rn16rm0_noflags() argument
299 [fn] "r" (asi->insn_fn) in t32_emulate_rdlo12rdhi8rn16rm0_noflags()
310 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_simulate_bxblx() argument
324 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_simulate_ldr_literal() argument
334 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_simulate_ldrstr_sp_relative() argument
347 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_simulate_reladr() argument
358 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_simulate_add_sp_imm() argument
369 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_simulate_cbz() argument
383 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_simulate_it() argument
400 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_singlestep_it() argument
403 t16_simulate_it(insn, asi, regs); in t16_singlestep_it()
407 t16_decode_it(probes_opcode_t insn, struct arch_probes_insn *asi, in t16_decode_it() argument
410 asi->insn_singlestep = t16_singlestep_it; in t16_decode_it()
416 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_simulate_cond_branch() argument
425 t16_decode_cond_branch(probes_opcode_t insn, struct arch_probes_insn *asi, in t16_decode_cond_branch() argument
429 asi->insn_check_cc = probes_condition_checks[cc]; in t16_decode_cond_branch()
430 asi->insn_handler = t16_simulate_cond_branch; in t16_decode_cond_branch()
436 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_simulate_branch() argument
446 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_emulate_loregs() argument
459 [fn] "r" (asi->insn_fn) in t16_emulate_loregs()
469 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_emulate_loregs_rwflags() argument
471 regs->ARM_cpsr = t16_emulate_loregs(insn, asi, regs); in t16_emulate_loregs_rwflags()
476 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_emulate_loregs_noitrwflags() argument
478 unsigned long cpsr = t16_emulate_loregs(insn, asi, regs); in t16_emulate_loregs_noitrwflags()
485 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_emulate_hiregs() argument
503 : "0" (rdnv), "r" (rmv), "1" (cpsr), [fn] "r" (asi->insn_fn) in t16_emulate_hiregs()
515 t16_decode_hiregs(probes_opcode_t insn, struct arch_probes_insn *asi, in t16_decode_hiregs() argument
520 ((u16 *)asi->insn)[0] = __opcode_to_mem_thumb16(insn); in t16_decode_hiregs()
521 asi->insn_handler = t16_emulate_hiregs; in t16_decode_hiregs()
527 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_emulate_push() argument
536 : [regs] "r" (regs), [fn] "r" (asi->insn_fn) in t16_emulate_push()
543 t16_decode_push(probes_opcode_t insn, struct arch_probes_insn *asi, in t16_decode_push() argument
552 ((u16 *)asi->insn)[0] = __opcode_to_mem_thumb16(0xe929); in t16_decode_push()
554 ((u16 *)asi->insn)[1] = __opcode_to_mem_thumb16(insn & 0x1ff); in t16_decode_push()
555 asi->insn_handler = t16_emulate_push; in t16_decode_push()
561 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_emulate_pop_nopc() argument
570 : [regs] "r" (regs), [fn] "r" (asi->insn_fn) in t16_emulate_pop_nopc()
578 struct arch_probes_insn *asi, struct pt_regs *regs) in t16_emulate_pop_pc() argument
589 : [regs] "r" (regs), [fn] "r" (asi->insn_fn) in t16_emulate_pop_pc()
598 t16_decode_pop(probes_opcode_t insn, struct arch_probes_insn *asi, in t16_decode_pop() argument
607 ((u16 *)asi->insn)[0] = __opcode_to_mem_thumb16(0xe8b9); in t16_decode_pop()
609 ((u16 *)asi->insn)[1] = __opcode_to_mem_thumb16(insn & 0x1ff); in t16_decode_pop()
610 asi->insn_handler = insn & 0x100 ? t16_emulate_pop_pc in t16_decode_pop()