Home
last modified time | relevance | path

Searched refs:insn (Results 1 - 25 of 1099) sorted by relevance

12345678910>>...44

/kernel/linux/linux-5.10/arch/x86/lib/
H A Dinsn.c14 #include <asm/insn.h> /* __ignore_sync_check__ */
22 #define validate_next(t, insn, n) \
23 ((insn)->next_byte + sizeof(t) + n <= (insn)->end_kaddr)
25 #define __get_next(t, insn) \
26 ({ t r = *(t*)insn->next_byte; insn->next_byte += sizeof(t); r; })
28 #define __peek_nbyte_next(t, insn, n) \
29 ({ t r = *(t*)((insn)->next_byte + n); r; })
31 #define get_next(t, insn) \
45 insn_init(struct insn *insn, const void *kaddr, int buf_len, int x86_64) insn_init() argument
69 __insn_get_emulate_prefix(struct insn *insn, const insn_byte_t *prefix, size_t len) __insn_get_emulate_prefix() argument
88 insn_get_emulate_prefix(struct insn *insn) insn_get_emulate_prefix() argument
108 insn_get_prefixes(struct insn *insn) insn_get_prefixes() argument
247 insn_get_opcode(struct insn *insn) insn_get_opcode() argument
318 insn_get_modrm(struct insn *insn) insn_get_modrm() argument
367 insn_rip_relative(struct insn *insn) insn_rip_relative() argument
398 insn_get_sib(struct insn *insn) insn_get_sib() argument
441 insn_get_displacement(struct insn *insn) insn_get_displacement() argument
504 __get_moffset(struct insn *insn) __get_moffset() argument
533 __get_immv32(struct insn *insn) __get_immv32() argument
556 __get_immv(struct insn *insn) __get_immv() argument
584 __get_immptr(struct insn *insn) __get_immptr() argument
623 insn_get_immediate(struct insn *insn) insn_get_immediate() argument
704 insn_get_length(struct insn *insn) insn_get_length() argument
734 insn_decode(struct insn *insn, const void *kaddr, int buf_len, enum insn_mode m) insn_decode() argument
[all...]
/kernel/linux/linux-5.10/tools/arch/x86/lib/
H A Dinsn.c14 #include "../include/asm/insn.h" /* __ignore_sync_check__ */
22 #define validate_next(t, insn, n) \
23 ((insn)->next_byte + sizeof(t) + n <= (insn)->end_kaddr)
25 #define __get_next(t, insn) \
26 ({ t r = *(t*)insn->next_byte; insn->next_byte += sizeof(t); r; })
28 #define __peek_nbyte_next(t, insn, n) \
29 ({ t r = *(t*)((insn)->next_byte + n); r; })
31 #define get_next(t, insn) \
45 insn_init(struct insn *insn, const void *kaddr, int buf_len, int x86_64) insn_init() argument
69 __insn_get_emulate_prefix(struct insn *insn, const insn_byte_t *prefix, size_t len) __insn_get_emulate_prefix() argument
88 insn_get_emulate_prefix(struct insn *insn) insn_get_emulate_prefix() argument
108 insn_get_prefixes(struct insn *insn) insn_get_prefixes() argument
247 insn_get_opcode(struct insn *insn) insn_get_opcode() argument
318 insn_get_modrm(struct insn *insn) insn_get_modrm() argument
367 insn_rip_relative(struct insn *insn) insn_rip_relative() argument
398 insn_get_sib(struct insn *insn) insn_get_sib() argument
441 insn_get_displacement(struct insn *insn) insn_get_displacement() argument
504 __get_moffset(struct insn *insn) __get_moffset() argument
533 __get_immv32(struct insn *insn) __get_immv32() argument
556 __get_immv(struct insn *insn) __get_immv() argument
584 __get_immptr(struct insn *insn) __get_immptr() argument
623 insn_get_immediate(struct insn *insn) insn_get_immediate() argument
704 insn_get_length(struct insn *insn) insn_get_length() argument
734 insn_decode(struct insn *insn, const void *kaddr, int buf_len, enum insn_mode m) insn_decode() argument
[all...]
/kernel/linux/linux-6.6/arch/x86/lib/
H A Dinsn.c15 #include <asm/insn.h> /* __ignore_sync_check__ */
37 #define validate_next(t, insn, n) \
38 ((insn)->next_byte + sizeof(t) + n <= (insn)->end_kaddr)
40 #define __get_next(t, insn) \
41 ({ t r = get_unaligned((t *)(insn)->next_byte); (insn)->next_byte += sizeof(t); leXX_to_cpu(t, r); })
43 #define __peek_nbyte_next(t, insn, n) \
44 ({ t r = get_unaligned((t *)(insn)->next_byte + n); leXX_to_cpu(t, r); })
46 #define get_next(t, insn) \
61 insn_init(struct insn *insn, const void *kaddr, int buf_len, int x86_64) insn_init() argument
85 __insn_get_emulate_prefix(struct insn *insn, const insn_byte_t *prefix, size_t len) __insn_get_emulate_prefix() argument
104 insn_get_emulate_prefix(struct insn *insn) insn_get_emulate_prefix() argument
124 insn_get_prefixes(struct insn *insn) insn_get_prefixes() argument
262 insn_get_opcode(struct insn *insn) insn_get_opcode() argument
333 insn_get_modrm(struct insn *insn) insn_get_modrm() argument
381 insn_rip_relative(struct insn *insn) insn_rip_relative() argument
412 insn_get_sib(struct insn *insn) insn_get_sib() argument
455 insn_get_displacement(struct insn *insn) insn_get_displacement() argument
517 __get_moffset(struct insn *insn) __get_moffset() argument
542 __get_immv32(struct insn *insn) __get_immv32() argument
563 __get_immv(struct insn *insn) __get_immv() argument
588 __get_immptr(struct insn *insn) __get_immptr() argument
624 insn_get_immediate(struct insn *insn) insn_get_immediate() argument
699 insn_get_length(struct insn *insn) insn_get_length() argument
719 insn_complete(struct insn *insn) insn_complete() argument
736 insn_decode(struct insn *insn, const void *kaddr, int buf_len, enum insn_mode m) insn_decode() argument
[all...]
H A Dinsn-eval.c13 #include <asm/insn.h>
14 #include <asm/insn-eval.h>
19 #define pr_fmt(fmt) "insn: " fmt
30 * @insn: Instruction containing the opcode to inspect
38 static bool is_string_insn(struct insn *insn) in is_string_insn() argument
41 if (insn->opcode.nbytes != 1) in is_string_insn()
44 switch (insn->opcode.bytes[0]) { in is_string_insn()
56 * @insn: Instruction containing the prefix to inspect
62 bool insn_has_rep_prefix(struct insn *ins argument
91 get_seg_reg_override_idx(struct insn *insn) get_seg_reg_override_idx() argument
154 check_seg_overrides(struct insn *insn, int regoff) check_seg_overrides() argument
179 resolve_default_seg(struct insn *insn, struct pt_regs *regs, int off) resolve_default_seg() argument
281 resolve_seg_reg(struct insn *insn, struct pt_regs *regs, int regoff) resolve_seg_reg() argument
447 get_regno(struct insn *insn, enum reg_type type) get_regno() argument
522 get_reg_offset(struct insn *insn, struct pt_regs *regs, enum reg_type type) get_reg_offset() argument
550 get_reg_offset_16(struct insn *insn, struct pt_regs *regs, int *offs1, int *offs2) get_reg_offset_16() argument
855 insn_get_modrm_rm_off(struct insn *insn, struct pt_regs *regs) insn_get_modrm_rm_off() argument
870 insn_get_modrm_reg_off(struct insn *insn, struct pt_regs *regs) insn_get_modrm_reg_off() argument
885 insn_get_modrm_reg_ptr(struct insn *insn, struct pt_regs *regs) insn_get_modrm_reg_ptr() argument
916 get_seg_base_limit(struct insn *insn, struct pt_regs *regs, int regoff, unsigned long *base, unsigned long *limit) get_seg_base_limit() argument
966 get_eff_addr_reg(struct insn *insn, struct pt_regs *regs, int *regoff, long *eff_addr) get_eff_addr_reg() argument
1015 get_eff_addr_modrm(struct insn *insn, struct pt_regs *regs, int *regoff, long *eff_addr) get_eff_addr_modrm() argument
1082 get_eff_addr_modrm_16(struct insn *insn, struct pt_regs *regs, int *regoff, short *eff_addr) get_eff_addr_modrm_16() argument
1150 get_eff_addr_sib(struct insn *insn, struct pt_regs *regs, int *base_offset, long *eff_addr) get_eff_addr_sib() argument
1234 get_addr_ref_16(struct insn *insn, struct pt_regs *regs) get_addr_ref_16() argument
1298 get_addr_ref_32(struct insn *insn, struct pt_regs *regs) get_addr_ref_32() argument
1387 get_addr_ref_64(struct insn *insn, struct pt_regs *regs) get_addr_ref_64() argument
1392 get_addr_ref_64(struct insn *insn, struct pt_regs *regs) get_addr_ref_64() argument
1445 insn_get_addr_ref(struct insn *insn, struct pt_regs *regs) insn_get_addr_ref() argument
1555 insn_decode_from_regs(struct insn *insn, struct pt_regs *regs, unsigned char buf[MAX_INSN_SIZE], int buf_size) insn_decode_from_regs() argument
1600 insn_decode_mmio(struct insn *insn, int *bytes) insn_decode_mmio() argument
[all...]
/kernel/linux/linux-6.6/tools/arch/x86/lib/
H A Dinsn.c15 #include "../include/asm/insn.h" /* __ignore_sync_check__ */
37 #define validate_next(t, insn, n) \
38 ((insn)->next_byte + sizeof(t) + n <= (insn)->end_kaddr)
40 #define __get_next(t, insn) \
41 ({ t r = get_unaligned((t *)(insn)->next_byte); (insn)->next_byte += sizeof(t); leXX_to_cpu(t, r); })
43 #define __peek_nbyte_next(t, insn, n) \
44 ({ t r = get_unaligned((t *)(insn)->next_byte + n); leXX_to_cpu(t, r); })
46 #define get_next(t, insn) \
61 insn_init(struct insn *insn, const void *kaddr, int buf_len, int x86_64) insn_init() argument
85 __insn_get_emulate_prefix(struct insn *insn, const insn_byte_t *prefix, size_t len) __insn_get_emulate_prefix() argument
104 insn_get_emulate_prefix(struct insn *insn) insn_get_emulate_prefix() argument
124 insn_get_prefixes(struct insn *insn) insn_get_prefixes() argument
262 insn_get_opcode(struct insn *insn) insn_get_opcode() argument
333 insn_get_modrm(struct insn *insn) insn_get_modrm() argument
381 insn_rip_relative(struct insn *insn) insn_rip_relative() argument
412 insn_get_sib(struct insn *insn) insn_get_sib() argument
455 insn_get_displacement(struct insn *insn) insn_get_displacement() argument
517 __get_moffset(struct insn *insn) __get_moffset() argument
542 __get_immv32(struct insn *insn) __get_immv32() argument
563 __get_immv(struct insn *insn) __get_immv() argument
588 __get_immptr(struct insn *insn) __get_immptr() argument
624 insn_get_immediate(struct insn *insn) insn_get_immediate() argument
699 insn_get_length(struct insn *insn) insn_get_length() argument
719 insn_complete(struct insn *insn) insn_complete() argument
736 insn_decode(struct insn *insn, const void *kaddr, int buf_len, enum insn_mode m) insn_decode() argument
[all...]
/kernel/linux/linux-5.10/arch/x86/include/asm/
H A Dinsn.h23 struct insn { struct
55 const insn_byte_t *kaddr; /* kernel address of insn to analyze */
56 const insn_byte_t *end_kaddr; /* kernel address of last insn in buffer */
89 extern void insn_init(struct insn *insn, const void *kaddr, int buf_len, int x86_64);
90 extern int insn_get_prefixes(struct insn *insn);
91 extern int insn_get_opcode(struct insn *insn);
92 extern int insn_get_modrm(struct insn *ins
111 insn_get_attribute(struct insn *insn) insn_get_attribute() argument
120 kernel_insn_init(struct insn *insn, const void *kaddr, int buf_len) kernel_insn_init() argument
130 insn_is_avx(struct insn *insn) insn_is_avx() argument
137 insn_is_evex(struct insn *insn) insn_is_evex() argument
144 insn_has_emulate_prefix(struct insn *insn) insn_has_emulate_prefix() argument
150 insn_complete(struct insn *insn) insn_complete() argument
156 insn_vex_m_bits(struct insn *insn) insn_vex_m_bits() argument
166 insn_vex_p_bits(struct insn *insn) insn_vex_p_bits() argument
175 insn_last_prefix_id(struct insn *insn) insn_last_prefix_id() argument
187 insn_offset_rex_prefix(struct insn *insn) insn_offset_rex_prefix() argument
191 insn_offset_vex_prefix(struct insn *insn) insn_offset_vex_prefix() argument
195 insn_offset_opcode(struct insn *insn) insn_offset_opcode() argument
199 insn_offset_modrm(struct insn *insn) insn_offset_modrm() argument
203 insn_offset_sib(struct insn *insn) insn_offset_sib() argument
207 insn_offset_displacement(struct insn *insn) insn_offset_displacement() argument
211 insn_offset_immediate(struct insn *insn) insn_offset_immediate() argument
242 insn_masking_exception(struct insn *insn) insn_masking_exception() argument
[all...]
/kernel/linux/linux-5.10/tools/arch/x86/include/asm/
H A Dinsn.h23 struct insn { struct
55 const insn_byte_t *kaddr; /* kernel address of insn to analyze */
56 const insn_byte_t *end_kaddr; /* kernel address of last insn in buffer */
89 extern void insn_init(struct insn *insn, const void *kaddr, int buf_len, int x86_64);
90 extern int insn_get_prefixes(struct insn *insn);
91 extern int insn_get_opcode(struct insn *insn);
92 extern int insn_get_modrm(struct insn *ins
111 insn_get_attribute(struct insn *insn) insn_get_attribute() argument
120 kernel_insn_init(struct insn *insn, const void *kaddr, int buf_len) kernel_insn_init() argument
130 insn_is_avx(struct insn *insn) insn_is_avx() argument
137 insn_is_evex(struct insn *insn) insn_is_evex() argument
144 insn_has_emulate_prefix(struct insn *insn) insn_has_emulate_prefix() argument
150 insn_complete(struct insn *insn) insn_complete() argument
156 insn_vex_m_bits(struct insn *insn) insn_vex_m_bits() argument
166 insn_vex_p_bits(struct insn *insn) insn_vex_p_bits() argument
175 insn_last_prefix_id(struct insn *insn) insn_last_prefix_id() argument
187 insn_offset_rex_prefix(struct insn *insn) insn_offset_rex_prefix() argument
191 insn_offset_vex_prefix(struct insn *insn) insn_offset_vex_prefix() argument
195 insn_offset_opcode(struct insn *insn) insn_offset_opcode() argument
199 insn_offset_modrm(struct insn *insn) insn_offset_modrm() argument
203 insn_offset_sib(struct insn *insn) insn_offset_sib() argument
207 insn_offset_displacement(struct insn *insn) insn_offset_displacement() argument
211 insn_offset_immediate(struct insn *insn) insn_offset_immediate() argument
242 insn_masking_exception(struct insn *insn) insn_masking_exception() argument
[all...]
/kernel/linux/linux-6.6/kernel/bpf/
H A Ddisasm.c17 const struct bpf_insn *insn, in __func_get_name()
22 if (!insn->src_reg && in __func_get_name()
23 insn->imm >= 0 && insn->imm < __BPF_FUNC_MAX_ID && in __func_get_name()
24 func_id_str[insn->imm]) in __func_get_name()
25 return func_id_str[insn->imm]; in __func_get_name()
30 res = cbs->cb_call(cbs->private_data, insn); in __func_get_name()
35 if (insn->src_reg == BPF_PSEUDO_CALL) in __func_get_name()
36 snprintf(buff, len, "%+d", insn->imm); in __func_get_name()
37 else if (insn in __func_get_name()
16 __func_get_name(const struct bpf_insn_cbs *cbs, const struct bpf_insn *insn, char *buff, size_t len) __func_get_name() argument
43 __func_imm_name(const struct bpf_insn_cbs *cbs, const struct bpf_insn *insn, u64 full_imm, char *buff, size_t len) __func_imm_name() argument
138 print_bpf_end_insn(bpf_insn_print_t verbose, void *private_data, const struct bpf_insn *insn) print_bpf_end_insn() argument
148 print_bpf_bswap_insn(bpf_insn_print_t verbose, void *private_data, const struct bpf_insn *insn) print_bpf_bswap_insn() argument
157 is_sdiv_smod(const struct bpf_insn *insn) is_sdiv_smod() argument
163 is_movsx(const struct bpf_insn *insn) is_movsx() argument
169 print_bpf_insn(const struct bpf_insn_cbs *cbs, const struct bpf_insn *insn, bool allow_ptr_leaks) print_bpf_insn() argument
[all...]
/kernel/linux/linux-6.6/tools/testing/selftests/bpf/
H A Ddisasm.c17 const struct bpf_insn *insn, in __func_get_name()
22 if (!insn->src_reg && in __func_get_name()
23 insn->imm >= 0 && insn->imm < __BPF_FUNC_MAX_ID && in __func_get_name()
24 func_id_str[insn->imm]) in __func_get_name()
25 return func_id_str[insn->imm]; in __func_get_name()
30 res = cbs->cb_call(cbs->private_data, insn); in __func_get_name()
35 if (insn->src_reg == BPF_PSEUDO_CALL) in __func_get_name()
36 snprintf(buff, len, "%+d", insn->imm); in __func_get_name()
37 else if (insn in __func_get_name()
16 __func_get_name(const struct bpf_insn_cbs *cbs, const struct bpf_insn *insn, char *buff, size_t len) __func_get_name() argument
43 __func_imm_name(const struct bpf_insn_cbs *cbs, const struct bpf_insn *insn, u64 full_imm, char *buff, size_t len) __func_imm_name() argument
138 print_bpf_end_insn(bpf_insn_print_t verbose, void *private_data, const struct bpf_insn *insn) print_bpf_end_insn() argument
148 print_bpf_bswap_insn(bpf_insn_print_t verbose, void *private_data, const struct bpf_insn *insn) print_bpf_bswap_insn() argument
157 is_sdiv_smod(const struct bpf_insn *insn) is_sdiv_smod() argument
163 is_movsx(const struct bpf_insn *insn) is_movsx() argument
169 print_bpf_insn(const struct bpf_insn_cbs *cbs, const struct bpf_insn *insn, bool allow_ptr_leaks) print_bpf_insn() argument
[all...]
/kernel/linux/linux-6.6/arch/x86/include/asm/
H A Dinsn.h68 struct insn { struct
100 const insn_byte_t *kaddr; /* kernel address of insn to analyze */
101 const insn_byte_t *end_kaddr; /* kernel address of last insn in buffer */
134 extern void insn_init(struct insn *insn, const void *kaddr, int buf_len, int x86_64);
135 extern int insn_get_prefixes(struct insn *insn);
136 extern int insn_get_opcode(struct insn *insn);
137 extern int insn_get_modrm(struct insn *ins
156 insn_get_attribute(struct insn *insn) insn_get_attribute() argument
164 insn_is_avx(struct insn *insn) insn_is_avx() argument
171 insn_is_evex(struct insn *insn) insn_is_evex() argument
178 insn_has_emulate_prefix(struct insn *insn) insn_has_emulate_prefix() argument
183 insn_vex_m_bits(struct insn *insn) insn_vex_m_bits() argument
193 insn_vex_p_bits(struct insn *insn) insn_vex_p_bits() argument
202 insn_last_prefix_id(struct insn *insn) insn_last_prefix_id() argument
214 insn_offset_rex_prefix(struct insn *insn) insn_offset_rex_prefix() argument
218 insn_offset_vex_prefix(struct insn *insn) insn_offset_vex_prefix() argument
222 insn_offset_opcode(struct insn *insn) insn_offset_opcode() argument
226 insn_offset_modrm(struct insn *insn) insn_offset_modrm() argument
230 insn_offset_sib(struct insn *insn) insn_offset_sib() argument
234 insn_offset_displacement(struct insn *insn) insn_offset_displacement() argument
238 insn_offset_immediate(struct insn *insn) insn_offset_immediate() argument
269 insn_masking_exception(struct insn *insn) insn_masking_exception() argument
[all...]
/kernel/linux/linux-6.6/tools/arch/x86/include/asm/
H A Dinsn.h68 struct insn { struct
100 const insn_byte_t *kaddr; /* kernel address of insn to analyze */
101 const insn_byte_t *end_kaddr; /* kernel address of last insn in buffer */
134 extern void insn_init(struct insn *insn, const void *kaddr, int buf_len, int x86_64);
135 extern int insn_get_prefixes(struct insn *insn);
136 extern int insn_get_opcode(struct insn *insn);
137 extern int insn_get_modrm(struct insn *ins
156 insn_get_attribute(struct insn *insn) insn_get_attribute() argument
164 insn_is_avx(struct insn *insn) insn_is_avx() argument
171 insn_is_evex(struct insn *insn) insn_is_evex() argument
178 insn_has_emulate_prefix(struct insn *insn) insn_has_emulate_prefix() argument
183 insn_vex_m_bits(struct insn *insn) insn_vex_m_bits() argument
193 insn_vex_p_bits(struct insn *insn) insn_vex_p_bits() argument
202 insn_last_prefix_id(struct insn *insn) insn_last_prefix_id() argument
214 insn_offset_rex_prefix(struct insn *insn) insn_offset_rex_prefix() argument
218 insn_offset_vex_prefix(struct insn *insn) insn_offset_vex_prefix() argument
222 insn_offset_opcode(struct insn *insn) insn_offset_opcode() argument
226 insn_offset_modrm(struct insn *insn) insn_offset_modrm() argument
230 insn_offset_sib(struct insn *insn) insn_offset_sib() argument
234 insn_offset_displacement(struct insn *insn) insn_offset_displacement() argument
238 insn_offset_immediate(struct insn *insn) insn_offset_immediate() argument
269 insn_masking_exception(struct insn *insn) insn_masking_exception() argument
[all...]
/kernel/linux/linux-5.10/kernel/bpf/
H A Ddisasm.c17 const struct bpf_insn *insn, in __func_get_name()
22 if (insn->src_reg != BPF_PSEUDO_CALL && in __func_get_name()
23 insn->imm >= 0 && insn->imm < __BPF_FUNC_MAX_ID && in __func_get_name()
24 func_id_str[insn->imm]) in __func_get_name()
25 return func_id_str[insn->imm]; in __func_get_name()
28 return cbs->cb_call(cbs->private_data, insn); in __func_get_name()
30 if (insn->src_reg == BPF_PSEUDO_CALL) in __func_get_name()
31 snprintf(buff, len, "%+d", insn->imm); in __func_get_name()
37 const struct bpf_insn *insn, in __func_imm_name()
16 __func_get_name(const struct bpf_insn_cbs *cbs, const struct bpf_insn *insn, char *buff, size_t len) __func_get_name() argument
36 __func_imm_name(const struct bpf_insn_cbs *cbs, const struct bpf_insn *insn, u64 full_imm, char *buff, size_t len) __func_imm_name() argument
107 print_bpf_end_insn(bpf_insn_print_t verbose, void *private_data, const struct bpf_insn *insn) print_bpf_end_insn() argument
117 print_bpf_insn(const struct bpf_insn_cbs *cbs, const struct bpf_insn *insn, bool allow_ptr_leaks) print_bpf_insn() argument
[all...]
/kernel/linux/linux-5.10/tools/objtool/
H A Dcheck.c26 struct instruction *insn; member
39 struct instruction *insn; in find_insn() local
41 hash_for_each_possible(file->insn_hash, insn, hash, sec_offset_hash(sec, offset)) { in find_insn()
42 if (insn->sec == sec && insn->offset == offset) in find_insn()
43 return insn; in find_insn()
50 struct instruction *insn) in next_insn_same_sec()
52 struct instruction *next = list_next_entry(insn, list); in next_insn_same_sec()
54 if (!next || &next->list == &file->insn_list || next->sec != insn->sec) in next_insn_same_sec()
61 struct instruction *insn) in next_insn_same_func()
49 next_insn_same_sec(struct objtool_file *file, struct instruction *insn) next_insn_same_sec() argument
60 next_insn_same_func(struct objtool_file *file, struct instruction *insn) next_insn_same_func() argument
80 prev_insn_same_sym(struct objtool_file *file, struct instruction *insn) prev_insn_same_sym() argument
116 is_jump_table_jump(struct instruction *insn) is_jump_table_jump() argument
128 is_sibling_call(struct instruction *insn) is_sibling_call() argument
159 struct instruction *insn; __dead_end_function() local
357 struct instruction *insn; decode_instructions() local
429 struct instruction *insn = NULL; find_last_insn() local
446 struct instruction *insn; add_dead_ends() local
529 struct instruction *insn; create_static_call_sections() local
617 struct instruction *insn; create_retpoline_sites_sections() local
663 struct instruction *insn; create_return_sites_sections() local
712 struct instruction *insn; add_ignores() local
925 struct instruction *insn; add_ignore_alternatives() local
978 insn_reloc(struct objtool_file *file, struct instruction *insn) insn_reloc() argument
995 remove_insn_ops(struct instruction *insn) remove_insn_ops() argument
1005 annotate_call_site(struct objtool_file *file, struct instruction *insn, bool sibling) annotate_call_site() argument
1065 add_call_dest(struct objtool_file *file, struct instruction *insn, struct symbol *dest, bool sibling) add_call_dest() argument
1084 add_retpoline_call(struct objtool_file *file, struct instruction *insn) add_retpoline_call() argument
1118 add_return_call(struct objtool_file *file, struct instruction *insn, bool add) add_return_call() argument
1137 struct instruction *insn; add_jump_destinations() local
1256 struct instruction *insn; add_call_destinations() local
1318 struct instruction *last_orig_insn, *last_new_insn = NULL, *insn, *nop = NULL; handle_group_alt() local
1552 add_jump_table(struct objtool_file *file, struct instruction *insn, struct reloc *table) add_jump_table() argument
1612 find_jump_table(struct objtool_file *file, struct symbol *func, struct instruction *insn) find_jump_table() argument
1658 struct instruction *insn, *last = NULL; mark_func_jump_tables() local
1693 struct instruction *insn; add_func_jump_tables() local
1750 struct instruction *insn; read_unwind_hints() local
1839 struct instruction *insn; read_retpoline_hints() local
1876 struct instruction *insn; read_instr_hints() local
1922 struct instruction *insn; read_intra_function_calls() local
2102 is_special_call(struct instruction *insn) is_special_call() argument
2117 has_modified_stack_frame(struct instruction *insn, struct insn_state *state) has_modified_stack_frame() argument
2154 update_cfi_state_regs(struct instruction *insn, struct cfi_state *cfi, struct stack_op *op) update_cfi_state_regs() argument
2247 update_cfi_state(struct instruction *insn, struct cfi_state *cfi, struct stack_op *op) update_cfi_state() argument
2608 propagate_alt_cfi(struct objtool_file *file, struct instruction *insn) propagate_alt_cfi() argument
2637 handle_insn_ops(struct instruction *insn, struct insn_state *state) handle_insn_ops() argument
2671 insn_cfi_match(struct instruction *insn, struct cfi_state *cfi2) insn_cfi_match() argument
2729 call_dest_name(struct instruction *insn) call_dest_name() argument
2763 validate_call(struct instruction *insn, struct insn_state *state) validate_call() argument
2787 validate_sibling_call(struct instruction *insn, struct insn_state *state) validate_sibling_call() argument
2798 validate_return(struct symbol *func, struct instruction *insn, struct insn_state *state) validate_return() argument
2839 next_insn_to_validate(struct objtool_file *file, struct instruction *insn) next_insn_to_validate() argument
2861 validate_branch(struct objtool_file *file, struct symbol *func, struct instruction *insn, struct insn_state state) validate_branch() argument
3112 struct instruction *insn; validate_unwind_hints() local
3149 validate_entry(struct objtool_file *file, struct instruction *insn) validate_entry() argument
3264 struct instruction *insn; validate_unret() local
3284 struct instruction *insn; validate_retpoline() local
3323 is_kasan_insn(struct instruction *insn) is_kasan_insn() argument
3329 is_ubsan_insn(struct instruction *insn) is_ubsan_insn() argument
3336 ignore_unreachable_insn(struct objtool_file *file, struct instruction *insn) ignore_unreachable_insn() argument
3407 struct instruction *insn; validate_symbol() local
3486 struct instruction *insn; validate_reachable_instructions() local
[all...]
/kernel/linux/linux-6.6/arch/arm64/lib/
H A Dinsn.c16 #include <asm/insn.h>
88 u64 aarch64_insn_decode_immediate(enum aarch64_insn_imm_type type, u32 insn) in aarch64_insn_decode_immediate() argument
96 immlo = (insn >> ADR_IMM_LOSHIFT) & ADR_IMM_LOMASK; in aarch64_insn_decode_immediate()
97 immhi = (insn >> ADR_IMM_HISHIFT) & ADR_IMM_HIMASK; in aarch64_insn_decode_immediate()
98 insn = (immhi << ADR_IMM_HILOSPLIT) | immlo; in aarch64_insn_decode_immediate()
109 return (insn >> shift) & mask; in aarch64_insn_decode_immediate()
113 u32 insn, u64 imm) in aarch64_insn_encode_immediate()
118 if (insn == AARCH64_BREAK_FAULT) in aarch64_insn_encode_immediate()
140 insn &= ~(mask << shift); in aarch64_insn_encode_immediate()
141 insn | in aarch64_insn_encode_immediate()
112 aarch64_insn_encode_immediate(enum aarch64_insn_imm_type type, u32 insn, u64 imm) aarch64_insn_encode_immediate() argument
146 aarch64_insn_decode_register(enum aarch64_insn_register_type type, u32 insn) aarch64_insn_decode_register() argument
175 aarch64_insn_encode_register(enum aarch64_insn_register_type type, u32 insn, enum aarch64_insn_register reg) aarch64_insn_encode_register() argument
224 aarch64_insn_encode_ldst_size(enum aarch64_insn_size_type type, u32 insn) aarch64_insn_encode_ldst_size() argument
264 u32 insn; aarch64_insn_gen_branch_imm() local
297 u32 insn; aarch64_insn_gen_comp_branch_imm() local
336 u32 insn; aarch64_insn_gen_cond_branch_imm() local
356 u32 insn; aarch64_insn_gen_branch_reg() local
382 u32 insn; aarch64_insn_gen_load_store_reg() local
416 u32 insn; aarch64_insn_gen_load_store_imm() local
461 u32 insn; aarch64_insn_gen_load_literal() local
486 u32 insn; aarch64_insn_gen_load_store_pair() local
549 u32 insn; aarch64_insn_gen_load_store_ex() local
585 aarch64_insn_encode_ldst_order(enum aarch64_insn_mem_order_type type, u32 insn) aarch64_insn_encode_ldst_order() argument
621 u32 insn; aarch64_insn_gen_atomic_ld_op() local
667 aarch64_insn_encode_cas_order(enum aarch64_insn_mem_order_type type, u32 insn) aarch64_insn_encode_cas_order() argument
702 u32 insn; aarch64_insn_gen_cas() local
735 u32 insn; aarch64_insn_gen_add_sub_imm() local
797 u32 insn; aarch64_insn_gen_bitfield() local
851 u32 insn; aarch64_insn_gen_movewide() local
908 u32 insn; aarch64_insn_gen_add_sub_shifted_reg() local
964 u32 insn; aarch64_insn_gen_data1() local
1008 u32 insn; aarch64_insn_gen_data2() local
1059 u32 insn; aarch64_insn_gen_data3() local
1102 u32 insn; aarch64_insn_gen_logical_shifted_reg() local
1182 u32 insn; aarch64_insn_gen_adr() local
1212 aarch64_get_branch_offset(u32 insn) aarch64_get_branch_offset() argument
1240 aarch64_set_branch_offset(u32 insn, s32 offset) aarch64_set_branch_offset() argument
1259 aarch64_insn_adrp_get_offset(u32 insn) aarch64_insn_adrp_get_offset() argument
1265 aarch64_insn_adrp_set_offset(u32 insn, s32 offset) aarch64_insn_adrp_set_offset() argument
1275 aarch64_insn_extract_system_reg(u32 insn) aarch64_insn_extract_system_reg() argument
1280 aarch32_insn_is_wide(u32 insn) aarch32_insn_is_wide() argument
1288 aarch32_insn_extract_reg_num(u32 insn, int offset) aarch32_insn_extract_reg_num() argument
1295 aarch32_insn_mcr_extract_opc2(u32 insn) aarch32_insn_mcr_extract_opc2() argument
1301 aarch32_insn_mcr_extract_crm(u32 insn) aarch32_insn_mcr_extract_crm() argument
1315 aarch64_encode_immediate(u64 imm, enum aarch64_insn_variant variant, u32 insn) aarch64_encode_immediate() argument
1417 u32 insn; aarch64_insn_gen_logical_immediate() local
1448 u32 insn; aarch64_insn_gen_extr() local
1477 u32 insn; aarch64_insn_gen_dmb() local
[all...]
/kernel/linux/linux-5.10/arch/arm64/kernel/
H A Dinsn.c22 #include <asm/insn.h>
49 enum aarch64_insn_encoding_class __kprobes aarch64_get_insn_class(u32 insn) in aarch64_get_insn_class() argument
51 return aarch64_insn_encoding_class[(insn >> 25) & 0xf]; in aarch64_get_insn_class()
54 bool __kprobes aarch64_insn_is_steppable_hint(u32 insn) in aarch64_insn_is_steppable_hint() argument
56 if (!aarch64_insn_is_hint(insn)) in aarch64_insn_is_steppable_hint()
59 switch (insn & 0xFE0) { in aarch64_insn_is_steppable_hint()
78 bool aarch64_insn_is_branch_imm(u32 insn) in aarch64_insn_is_branch_imm() argument
80 return (aarch64_insn_is_b(insn) || aarch64_insn_is_bl(insn) || in aarch64_insn_is_branch_imm()
81 aarch64_insn_is_tbz(insn) || aarch64_insn_is_tbn in aarch64_insn_is_branch_imm()
139 __aarch64_insn_write(void *addr, __le32 insn) __aarch64_insn_write() argument
156 aarch64_insn_write(void *addr, u32 insn) aarch64_insn_write() argument
161 aarch64_insn_uses_literal(u32 insn) aarch64_insn_uses_literal() argument
171 aarch64_insn_is_branch(u32 insn) aarch64_insn_is_branch() argument
190 aarch64_insn_patch_text_nosync(void *addr, u32 insn) aarch64_insn_patch_text_nosync() argument
316 aarch64_insn_decode_immediate(enum aarch64_insn_imm_type type, u32 insn) aarch64_insn_decode_immediate() argument
340 aarch64_insn_encode_immediate(enum aarch64_insn_imm_type type, u32 insn, u64 imm) aarch64_insn_encode_immediate() argument
374 aarch64_insn_decode_register(enum aarch64_insn_register_type type, u32 insn) aarch64_insn_decode_register() argument
403 aarch64_insn_encode_register(enum aarch64_insn_register_type type, u32 insn, enum aarch64_insn_register reg) aarch64_insn_encode_register() argument
445 aarch64_insn_encode_ldst_size(enum aarch64_insn_size_type type, u32 insn) aarch64_insn_encode_ldst_size() argument
497 u32 insn; aarch64_insn_gen_branch_imm() local
530 u32 insn; aarch64_insn_gen_comp_branch_imm() local
569 u32 insn; aarch64_insn_gen_cond_branch_imm() local
599 u32 insn; aarch64_insn_gen_branch_reg() local
625 u32 insn; aarch64_insn_gen_load_store_reg() local
657 u32 insn; aarch64_insn_gen_load_store_pair() local
720 u32 insn; aarch64_insn_gen_load_store_ex() local
754 u32 insn = aarch64_insn_get_ldadd_value(); aarch64_insn_gen_ldadd() local
789 aarch64_insn_encode_prfm_imm(enum aarch64_insn_prfm_type type, enum aarch64_insn_prfm_target target, enum aarch64_insn_prfm_policy policy, u32 insn) aarch64_insn_encode_prfm_imm() argument
847 u32 insn = aarch64_insn_get_prfm_value(); aarch64_insn_gen_prefetch() local
864 u32 insn; aarch64_insn_gen_add_sub_imm() local
926 u32 insn; aarch64_insn_gen_bitfield() local
980 u32 insn; aarch64_insn_gen_movewide() local
1037 u32 insn; aarch64_insn_gen_add_sub_shifted_reg() local
1093 u32 insn; aarch64_insn_gen_data1() local
1137 u32 insn; aarch64_insn_gen_data2() local
1188 u32 insn; aarch64_insn_gen_data3() local
1231 u32 insn; aarch64_insn_gen_logical_shifted_reg() local
1311 u32 insn; aarch64_insn_gen_adr() local
1341 aarch64_get_branch_offset(u32 insn) aarch64_get_branch_offset() argument
1369 aarch64_set_branch_offset(u32 insn, s32 offset) aarch64_set_branch_offset() argument
1388 aarch64_insn_adrp_get_offset(u32 insn) aarch64_insn_adrp_get_offset() argument
1394 aarch64_insn_adrp_set_offset(u32 insn, s32 offset) aarch64_insn_adrp_set_offset() argument
1404 aarch64_insn_extract_system_reg(u32 insn) aarch64_insn_extract_system_reg() argument
1409 aarch32_insn_is_wide(u32 insn) aarch32_insn_is_wide() argument
1417 aarch32_insn_extract_reg_num(u32 insn, int offset) aarch32_insn_extract_reg_num() argument
1424 aarch32_insn_mcr_extract_opc2(u32 insn) aarch32_insn_mcr_extract_opc2() argument
1430 aarch32_insn_mcr_extract_crm(u32 insn) aarch32_insn_mcr_extract_crm() argument
1542 aarch64_encode_immediate(u64 imm, enum aarch64_insn_variant variant, u32 insn) aarch64_encode_immediate() argument
1644 u32 insn; aarch64_insn_gen_logical_immediate() local
1675 u32 insn; aarch64_insn_gen_extr() local
[all...]
/kernel/linux/linux-5.10/arch/loongarch/net/
H A Debpf_jit.h31 union loongarch_instruction *insn = &ctx->image[ctx->idx]; \
32 emit_##func(insn, ##__VA_ARGS__); \
75 static inline void emit_ldbu(union loongarch_instruction *insn, in emit_ldbu() argument
78 insn->reg2i12_format.opcode = ldbu_op; in emit_ldbu()
79 insn->reg2i12_format.simmediate = imm; in emit_ldbu()
80 insn->reg2i12_format.rd = rd; in emit_ldbu()
81 insn->reg2i12_format.rj = rj; in emit_ldbu()
84 static inline void emit_ldhu(union loongarch_instruction *insn, in emit_ldhu() argument
87 insn->reg2i12_format.opcode = ldhu_op; in emit_ldhu()
88 insn in emit_ldhu()
93 emit_ldwu(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, int imm) emit_ldwu() argument
102 emit_ldd(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, int imm) emit_ldd() argument
111 emit_stb(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, int imm) emit_stb() argument
120 emit_sth(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, int imm) emit_sth() argument
129 emit_stw(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, int imm) emit_stw() argument
138 emit_std(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, int imm) emit_std() argument
147 emit_ldxbu(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_ldxbu() argument
156 emit_ldxhu(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_ldxhu() argument
165 emit_ldxwu(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_ldxwu() argument
174 emit_ldxd(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_ldxd() argument
183 emit_stxb(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_stxb() argument
192 emit_stxh(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_stxh() argument
201 emit_stxw(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_stxw() argument
210 emit_stxd(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_stxd() argument
219 emit_amaddw(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rk, enum loongarch_gpr rj) emit_amaddw() argument
228 emit_amaddd(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rk, enum loongarch_gpr rj) emit_amaddd() argument
237 emit_addd(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_addd() argument
246 emit_addiw(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, int imm) emit_addiw() argument
255 emit_addid(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, int imm) emit_addid() argument
264 emit_subd(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_subd() argument
273 emit_muld(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_muld() argument
282 emit_divdu(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_divdu() argument
291 emit_moddu(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_moddu() argument
300 emit_and(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_and() argument
309 emit_andi(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, u32 imm) emit_andi() argument
318 emit_or(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_or() argument
327 emit_ori(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, u32 imm) emit_ori() argument
336 emit_xor(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_xor() argument
345 emit_xori(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, u32 imm) emit_xori() argument
354 emit_lu12iw(union loongarch_instruction *insn, enum loongarch_gpr rd, int imm) emit_lu12iw() argument
362 emit_lu32id(union loongarch_instruction *insn, enum loongarch_gpr rd, int imm) emit_lu32id() argument
370 emit_lu52id(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, int imm) emit_lu52id() argument
379 emit_sllw(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_sllw() argument
388 emit_slliw(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, u32 imm) emit_slliw() argument
397 emit_slld(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_slld() argument
406 emit_sllid(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, u32 imm) emit_sllid() argument
415 emit_srlw(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_srlw() argument
424 emit_srliw(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, u32 imm) emit_srliw() argument
433 emit_srld(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_srld() argument
442 emit_srlid(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, u32 imm) emit_srlid() argument
451 emit_sraw(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_sraw() argument
460 emit_sraiw(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, u32 imm) emit_sraiw() argument
469 emit_srad(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, enum loongarch_gpr rk) emit_srad() argument
478 emit_sraid(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, u32 imm) emit_sraid() argument
487 emit_beq(union loongarch_instruction *insn, enum loongarch_gpr rj, enum loongarch_gpr rd, int offset) emit_beq() argument
496 emit_bne(union loongarch_instruction *insn, enum loongarch_gpr rj, enum loongarch_gpr rd, int offset) emit_bne() argument
505 emit_blt(union loongarch_instruction *insn, enum loongarch_gpr rj, enum loongarch_gpr rd, int offset) emit_blt() argument
514 emit_bge(union loongarch_instruction *insn, enum loongarch_gpr rj, enum loongarch_gpr rd, int offset) emit_bge() argument
523 emit_bltu(union loongarch_instruction *insn, enum loongarch_gpr rj, enum loongarch_gpr rd, int offset) emit_bltu() argument
532 emit_bgeu(union loongarch_instruction *insn, enum loongarch_gpr rj, enum loongarch_gpr rd, int offset) emit_bgeu() argument
541 emit_b(union loongarch_instruction *insn, int offset) emit_b() argument
554 emit_jirl(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj, int offset) emit_jirl() argument
563 emit_pcaddu18i(union loongarch_instruction *insn, enum loongarch_gpr rd, int imm) emit_pcaddu18i() argument
571 emit_revb2h(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj) emit_revb2h() argument
579 emit_revb2w(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj) emit_revb2w() argument
587 emit_revbd(union loongarch_instruction *insn, enum loongarch_gpr rd, enum loongarch_gpr rj) emit_revbd() argument
[all...]
/kernel/linux/linux-5.10/arch/powerpc/xmon/
H A Dspu.h80 #define SIGNED_EXTRACT(insn,size,pos) (((int)((insn) << (32-size-pos))) >> (32-size))
81 #define UNSIGNED_EXTRACT(insn,size,pos) (((insn) >> pos) & ((1 << size)-1))
83 #define DECODE_INSN_RT(insn) (insn & 0x7f)
84 #define DECODE_INSN_RA(insn) ((insn >> 7) & 0x7f)
85 #define DECODE_INSN_RB(insn) ((insn >> 1
[all...]
/kernel/linux/linux-6.6/arch/powerpc/xmon/
H A Dspu.h80 #define SIGNED_EXTRACT(insn,size,pos) (((int)((insn) << (32-size-pos))) >> (32-size))
81 #define UNSIGNED_EXTRACT(insn,size,pos) (((insn) >> pos) & ((1 << size)-1))
83 #define DECODE_INSN_RT(insn) (insn & 0x7f)
84 #define DECODE_INSN_RA(insn) ((insn >> 7) & 0x7f)
85 #define DECODE_INSN_RB(insn) ((insn >> 1
[all...]
/kernel/linux/linux-6.6/tools/objtool/
H A Dcheck.c26 struct instruction *insn; member
40 struct instruction *insn; in find_insn() local
42 hash_for_each_possible(file->insn_hash, insn, hash, sec_offset_hash(sec, offset)) { in find_insn()
43 if (insn->sec == sec && insn->offset == offset) in find_insn()
44 return insn; in find_insn()
51 struct instruction *insn) in next_insn_same_sec()
53 if (insn->idx == INSN_CHUNK_MAX) in next_insn_same_sec()
54 return find_insn(file, insn->sec, insn in next_insn_same_sec()
50 next_insn_same_sec(struct objtool_file *file, struct instruction *insn) next_insn_same_sec() argument
63 next_insn_same_func(struct objtool_file *file, struct instruction *insn) next_insn_same_func() argument
83 prev_insn_same_sec(struct objtool_file *file, struct instruction *insn) prev_insn_same_sec() argument
95 prev_insn_same_sym(struct objtool_file *file, struct instruction *insn) prev_insn_same_sym() argument
134 insn_call_dest(struct instruction *insn) insn_call_dest() argument
143 insn_jump_table(struct instruction *insn) insn_jump_table() argument
152 is_jump_table_jump(struct instruction *insn) is_jump_table_jump() argument
164 is_sibling_call(struct instruction *insn) is_sibling_call() argument
192 struct instruction *insn; __dead_end_function() local
373 struct instruction *insn; decode_instructions() local
569 struct instruction *insn = NULL; find_last_insn() local
586 struct instruction *insn; add_dead_ends() local
670 struct instruction *insn; create_static_call_sections() local
757 struct instruction *insn; create_retpoline_sites_sections() local
795 struct instruction *insn; create_return_sites_sections() local
833 struct instruction *insn; create_ibt_endbr_seal_sections() local
936 struct instruction *insn; create_mcount_loc_sections() local
981 struct instruction *insn; create_direct_call_sections() local
1023 struct instruction *insn; add_ignores() local
1267 struct instruction *insn; add_ignore_alternatives() local
1318 insn_reloc(struct objtool_file *file, struct instruction *insn) insn_reloc() argument
1338 remove_insn_ops(struct instruction *insn) remove_insn_ops() argument
1349 annotate_call_site(struct objtool_file *file, struct instruction *insn, bool sibling) annotate_call_site() argument
1431 add_call_dest(struct objtool_file *file, struct instruction *insn, struct symbol *dest, bool sibling) add_call_dest() argument
1450 add_retpoline_call(struct objtool_file *file, struct instruction *insn) add_retpoline_call() argument
1484 add_return_call(struct objtool_file *file, struct instruction *insn, bool add) add_return_call() argument
1497 is_first_func_insn(struct objtool_file *file, struct instruction *insn, struct symbol *sym) is_first_func_insn() argument
1546 struct instruction *insn, *jump_dest; add_jump_destinations() local
1672 struct instruction *insn; add_call_destinations() local
1731 struct instruction *last_new_insn = NULL, *insn, *nop = NULL; handle_group_alt() local
2002 add_jump_table(struct objtool_file *file, struct instruction *insn, struct reloc *next_table) add_jump_table() argument
2063 find_jump_table(struct objtool_file *file, struct symbol *func, struct instruction *insn) find_jump_table() argument
2109 struct instruction *insn, *last = NULL; mark_func_jump_tables() local
2142 struct instruction *insn, *insn_t1 = NULL, *insn_t2; add_func_jump_tables() local
2209 struct instruction *insn; read_unwind_hints() local
2297 struct instruction *insn; read_noendbr_hints() local
2322 struct instruction *insn; read_retpoline_hints() local
2358 struct instruction *insn; read_instr_hints() local
2405 struct instruction *insn; read_validate_unret_hints() local
2432 struct instruction *insn; read_intra_function_calls() local
2653 is_special_call(struct instruction *insn) is_special_call() argument
2668 has_modified_stack_frame(struct instruction *insn, struct insn_state *state) has_modified_stack_frame() argument
2713 update_cfi_state_regs(struct instruction *insn, struct cfi_state *cfi, struct stack_op *op) update_cfi_state_regs() argument
2806 update_cfi_state(struct instruction *insn, struct instruction *next_insn, struct cfi_state *cfi, struct stack_op *op) update_cfi_state() argument
3225 propagate_alt_cfi(struct objtool_file *file, struct instruction *insn) propagate_alt_cfi() argument
3257 handle_insn_ops(struct instruction *insn, struct instruction *next_insn, struct insn_state *state) handle_insn_ops() argument
3295 insn_cfi_match(struct instruction *insn, struct cfi_state *cfi2) insn_cfi_match() argument
3350 call_dest_name(struct instruction *insn) call_dest_name() argument
3369 pv_call_dest(struct objtool_file *file, struct instruction *insn) pv_call_dest() argument
3396 noinstr_call_dest(struct objtool_file *file, struct instruction *insn, struct symbol *func) noinstr_call_dest() argument
3434 validate_call(struct objtool_file *file, struct instruction *insn, struct insn_state *state) validate_call() argument
3457 validate_sibling_call(struct objtool_file *file, struct instruction *insn, struct insn_state *state) validate_sibling_call() argument
3469 validate_return(struct symbol *func, struct instruction *insn, struct insn_state *state) validate_return() argument
3504 next_insn_to_validate(struct objtool_file *file, struct instruction *insn) next_insn_to_validate() argument
3543 validate_branch(struct objtool_file *file, struct symbol *func, struct instruction *insn, struct insn_state state) validate_branch() argument
3790 validate_unwind_hint(struct objtool_file *file, struct instruction *insn, struct insn_state *state) validate_unwind_hint() argument
3806 struct instruction *insn; validate_unwind_hints() local
3832 validate_unret(struct objtool_file *file, struct instruction *insn) validate_unret() argument
3942 struct instruction *insn; validate_unrets() local
3962 struct instruction *insn; validate_retpoline() local
3993 is_kasan_insn(struct instruction *insn) is_kasan_insn() argument
3999 is_ubsan_insn(struct instruction *insn) is_ubsan_insn() argument
4006 ignore_unreachable_insn(struct objtool_file *file, struct instruction *insn) ignore_unreachable_insn() argument
4118 struct instruction *insn, *prev; add_prefix_symbol() local
4187 struct instruction *insn; validate_symbol() local
4270 mark_endbr_used(struct instruction *insn) mark_endbr_used() argument
4276 noendbr_range(struct objtool_file *file, struct instruction *insn) noendbr_range() argument
4294 validate_ibt_insn(struct objtool_file *file, struct instruction *insn) validate_ibt_insn() argument
4423 struct instruction *insn; validate_ibt() local
4471 struct instruction *insn, *next_insn; validate_sls() local
4502 ignore_noreturn_call(struct instruction *insn) ignore_noreturn_call() argument
4533 struct instruction *insn, *prev_insn; validate_reachable_instructions() local
4649 struct instruction *insn; free_insns() local
[all...]
/kernel/linux/linux-5.10/arch/s390/tools/
H A Dgen_opcode_table.c22 struct insn { struct
44 struct insn *insn; member
154 struct insn insn; in read_instructions() local
158 rc = scanf("%s %s %s", insn.opcode, insn.name, insn.format); in read_instructions()
163 insn.type = insn_format_to_type(insn in read_instructions()
206 struct insn *insn; print_long_insn() local
231 print_opcode(struct insn *insn, int nr) print_opcode() argument
246 add_to_group(struct gen_opcode *desc, struct insn *insn, int offset) add_to_group() argument
274 struct insn *insn; print_opcode_table() local
[all...]
/kernel/linux/linux-6.6/arch/s390/tools/
H A Dgen_opcode_table.c22 struct insn { struct
44 struct insn *insn; member
154 struct insn insn; in read_instructions() local
158 rc = scanf("%s %s %s", insn.opcode, insn.name, insn.format); in read_instructions()
163 insn.type = insn_format_to_type(insn in read_instructions()
206 struct insn *insn; print_long_insn() local
231 print_opcode(struct insn *insn, int nr) print_opcode() argument
246 add_to_group(struct gen_opcode *desc, struct insn *insn, int offset) add_to_group() argument
274 struct insn *insn; print_opcode_table() local
[all...]
/kernel/linux/linux-5.10/arch/mips/kernel/
H A Dbranch.c62 union mips_instruction insn = (union mips_instruction)dec_insn.insn; in __mm_isBranchInstr() local
68 switch (insn.mm_i_format.opcode) { in __mm_isBranchInstr()
70 if ((insn.mm_i_format.simmediate & MM_POOL32A_MINOR_MASK) == in __mm_isBranchInstr()
72 switch (insn.mm_i_format.simmediate >> in __mm_isBranchInstr()
78 if (insn.mm_i_format.rt != 0) /* Not mm_jr */ in __mm_isBranchInstr()
79 regs->regs[insn.mm_i_format.rt] = in __mm_isBranchInstr()
83 *contpc = regs->regs[insn.mm_i_format.rs]; in __mm_isBranchInstr()
89 switch (insn.mm_i_format.rt) { in __mm_isBranchInstr()
97 if ((long)regs->regs[insn in __mm_isBranchInstr()
422 __compute_return_epc_for_insn(struct pt_regs *regs, union mips_instruction insn) __compute_return_epc_for_insn() argument
853 union mips_instruction insn; __compute_return_epc() local
878 __insn_is_compact_branch(union mips_instruction insn) __insn_is_compact_branch() argument
[all...]
/kernel/linux/linux-6.6/arch/mips/kernel/
H A Dbranch.c62 union mips_instruction insn = (union mips_instruction)dec_insn.insn; in __mm_isBranchInstr() local
68 switch (insn.mm_i_format.opcode) { in __mm_isBranchInstr()
70 if ((insn.mm_i_format.simmediate & MM_POOL32A_MINOR_MASK) == in __mm_isBranchInstr()
72 switch (insn.mm_i_format.simmediate >> in __mm_isBranchInstr()
78 if (insn.mm_i_format.rt != 0) /* Not mm_jr */ in __mm_isBranchInstr()
79 regs->regs[insn.mm_i_format.rt] = in __mm_isBranchInstr()
83 *contpc = regs->regs[insn.mm_i_format.rs]; in __mm_isBranchInstr()
89 switch (insn.mm_i_format.rt) { in __mm_isBranchInstr()
97 if ((long)regs->regs[insn in __mm_isBranchInstr()
422 __compute_return_epc_for_insn(struct pt_regs *regs, union mips_instruction insn) __compute_return_epc_for_insn() argument
853 union mips_instruction insn; __compute_return_epc() local
878 __insn_is_compact_branch(union mips_instruction insn) __insn_is_compact_branch() argument
[all...]
/kernel/linux/linux-5.10/arch/arm/probes/kprobes/
H A Dactions-thumb.c24 t32_simulate_table_branch(probes_opcode_t insn, in t32_simulate_table_branch() argument
28 int rn = (insn >> 16) & 0xf; in t32_simulate_table_branch()
29 int rm = insn & 0xf; in t32_simulate_table_branch()
35 if (insn & 0x10) /* TBH */ in t32_simulate_table_branch()
44 t32_simulate_mrs(probes_opcode_t insn, in t32_simulate_mrs() argument
47 int rd = (insn >> 8) & 0xf; in t32_simulate_mrs()
53 t32_simulate_cond_branch(probes_opcode_t insn, in t32_simulate_cond_branch() argument
58 long offset = insn & 0x7ff; /* imm11 */ in t32_simulate_cond_branch()
59 offset += (insn & 0x003f0000) >> 5; /* imm6 */ in t32_simulate_cond_branch()
60 offset += (insn in t32_simulate_cond_branch()
68 t32_decode_cond_branch(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t32_decode_cond_branch() argument
78 t32_simulate_branch(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_simulate_branch() argument
106 t32_simulate_ldr_literal(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_simulate_ldr_literal() argument
144 t32_decode_ldmstm(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t32_decode_ldmstm() argument
158 t32_emulate_ldrdstrd(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_ldrdstrd() argument
185 t32_emulate_ldrstr(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_ldrstr() argument
211 t32_emulate_rd8rn16rm0_rwflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_rd8rn16rm0_rwflags() argument
238 t32_emulate_rd8pc16_noflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_rd8pc16_noflags() argument
258 t32_emulate_rd8rn16_noflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_rd8rn16_noflags() argument
278 t32_emulate_rdlo12rdhi8rn16rm0_noflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_rdlo12rdhi8rn16rm0_noflags() argument
306 t16_simulate_bxblx(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_bxblx() argument
320 t16_simulate_ldr_literal(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_ldr_literal() argument
330 t16_simulate_ldrstr_sp_relative(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_ldrstr_sp_relative() argument
343 t16_simulate_reladr(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_reladr() argument
354 t16_simulate_add_sp_imm(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_add_sp_imm() argument
365 t16_simulate_cbz(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_cbz() argument
379 t16_simulate_it(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_it() argument
396 t16_singlestep_it(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_singlestep_it() argument
404 t16_decode_it(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t16_decode_it() argument
412 t16_simulate_cond_branch(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_cond_branch() argument
422 t16_decode_cond_branch(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t16_decode_cond_branch() argument
432 t16_simulate_branch(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_branch() argument
442 t16_emulate_loregs(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_loregs() argument
465 t16_emulate_loregs_rwflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_loregs_rwflags() argument
472 t16_emulate_loregs_noitrwflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_loregs_noitrwflags() argument
481 t16_emulate_hiregs(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_hiregs() argument
512 t16_decode_hiregs(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t16_decode_hiregs() argument
523 t16_emulate_push(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_push() argument
540 t16_decode_push(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t16_decode_push() argument
557 t16_emulate_pop_nopc(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_pop_nopc() argument
574 t16_emulate_pop_pc(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_pop_pc() argument
595 t16_decode_pop(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t16_decode_pop() argument
[all...]
/kernel/linux/linux-6.6/arch/arm/probes/kprobes/
H A Dactions-thumb.c24 t32_simulate_table_branch(probes_opcode_t insn, in t32_simulate_table_branch() argument
28 int rn = (insn >> 16) & 0xf; in t32_simulate_table_branch()
29 int rm = insn & 0xf; in t32_simulate_table_branch()
35 if (insn & 0x10) /* TBH */ in t32_simulate_table_branch()
44 t32_simulate_mrs(probes_opcode_t insn, in t32_simulate_mrs() argument
47 int rd = (insn >> 8) & 0xf; in t32_simulate_mrs()
53 t32_simulate_cond_branch(probes_opcode_t insn, in t32_simulate_cond_branch() argument
58 long offset = insn & 0x7ff; /* imm11 */ in t32_simulate_cond_branch()
59 offset += (insn & 0x003f0000) >> 5; /* imm6 */ in t32_simulate_cond_branch()
60 offset += (insn in t32_simulate_cond_branch()
68 t32_decode_cond_branch(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t32_decode_cond_branch() argument
78 t32_simulate_branch(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_simulate_branch() argument
106 t32_simulate_ldr_literal(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_simulate_ldr_literal() argument
144 t32_decode_ldmstm(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t32_decode_ldmstm() argument
158 t32_emulate_ldrdstrd(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_ldrdstrd() argument
185 t32_emulate_ldrstr(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_ldrstr() argument
211 t32_emulate_rd8rn16rm0_rwflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_rd8rn16rm0_rwflags() argument
238 t32_emulate_rd8pc16_noflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_rd8pc16_noflags() argument
258 t32_emulate_rd8rn16_noflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_rd8rn16_noflags() argument
278 t32_emulate_rdlo12rdhi8rn16rm0_noflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t32_emulate_rdlo12rdhi8rn16rm0_noflags() argument
306 t16_simulate_bxblx(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_bxblx() argument
320 t16_simulate_ldr_literal(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_ldr_literal() argument
330 t16_simulate_ldrstr_sp_relative(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_ldrstr_sp_relative() argument
343 t16_simulate_reladr(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_reladr() argument
354 t16_simulate_add_sp_imm(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_add_sp_imm() argument
365 t16_simulate_cbz(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_cbz() argument
379 t16_simulate_it(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_it() argument
396 t16_singlestep_it(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_singlestep_it() argument
404 t16_decode_it(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t16_decode_it() argument
412 t16_simulate_cond_branch(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_cond_branch() argument
422 t16_decode_cond_branch(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t16_decode_cond_branch() argument
432 t16_simulate_branch(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_simulate_branch() argument
442 t16_emulate_loregs(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_loregs() argument
467 t16_emulate_loregs_rwflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_loregs_rwflags() argument
474 t16_emulate_loregs_noitrwflags(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_loregs_noitrwflags() argument
483 t16_emulate_hiregs(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_hiregs() argument
514 t16_decode_hiregs(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t16_decode_hiregs() argument
525 t16_emulate_push(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_push() argument
544 t16_decode_push(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t16_decode_push() argument
561 t16_emulate_pop_nopc(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_pop_nopc() argument
580 t16_emulate_pop_pc(probes_opcode_t insn, struct arch_probes_insn *asi, struct pt_regs *regs) t16_emulate_pop_pc() argument
603 t16_decode_pop(probes_opcode_t insn, struct arch_probes_insn *asi, const struct decode_header *d) t16_decode_pop() argument
[all...]

Completed in 22 milliseconds

12345678910>>...44