Home
last modified time | relevance | path

Searched refs:insn (Results 1 – 25 of 593) sorted by relevance

12345678910>>...24

/linux/tools/arch/x86/lib/
H A Dinsn.c70 memset(insn, 0, sizeof(*insn)); in insn_init()
124 int insn_get_prefixes(struct insn *insn) in insn_get_prefixes() argument
273 int insn_get_opcode(struct insn *insn) in insn_get_opcode() argument
360 int insn_get_modrm(struct insn *insn) in insn_get_modrm() argument
406 int insn_rip_relative(struct insn *insn) in insn_rip_relative() argument
435 int insn_get_sib(struct insn *insn) in insn_get_sib() argument
561 static int __get_immv32(struct insn *insn) in __get_immv32() argument
582 static int __get_immv(struct insn *insn) in __get_immv() argument
643 int insn_get_immediate(struct insn *insn) in insn_get_immediate() argument
716 int insn_get_length(struct insn *insn) in insn_get_length() argument
[all …]
/linux/arch/x86/lib/
H A Dinsn.c70 memset(insn, 0, sizeof(*insn)); in insn_init()
124 int insn_get_prefixes(struct insn *insn) in insn_get_prefixes() argument
273 int insn_get_opcode(struct insn *insn) in insn_get_opcode() argument
360 int insn_get_modrm(struct insn *insn) in insn_get_modrm() argument
406 int insn_rip_relative(struct insn *insn) in insn_rip_relative() argument
435 int insn_get_sib(struct insn *insn) in insn_get_sib() argument
561 static int __get_immv32(struct insn *insn) in __get_immv32() argument
582 static int __get_immv(struct insn *insn) in __get_immv() argument
643 int insn_get_immediate(struct insn *insn) in insn_get_immediate() argument
716 int insn_get_length(struct insn *insn) in insn_get_length() argument
[all …]
H A Dinsn-eval.c38 static bool is_string_insn(struct insn *insn) in is_string_insn() argument
62 bool insn_has_rep_prefix(struct insn *insn) in insn_has_rep_prefix() argument
91 static int get_seg_reg_override_idx(struct insn *insn) in get_seg_reg_override_idx() argument
154 static bool check_seg_overrides(struct insn *insn, int regoff) in check_seg_overrides() argument
298 if (!insn) in resolve_seg_reg()
447 static int get_regno(struct insn *insn, enum reg_type type) in get_regno() argument
522 static int get_reg_offset(struct insn *insn, struct pt_regs *regs, in get_reg_offset() argument
855 int insn_get_modrm_rm_off(struct insn *insn, struct pt_regs *regs) in insn_get_modrm_rm_off() argument
870 int insn_get_modrm_reg_off(struct insn *insn, struct pt_regs *regs) in insn_get_modrm_reg_off() argument
1021 if (insn->addr_bytes != 8 && insn->addr_bytes != 4) in get_eff_addr_modrm()
[all …]
/linux/kernel/bpf/
H A Ddisasm.c143 insn->code, insn->dst_reg, in print_bpf_end_insn()
145 insn->imm, insn->dst_reg); in print_bpf_end_insn()
153 insn->code, insn->dst_reg, in print_bpf_bswap_insn()
154 insn->imm, insn->dst_reg); in print_bpf_bswap_insn()
210 insn->code, insn->dst_reg, insn->src_reg); in print_bpf_insn()
254 insn->dst_reg, insn->off, insn->src_reg); in print_bpf_insn()
269 insn->dst_reg, insn->off, insn->src_reg); in print_bpf_insn()
279 insn->off, insn->imm); in print_bpf_insn()
348 insn->code, insn->off); in print_bpf_insn()
352 insn->code, insn->off); in print_bpf_insn()
[all …]
/linux/tools/testing/selftests/bpf/
H A Ddisasm.c143 insn->code, insn->dst_reg, in print_bpf_end_insn()
145 insn->imm, insn->dst_reg); in print_bpf_end_insn()
153 insn->code, insn->dst_reg, in print_bpf_bswap_insn()
154 insn->imm, insn->dst_reg); in print_bpf_bswap_insn()
210 insn->code, insn->dst_reg, insn->src_reg); in print_bpf_insn()
254 insn->dst_reg, insn->off, insn->src_reg); in print_bpf_insn()
269 insn->dst_reg, insn->off, insn->src_reg); in print_bpf_insn()
279 insn->off, insn->imm); in print_bpf_insn()
348 insn->code, insn->off); in print_bpf_insn()
352 insn->code, insn->off); in print_bpf_insn()
[all …]
/linux/arch/x86/include/asm/
H A Dinsn.h140 extern int insn_get_prefixes(struct insn *insn);
141 extern int insn_get_opcode(struct insn *insn);
142 extern int insn_get_modrm(struct insn *insn);
143 extern int insn_get_sib(struct insn *insn);
145 extern int insn_get_immediate(struct insn *insn);
146 extern int insn_get_length(struct insn *insn);
167 extern int insn_rip_relative(struct insn *insn);
169 static inline int insn_is_rex2(struct insn *insn) in insn_is_rex2() argument
181 static inline int insn_is_avx(struct insn *insn) in insn_is_avx() argument
188 static inline int insn_is_evex(struct insn *insn) in insn_is_evex() argument
[all …]
/linux/tools/arch/x86/include/asm/
H A Dinsn.h140 extern int insn_get_prefixes(struct insn *insn);
141 extern int insn_get_opcode(struct insn *insn);
142 extern int insn_get_modrm(struct insn *insn);
143 extern int insn_get_sib(struct insn *insn);
145 extern int insn_get_immediate(struct insn *insn);
146 extern int insn_get_length(struct insn *insn);
167 extern int insn_rip_relative(struct insn *insn);
169 static inline int insn_is_rex2(struct insn *insn) in insn_is_rex2() argument
181 static inline int insn_is_avx(struct insn *insn) in insn_is_avx() argument
188 static inline int insn_is_evex(struct insn *insn) in insn_is_evex() argument
[all …]
/linux/arch/arm64/lib/
H A Dinsn.c264 u32 insn; in aarch64_insn_gen_branch_imm() local
297 u32 insn; in aarch64_insn_gen_comp_branch_imm() local
336 u32 insn; in aarch64_insn_gen_cond_branch_imm() local
356 u32 insn; in aarch64_insn_gen_branch_reg() local
382 u32 insn; in aarch64_insn_gen_load_store_reg() local
399 insn = aarch64_insn_encode_ldst_size(size, insn); in aarch64_insn_gen_load_store_reg()
416 u32 insn; in aarch64_insn_gen_load_store_imm() local
447 insn = aarch64_insn_encode_ldst_size(size, insn); in aarch64_insn_gen_load_store_imm()
461 u32 insn; in aarch64_insn_gen_load_literal() local
486 u32 insn; in aarch64_insn_gen_load_store_pair() local
[all …]
/linux/arch/riscv/kernel/
H A Dtraps_misaligned.c123 #define RVC_RS1S(insn) (8 + RV_X(insn, SH_RD, 3)) argument
125 #define RVC_RS2(insn) RV_X(insn, SH_RS2C, 5) argument
139 #define GET_RM(insn) (((insn) >> 12) & 7) argument
148 #define IMM_I(insn) ((s32)(insn) >> 20) argument
153 #define GET_PRECISION(insn) (((insn) >> 25) & 3) argument
154 #define GET_RM(insn) (((insn) >> 12) & 7) argument
160 #define FP_GET_RD(insn) (insn >> 7 & 0x1F) argument
380 insn = RVC_RS2S(insn) << SH_RD; in handle_misaligned_load()
389 insn = RVC_RS2S(insn) << SH_RD; in handle_misaligned_load()
397 insn = RVC_RS2S(insn) << SH_RD; in handle_misaligned_load()
[all …]
/linux/arch/powerpc/xmon/
H A Dspu.h83 #define DECODE_INSN_RT(insn) (insn & 0x7f) argument
84 #define DECODE_INSN_RA(insn) ((insn >> 7) & 0x7f) argument
85 #define DECODE_INSN_RB(insn) ((insn >> 14) & 0x7f) argument
86 #define DECODE_INSN_RC(insn) ((insn >> 21) & 0x7f) argument
92 #define DECODE_INSN_I16(insn) SIGNED_EXTRACT(insn,16,7) argument
99 #define DECODE_INSN_I18(insn) SIGNED_EXTRACT(insn,18,7) argument
103 #define DECODE_INSN_I7(insn) SIGNED_EXTRACT(insn,7,14) argument
111 #define DECODE_INSN_I9a(insn) ((SIGNED_EXTRACT(insn,2,23) << 7) | UNSIGNED_EXTRACT(insn,7,0)) argument
112 #define DECODE_INSN_I9b(insn) ((SIGNED_EXTRACT(insn,2,14) << 7) | UNSIGNED_EXTRACT(insn,7,0)) argument
113 #define DECODE_INSN_U9a(insn) ((UNSIGNED_EXTRACT(insn,2,23) << 7) | UNSIGNED_EXTRACT(insn,7,0)) argument
[all …]
/linux/arch/s390/tools/
H A Dgen_opcode_table.c44 struct insn *insn; argument
154 struct insn insn; in read_instructions() local
158 rc = scanf("%s %s %s", insn.opcode, insn.name, insn.format); in read_instructions()
168 desc->insn = realloc(desc->insn, desc->nr * sizeof(*desc->insn)); in read_instructions()
171 desc->insn[desc->nr - 1] = insn; in read_instructions()
206 struct insn *insn; in print_long_insn() local
213 insn = &desc->insn[i]; in print_long_insn()
223 insn = &desc->insn[i]; in print_long_insn()
274 struct insn *insn; in print_opcode_table() local
281 insn = &desc->insn[i]; in print_opcode_table()
[all …]
/linux/tools/objtool/
H A Dcheck.c55 return find_insn(file, insn->sec, insn->offset + insn->len); in next_insn_same_sec()
89 return find_insn(file, insn->sec, insn->offset - insn->prev_len); in prev_insn_same_sec()
129 for (; insn; insn = next_insn_same_sec(file, insn))
132 for (insn = next_insn_same_sec(file, insn); insn; \
217 if (!insn || !insn_func(insn)) in __dead_end_function()
706 insn->sec, insn->offset)) in create_static_call_sections()
1334 insn->offset, insn->len); in insn_reloc()
3828 if (insn->hint && !insn->visited && !insn->ignore) { in validate_unwind_hint()
4134 insn = insn->jump_dest; in ignore_unreachable_insn()
4141 if (insn->offset + insn->len >= insn_func(insn)->offset + insn_func(insn)->len) in ignore_unreachable_insn()
[all …]
/linux/arch/arm/probes/kprobes/
H A Dactions-thumb.c29 int rm = insn & 0xf; in t32_simulate_table_branch()
150 insn = __mem_to_opcode_arm(asi->insn[0]); in t32_decode_ldmstm()
151 ((u16 *)asi->insn)[0] = __opcode_to_mem_thumb16(insn >> 16); in t32_decode_ldmstm()
152 ((u16 *)asi->insn)[1] = __opcode_to_mem_thumb16(insn & 0xffff); in t32_decode_ldmstm()
190 int rm = insn & 0xf; in t32_emulate_ldrstr()
369 probes_opcode_t nonzero = regs->uregs[rn] ? insn : ~insn; in t16_simulate_cbz()
487 int rdn = (insn & 0x7) | ((insn & 0x80) >> 4); in t16_emulate_hiregs()
517 insn &= ~0x00ff; in t16_decode_hiregs()
519 ((u16 *)asi->insn)[0] = __opcode_to_mem_thumb16(insn); in t16_decode_hiregs()
555 ((u16 *)asi->insn)[1] = __opcode_to_mem_thumb16(insn & 0x1ff); in t16_decode_push()
[all …]
/linux/arch/mips/kernel/
H A Dbranch.c62 union mips_instruction insn = (union mips_instruction)dec_insn.insn; in __mm_isBranchInstr() local
287 mminsn.insn = word; in __microMIPS_compute_return_epc()
630 ((!insn.i_format.rs && insn.i_format.rt) || in __compute_return_epc_for_insn()
631 (insn.i_format.rs == insn.i_format.rt))) in __compute_return_epc_for_insn()
666 ((!insn.i_format.rs && insn.i_format.rt) || in __compute_return_epc_for_insn()
667 (insn.i_format.rs == insn.i_format.rt))) in __compute_return_epc_for_insn()
695 reg = insn.i_format.rt; in __compute_return_epc_for_insn()
752 if ((regs->regs[insn.i_format.rs] & (1ull<<insn.i_format.rt)) in __compute_return_epc_for_insn()
768 if (regs->regs[insn.i_format.rs] & (1ull<<insn.i_format.rt)) in __compute_return_epc_for_insn()
823 if (insn.i_format.rt && !insn.i_format.rs) in __compute_return_epc_for_insn()
[all …]
/linux/arch/riscv/kvm/
H A Dvcpu_insn.c110 #define RVC_RS1S(insn) (8 + RV_X(insn, SH_RD, 3)) argument
112 #define RVC_RS2(insn) RV_X(insn, SH_RS2C, 5) argument
126 #define GET_FUNCT3(insn) (((insn) >> 12) & 7) argument
135 #define IMM_I(insn) ((s32)(insn) >> 20) argument
262 insn = vcpu->arch.csr_decode.insn; in kvm_riscv_vcpu_csr_return()
313 vcpu->arch.csr_decode.insn = insn; in csr_insn()
541 insn = RVC_RS2S(insn) << SH_RD; in kvm_riscv_vcpu_mmio_load()
550 insn = RVC_RS2S(insn) << SH_RD; in kvm_riscv_vcpu_mmio_load()
564 vcpu->arch.mmio_decode.insn = insn; in kvm_riscv_vcpu_mmio_load()
679 vcpu->arch.mmio_decode.insn = insn; in kvm_riscv_vcpu_mmio_store()
[all …]
/linux/arch/arm64/kernel/probes/
H A Ddecode-insn.c28 if (aarch64_insn_is_branch(insn) || in aarch64_insn_is_steppable()
29 aarch64_insn_is_msr_imm(insn) || in aarch64_insn_is_steppable()
32 aarch64_insn_is_eret(insn) || in aarch64_insn_is_steppable()
41 if (aarch64_insn_is_mrs(insn)) in aarch64_insn_is_steppable()
51 if (aarch64_insn_is_hint(insn)) in aarch64_insn_is_steppable()
85 if (aarch64_insn_is_bcond(insn)) { in arm_probe_decode_insn()
88 aarch64_insn_is_cbnz(insn)) { in arm_probe_decode_insn()
91 aarch64_insn_is_tbnz(insn)) { in arm_probe_decode_insn()
96 aarch64_insn_is_bl(insn)) { in arm_probe_decode_insn()
99 aarch64_insn_is_blr(insn) || in arm_probe_decode_insn()
[all …]
/linux/arch/csky/kernel/probes/
H A Ddecode-insn.c21 CSKY_INSN_SET_SIMULATE(br16, insn); in csky_probe_decode_insn()
22 CSKY_INSN_SET_SIMULATE(bt16, insn); in csky_probe_decode_insn()
23 CSKY_INSN_SET_SIMULATE(bf16, insn); in csky_probe_decode_insn()
24 CSKY_INSN_SET_SIMULATE(jmp16, insn); in csky_probe_decode_insn()
25 CSKY_INSN_SET_SIMULATE(jsr16, insn); in csky_probe_decode_insn()
26 CSKY_INSN_SET_SIMULATE(lrw16, insn); in csky_probe_decode_insn()
27 CSKY_INSN_SET_SIMULATE(pop16, insn); in csky_probe_decode_insn()
29 CSKY_INSN_SET_SIMULATE(br32, insn); in csky_probe_decode_insn()
30 CSKY_INSN_SET_SIMULATE(bt32, insn); in csky_probe_decode_insn()
31 CSKY_INSN_SET_SIMULATE(bf32, insn); in csky_probe_decode_insn()
[all …]
/linux/arch/sparc/kernel/
H A Dunaligned_32.c41 if(((insn>>19)&0x3f) == 15) in decode_direction()
51 insn = (insn >> 19) & 3; in decode_access_size()
53 if(!insn) in decode_access_size()
55 else if(insn == 3) in decode_access_size()
57 else if(insn == 2) in decode_access_size()
69 return (insn & 0x400000); in decode_signedness()
137 unsigned int insn) in compute_effective_address() argument
143 if(insn & 0x2000) { in compute_effective_address()
153 unsigned int insn) in safe_compute_effective_address() argument
159 if(insn & 0x2000) { in safe_compute_effective_address()
[all …]
/linux/arch/loongarch/kernel/
H A Dinst.c164 if (is_pc_ins(&insn)) in insns_need_simulation()
175 if (is_pc_ins(&insn)) in arch_simulate_insn()
176 simu_pc(regs, insn); in arch_simulate_insn()
238 return insn.word; in larch_insn_gen_b()
253 return insn.word; in larch_insn_gen_bl()
267 return insn.word; in larch_insn_gen_break()
276 return insn.word; in larch_insn_gen_or()
295 return insn.word; in larch_insn_gen_lu12iw()
309 return insn.word; in larch_insn_gen_lu32id()
323 return insn.word; in larch_insn_gen_lu52id()
[all …]
/linux/arch/arm64/kernel/
H A Darmv8_deprecated.c48 u32 insn);
351 char *insn; in compat_setend_handler() local
356 insn = "setend be"; in compat_setend_handler()
359 insn = "setend le"; in compat_setend_handler()
422 if (insn->set_hw_mode) in enable_insn_hw_mode()
429 if (insn->set_hw_mode) in disable_insn_hw_mode()
436 if (!insn->set_hw_mode) in run_all_cpu_set_hw_mode()
468 if (insn->set_hw_mode && insn->set_hw_mode(enable)) { in run_all_insn_set_hw_mode()
470 cpu, insn->name); in run_all_insn_set_hw_mode()
539 insn->min = INSN_UNDEF; in register_insn_emulation()
[all …]
/linux/drivers/comedi/kcomedilib/
H A Dkcomedilib_main.c109 switch (insn->insn) { in comedi_do_insn()
136 memset(&insn, 0, sizeof(insn)); in comedi_dio_get_config()
137 insn.insn = INSN_CONFIG; in comedi_dio_get_config()
138 insn.n = 2; in comedi_dio_get_config()
155 memset(&insn, 0, sizeof(insn)); in comedi_dio_config()
156 insn.insn = INSN_CONFIG; in comedi_dio_config()
157 insn.n = 1; in comedi_dio_config()
180 memset(&insn, 0, sizeof(insn)); in comedi_dio_bitfield2()
181 insn.insn = INSN_BITS; in comedi_dio_bitfield2()
183 insn.n = 2; in comedi_dio_bitfield2()
[all …]
/linux/arch/arm64/include/asm/
H A Dasm-extable.h31 .long ((insn) - .); \
41 __ASM_EXTABLE_RAW(insn, fixup, \
51 #define _ASM_EXTABLE_UACCESS(insn, fixup) \ argument
59 _ASM_EXTABLE_UACCESS(\insn, \fixup)
66 .macro _cond_uaccess_extable, insn, fixup
68 _asm_extable_uaccess \insn, \fixup
79 ".long ((" insn ") - .)\n" \
90 __ASM_EXTABLE_RAW(#insn, #fixup, \
99 __ASM_EXTABLE_RAW(#insn, #fixup, \
109 #define _ASM_EXTABLE_UACCESS(insn, fixup) \
[all …]
H A Dinsn.h439 if (!aarch64_insn_is_hint(insn)) in aarch64_insn_is_steppable_hint()
442 switch (insn & 0xFE0) { in aarch64_insn_is_steppable_hint()
465 return aarch64_insn_is_b(insn) || in aarch64_insn_is_branch()
466 aarch64_insn_is_bl(insn) || in aarch64_insn_is_branch()
473 aarch64_insn_is_br(insn) || in aarch64_insn_is_branch()
482 return aarch64_insn_is_b(insn) || in aarch64_insn_is_branch_imm()
483 aarch64_insn_is_bl(insn) || in aarch64_insn_is_branch_imm()
494 aarch64_insn_is_adrp(insn); in aarch64_insn_is_adr_adrp()
508 aarch64_insn_is_sb(insn) || in aarch64_insn_is_barrier()
555 u32 insn, u64 imm);
[all …]
/linux/arch/s390/lib/
H A Dprobes.c16 switch (insn[0] >> 8) { in probe_is_prohibited_opcode()
25 switch (insn[0] & 0x0f) { in probe_is_prohibited_opcode()
30 switch (insn[0]) { in probe_is_prohibited_opcode()
51 switch (insn[0] >> 8) { in probe_get_fixup_type()
56 if ((insn[0] & 0x0f) == 0) in probe_get_fixup_type()
77 if ((insn[0] & 0xff) == 0xb2) in probe_get_fixup_type()
89 switch (insn[2] & 0xff) { in probe_get_fixup_type()
101 switch (insn[2] & 0xff) { in probe_get_fixup_type()
122 switch (insn[0] >> 8) { in probe_is_insn_relative_long()
128 switch (insn[0] & 0x0f) { in probe_is_insn_relative_long()
[all …]
/linux/arch/x86/kernel/kprobes/
H A Dcore.c115 } __packed *insn; in __synthesize_relative_insn() local
119 insn->op = op; in __synthesize_relative_insn()
140 bool can_boost(struct insn *insn, void *addr) in can_boost() argument
267 static inline bool is_exception_insn(struct insn *insn) in is_exception_insn() argument
291 struct insn insn; in can_probe() local
376 u32 insn; in arch_adjust_kprobe_addr() local
466 struct insn *insn) in prepare_singlestep() argument
639 static int prepare_emulation(struct kprobe *p, struct insn *insn) in prepare_emulation() argument
758 struct insn insn; in arch_copy_kprobe() local
763 len = __copy_instruction(buf, p->addr, p->ainsn.insn, &insn); in arch_copy_kprobe()
[all …]

12345678910>>...24