1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * Copyright (C) 2015 Josh Poimboeuf <jpoimboe@redhat.com>
10 #include <linux/list.h>
14 #include <asm/orc_types.h>
17 INSN_JUMP_CONDITIONAL,
18 INSN_JUMP_UNCONDITIONAL,
20 INSN_JUMP_DYNAMIC_CONDITIONAL,
44 enum op_dest_type type;
60 enum op_src_type type;
68 struct list_head list;
73 void arch_initial_func_cfi_state(struct cfi_init_state *state);
75 int arch_decode_instruction(const struct elf *elf, const struct section *sec,
76 unsigned long offset, unsigned int maxlen,
77 unsigned int *len, enum insn_type *type,
78 unsigned long *immediate,
79 struct list_head *ops_list);
81 bool arch_callee_saved_reg(unsigned char reg);
83 unsigned long arch_jump_destination(struct instruction *insn);
85 unsigned long arch_dest_reloc_offset(int addend);
87 const char *arch_nop_insn(int len);