Rizin
unix-like reverse engineering framework and cli tools
|
Go to the source code of this file.
Macros | |
#define | BYTES_IN_WORD 4 |
#define | PA_PAGESIZE 0x1000 |
#define | HPPA_R_ARG_RELOC(a) (((a) >> 22) & 0x3ff) |
#define | HPPA_R_CONSTANT(a) ((((bfd_signed_vma)(a)) << (BFD_ARCH_SIZE - 22)) >> (BFD_ARCH_SIZE - 22)) |
#define | HPPA_R_ADDEND(r, c) (((r) << 22) + ((c)&0x3fffff)) |
#define | get_opcode(insn) (((insn) >> 26) & 0x3f) |
Enumerations | |
enum | pa_arch { pa10 = 10 , pa11 = 11 , pa20 = 20 , pa20w = 25 } |
enum | hppa_reloc_field_selector_type { RZ_HPPA_FSEL = 0x0 , RZ_HPPA_LSSEL = 0x1 , RZ_HPPA_RSSEL = 0x2 , RZ_HPPA_LSEL = 0x3 , RZ_HPPA_RSEL = 0x4 , RZ_HPPA_LDSEL = 0x5 , RZ_HPPA_RDSEL = 0x6 , RZ_HPPA_LRSEL = 0x7 , RZ_HPPA_RRSEL = 0x8 , RZ_HPPA_NSEL = 0x9 , RZ_HPPA_NLSEL = 0xa , RZ_HPPA_NLRSEL = 0xb , RZ_HPPA_PSEL = 0xc , RZ_HPPA_LPSEL = 0xd , RZ_HPPA_RPSEL = 0xe , RZ_HPPA_TSEL = 0xf , RZ_HPPA_LTSEL = 0x10 , RZ_HPPA_RTSEL = 0x11 , RZ_HPPA_LTPSEL = 0x12 , RZ_HPPA_RTPSEL = 0x13 } |
enum | hppa_reloc_field_selector_type_alt { e_fsel = RZ_HPPA_FSEL , e_lssel = RZ_HPPA_LSSEL , e_rssel = RZ_HPPA_RSSEL , e_lsel = RZ_HPPA_LSEL , e_rsel = RZ_HPPA_RSEL , e_ldsel = RZ_HPPA_LDSEL , e_rdsel = RZ_HPPA_RDSEL , e_lrsel = RZ_HPPA_LRSEL , e_rrsel = RZ_HPPA_RRSEL , e_nsel = RZ_HPPA_NSEL , e_nlsel = RZ_HPPA_NLSEL , e_nlrsel = RZ_HPPA_NLRSEL , e_psel = RZ_HPPA_PSEL , e_lpsel = RZ_HPPA_LPSEL , e_rpsel = RZ_HPPA_RPSEL , e_tsel = RZ_HPPA_TSEL , e_ltsel = RZ_HPPA_LTSEL , e_rtsel = RZ_HPPA_RTSEL , e_ltpsel = RZ_HPPA_LTPSEL , e_rtpsel = RZ_HPPA_RTPSEL } |
enum | hppa_reloc_expr_type { RZ_HPPA_E_ONE = 0 , RZ_HPPA_E_TWO = 1 , RZ_HPPA_E_PCREL = 2 , RZ_HPPA_E_CON = 3 , RZ_HPPA_E_PLABEL = 7 , RZ_HPPA_E_ABS = 18 } |
enum | hppa_reloc_expr_type_alt { e_one = RZ_HPPA_E_ONE , e_two = RZ_HPPA_E_TWO , e_pcrel = RZ_HPPA_E_PCREL , e_con = RZ_HPPA_E_CON , e_plabel = RZ_HPPA_E_PLABEL , e_abs = RZ_HPPA_E_ABS } |
enum | hppa_opcode_type { OP_SYSOP = 0x00 , OP_MEMMNG = 0x01 , OP_ALU = 0x02 , OP_NDXMEM = 0x03 , OP_SPOP = 0x04 , OP_DIAG = 0x05 , OP_FMPYADD = 0x06 , OP_UNDEF07 = 0x07 , OP_COPRW = 0x09 , OP_COPRDW = 0x0b , OP_COPR = 0x0c , OP_FLOAT = 0x0e , OP_PRDSPEC = 0x0f , OP_UNDEF15 = 0x15 , OP_UNDEF1d = 0x1d , OP_FMPYSUB = 0x26 , OP_FPFUSED = 0x2e , OP_SHEXDP0 = 0x34 , OP_SHEXDP1 = 0x35 , OP_SHEXDP2 = 0x36 , OP_UNDEF37 = 0x37 , OP_SHEXDP3 = 0x3c , OP_SHEXDP4 = 0x3d , OP_MULTMED = 0x3e , OP_UNDEF3f = 0x3f , OP_LDIL = 0x08 , OP_ADDIL = 0x0a , OP_LDO = 0x0d , OP_LDB = 0x10 , OP_LDH = 0x11 , OP_LDW = 0x12 , OP_LDWM = 0x13 , OP_STB = 0x18 , OP_STH = 0x19 , OP_STW = 0x1a , OP_STWM = 0x1b , OP_LDD = 0x14 , OP_STD = 0x1c , OP_FLDW = 0x16 , OP_LDWL = 0x17 , OP_FSTW = 0x1e , OP_STWL = 0x1f , OP_COMBT = 0x20 , OP_COMIBT = 0x21 , OP_COMBF = 0x22 , OP_COMIBF = 0x23 , OP_CMPBDT = 0x27 , OP_ADDBT = 0x28 , OP_ADDIBT = 0x29 , OP_ADDBF = 0x2a , OP_ADDIBF = 0x2b , OP_CMPBDF = 0x2f , OP_BVB = 0x30 , OP_BB = 0x31 , OP_MOVB = 0x32 , OP_MOVIB = 0x33 , OP_CMPIBD = 0x3b , OP_COMICLR = 0x24 , OP_SUBI = 0x25 , OP_ADDIT = 0x2c , OP_ADDI = 0x2d , OP_BE = 0x38 , OP_BLE = 0x39 , OP_BL = 0x3a } |
Functions | |
static int | sign_extend (int, int) ATTRIBUTE_UNUSED |
static int | low_sign_extend (int, int) ATTRIBUTE_UNUSED |
static int | sign_unext (int, int) ATTRIBUTE_UNUSED |
static int | low_sign_unext (int, int) ATTRIBUTE_UNUSED |
static int | re_assemble_3 (int) ATTRIBUTE_UNUSED |
static int | re_assemble_12 (int) ATTRIBUTE_UNUSED |
static int | re_assemble_14 (int) ATTRIBUTE_UNUSED |
static int | re_assemble_16 (int) ATTRIBUTE_UNUSED |
static int | re_assemble_17 (int) ATTRIBUTE_UNUSED |
static int | re_assemble_21 (int) ATTRIBUTE_UNUSED |
static int | re_assemble_22 (int) ATTRIBUTE_UNUSED |
static bfd_signed_vma | hppa_field_adjust (bfd_vma, bfd_signed_vma, enum hppa_reloc_field_selector_type_alt) ATTRIBUTE_UNUSED |
static int | bfd_hppa_insn2fmt (bfd *, int) ATTRIBUTE_UNUSED |
static int | hppa_rebuild_insn (int, int, int) ATTRIBUTE_UNUSED |
#define HPPA_R_CONSTANT | ( | a | ) | ((((bfd_signed_vma)(a)) << (BFD_ARCH_SIZE - 22)) >> (BFD_ARCH_SIZE - 22)) |
enum hppa_opcode_type |
Definition at line 350 of file libhppa.h.
enum hppa_reloc_expr_type |
Definition at line 41 of file libhppa.h.
Definition at line 429 of file libhppa.h.
References bfd::arch_info, get_opcode, bfd_arch_info::mach, OP_ADDBF, OP_ADDBT, OP_ADDI, OP_ADDIBF, OP_ADDIBT, OP_ADDIL, OP_ADDIT, OP_BB, OP_BE, OP_BL, OP_BLE, OP_BVB, OP_CMPBDF, OP_CMPBDT, OP_CMPIBD, OP_COMBF, OP_COMBT, OP_COMIBF, OP_COMIBT, OP_COMICLR, OP_FLDW, OP_FSTW, OP_LDB, OP_LDD, OP_LDH, OP_LDIL, OP_LDO, OP_LDW, OP_LDWL, OP_LDWM, OP_MOVB, OP_MOVIB, OP_STB, OP_STD, OP_STH, OP_STW, OP_STWL, OP_STWM, and OP_SUBI.
|
inlinestatic |
Definition at line 508 of file libhppa.h.
References low_sign_unext(), re_assemble_12(), re_assemble_14(), re_assemble_16(), re_assemble_17(), re_assemble_21(), re_assemble_22(), and value.
Definition at line 187 of file libhppa.h.
Referenced by extract_11(), extract_14(), extract_5_load(), and extract_5_store().
Definition at line 205 of file libhppa.h.
References len, sign_unext(), and x.
Referenced by hppa_rebuild_insn().
Definition at line 227 of file libhppa.h.
Referenced by hppa_rebuild_insn().
Definition at line 242 of file libhppa.h.
Referenced by hppa_rebuild_insn().
Definition at line 247 of file libhppa.h.
Referenced by hppa_rebuild_insn().
Definition at line 252 of file libhppa.h.
Referenced by hppa_rebuild_insn().