1 /* SPDX-License-Identifier: GPL-2.0-or-later */
10 #include <linux/list.h>
15 #include <asm/orc_types.h>
19 INSN_JUMP_CONDITIONAL,
20 INSN_JUMP_UNCONDITIONAL,
22 INSN_JUMP_DYNAMIC_CONDITIONAL,
46 enum op_dest_type type;
62 enum op_src_type type;
70 struct list_head list;
75 void arch_initial_func_cfi_state(struct cfi_init_state *state);
77 int arch_decode_instruction(const struct elf *elf, const struct section *sec,
78 unsigned long offset, unsigned int maxlen,
79 unsigned int *len, enum insn_type *type,
80 unsigned long *immediate,
81 struct list_head *ops_list);
83 bool arch_callee_saved_reg(unsigned char reg);
85 unsigned long arch_jump_destination(struct instruction *insn);
87 unsigned long arch_dest_reloc_offset(int addend);
89 const char *arch_nop_insn(int len);
91 int arch_decode_hint_reg(struct instruction *insn, u8 sp_reg);