Rizin
unix-like reverse engineering framework and cli tools
|
Go to the source code of this file.
Classes | |
struct | arg |
Macros | |
#define | MASK_V6 SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V6) |
#define | MASK_V7 SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V7) |
#define | MASK_V8 SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V8) |
#define | MASK_SPARCLET SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_SPARCLET) |
#define | MASK_SPARCLITE SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_SPARCLITE) |
#define | MASK_V9 SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V9) |
#define | MASK_V9A SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V9A) |
#define | MASK_V9B SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V9B) |
#define | v6 |
#define | v6notlet |
#define | v7 |
#define | v8 |
#define | sparclet (MASK_SPARCLET) |
#define | sparclite (MASK_SPARCLITE) |
#define | v9 (MASK_V9 | MASK_V9A | MASK_V9B) |
#define | v9a (MASK_V9A | MASK_V9B) |
#define | v9b (MASK_V9B) |
#define | v6notv9 |
#define | v9notv9a (MASK_V9) |
#define | COND(x) (((x) & 0xf) << 25) |
#define | MCOND(x, i_or_f) ((((i_or_f) & 1) << 18) | (((x) >> 11) & (0xf << 14))) /* v9 */ |
#define | RCOND(x) (((x) & 0x7) << 10) /* v9 */ |
#define | CONDA (COND (0x8)) |
#define | CONDCC (COND (0xd)) |
#define | CONDCS (COND (0x5)) |
#define | CONDE (COND (0x1)) |
#define | CONDG (COND (0xa)) |
#define | CONDGE (COND (0xb)) |
#define | CONDGU (COND (0xc)) |
#define | CONDL (COND (0x3)) |
#define | CONDLE (COND (0x2)) |
#define | CONDLEU (COND (0x4)) |
#define | CONDN (COND (0x0)) |
#define | CONDNE (COND (0x9)) |
#define | CONDNEG (COND (0x6)) |
#define | CONDPOS (COND (0xe)) |
#define | CONDVC (COND (0xf)) |
#define | CONDVS (COND (0x7)) |
#define | CONDNZ CONDNE |
#define | CONDZ CONDE |
#define | CONDGEU CONDCC |
#define | CONDLU CONDCS |
#define | FCONDA (COND (0x8)) |
#define | FCONDE (COND (0x9)) |
#define | FCONDG (COND (0x6)) |
#define | FCONDGE (COND (0xb)) |
#define | FCONDL (COND (0x4)) |
#define | FCONDLE (COND (0xd)) |
#define | FCONDLG (COND (0x2)) |
#define | FCONDN (COND (0x0)) |
#define | FCONDNE (COND (0x1)) |
#define | FCONDO (COND (0xf)) |
#define | FCONDU (COND (0x7)) |
#define | FCONDUE (COND (0xa)) |
#define | FCONDUG (COND (0x5)) |
#define | FCONDUGE (COND (0xc)) |
#define | FCONDUL (COND (0x3)) |
#define | FCONDULE (COND (0xe)) |
#define | FCONDNZ FCONDNE |
#define | FCONDZ FCONDE |
#define | ICC (0) /* v9 */ |
#define | XCC (1 << 12) /* v9 */ |
#define | FCC(x) (((x) & 0x3) << 11) /* v9 */ |
#define | FBFCC(x) (((x) & 0x3) << 20) /* v9 */ |
#define | COMMUTEOP(opcode, op3, arch_mask) |
#define | br(opcode, mask, lose, flags) |
#define | brx(opcode, mask, lose, flags) |
#define | tr(opcode, mask, lose, flags) |
#define | cond(bop, top, mask, flags) |
#define | brr(opcode, mask, lose, flags) |
#define | condr(bop, mask, flags) |
#define | movr(opcode, mask, flags) |
#define | fmrrs(opcode, mask, lose, flags) |
#define | fmrrd(opcode, mask, lose, flags) |
#define | fmrrq(opcode, mask, lose, flags) |
#define | fmovrs(mop, mask, flags) |
#define | fmovrd(mop, mask, flags) |
#define | fmovrq(mop, mask, flags) |
#define | movicc(opcode, cond, flags) |
#define | movfcc(opcode, fcond, flags) |
#define | movcc(opcode, cond, fcond, flags) |
#define | FM_SF 1 /* v9 - values for fpsize */ |
#define | FM_DF 2 /* v9 */ |
#define | FM_QF 3 /* v9 */ |
#define | fmoviccx(opcode, fpsize, args, cond, flags) |
#define | fmovfccx(opcode, fpsize, args, fcond, flags) |
#define | fmovccx(opcode, fpsize, args, cond, fcond, flags) |
#define | fmovicc(suffix, cond, flags) |
#define | fmovfcc(suffix, fcond, flags) |
#define | fmovcc(suffix, cond, fcond, flags) |
#define | CBR(opcode, mask, lose, flags, arch) |
#define | FBR(opcode, mask, lose, flags) |
#define | FBRX(opcode, mask, lose, flags) |
#define | CONDFC(fop, cop, mask, flags) |
#define | CONDFCL(fop, cop, mask, flags) |
#define | CONDF(fop, mask, flags) |
#define | CMPFCC(x) (((x)&0x3)<<25) |
#define | EFPOP1_2(name, op, args) { name, F3F(2, 0x36, op), F3F(~2, ~0x36, ~(op))|RS1_G0, args, 0, sparclite } |
#define | EFPOP1_3(name, op, args) { name, F3F(2, 0x36, op), F3F(~2, ~0x36, ~(op)), args, 0, sparclite } |
#define | EFPOP2_2(name, op, args) { name, F3F(2, 0x37, op), F3F(~2, ~0x37, ~(op))|RD_G0, args, 0, sparclite } |
#define | BIT5 (1<<5) |
#define | SLCBCC2(opcode, mask, lose) |
#define | SLCBCC(opcode, mask) SLCBCC2(opcode, F2(0, 7)|COND(mask), F2(~0, ~7)|COND(~(mask))) |
#define | IMPDEP(name, code) |
Functions | |
enum sparc_opcode_arch_val | sparc_opcode_lookup_arch (const char *name) |
static int | lookup_name (const arg *table, const char *name) |
static const char * | lookup_value (const arg *table, int value) |
int | sparc_encode_asi (const char *name) |
const char * | sparc_decode_asi (int value) |
int | sparc_encode_membar (const char *name) |
const char * | sparc_decode_membar (int value) |
int | sparc_encode_prefetch (const char *name) |
const char * | sparc_decode_prefetch (int value) |
int | sparc_encode_sparclet_cpreg (const char *name) |
const char * | sparc_decode_sparclet_cpreg (int value) |
Variables | |
const struct sparc_opcode_arch | sparc_opcode_archs [] |
const struct sparc_opcode | sparc_opcodes [] |
const int | sparc_num_opcodes = ((sizeof sparc_opcodes)/(sizeof sparc_opcodes[0])) |
static arg | asi_table [] |
static arg | membar_table [] |
static arg | prefetch_table [] |
static arg | sparclet_cpreg_table [] |
#define BIT5 (1<<5) |
#define COMMUTEOP | ( | opcode, | |
op3, | |||
arch_mask | |||
) |
Definition at line 172 of file sparc-opc.c.
Definition at line 108 of file sparc-opc.c.
#define CONDA (COND (0x8)) |
Definition at line 116 of file sparc-opc.c.
#define CONDCC (COND (0xd)) |
Definition at line 117 of file sparc-opc.c.
#define CONDCS (COND (0x5)) |
Definition at line 118 of file sparc-opc.c.
#define CONDE (COND (0x1)) |
Definition at line 119 of file sparc-opc.c.
#define CONDG (COND (0xa)) |
Definition at line 120 of file sparc-opc.c.
#define CONDGE (COND (0xb)) |
Definition at line 121 of file sparc-opc.c.
#define CONDGEU CONDCC |
Definition at line 135 of file sparc-opc.c.
#define CONDGU (COND (0xc)) |
Definition at line 122 of file sparc-opc.c.
#define CONDL (COND (0x3)) |
Definition at line 123 of file sparc-opc.c.
#define CONDLE (COND (0x2)) |
Definition at line 124 of file sparc-opc.c.
#define CONDLEU (COND (0x4)) |
Definition at line 125 of file sparc-opc.c.
#define CONDLU CONDCS |
Definition at line 136 of file sparc-opc.c.
#define CONDN (COND (0x0)) |
Definition at line 126 of file sparc-opc.c.
#define CONDNE (COND (0x9)) |
Definition at line 127 of file sparc-opc.c.
#define CONDNEG (COND (0x6)) |
Definition at line 128 of file sparc-opc.c.
#define CONDNZ CONDNE |
Definition at line 133 of file sparc-opc.c.
#define CONDPOS (COND (0xe)) |
Definition at line 129 of file sparc-opc.c.
#define CONDVC (COND (0xf)) |
Definition at line 130 of file sparc-opc.c.
#define CONDVS (COND (0x7)) |
Definition at line 131 of file sparc-opc.c.
#define CONDZ CONDE |
Definition at line 134 of file sparc-opc.c.
#define EFPOP1_2 | ( | name, | |
op, | |||
args | |||
) | { name, F3F(2, 0x36, op), F3F(~2, ~0x36, ~(op))|RS1_G0, args, 0, sparclite } |
#define EFPOP1_3 | ( | name, | |
op, | |||
args | |||
) | { name, F3F(2, 0x36, op), F3F(~2, ~0x36, ~(op)), args, 0, sparclite } |
#define EFPOP2_2 | ( | name, | |
op, | |||
args | |||
) | { name, F3F(2, 0x37, op), F3F(~2, ~0x37, ~(op))|RD_G0, args, 0, sparclite } |
Definition at line 161 of file sparc-opc.c.
Definition at line 160 of file sparc-opc.c.
#define FCONDA (COND (0x8)) |
Definition at line 138 of file sparc-opc.c.
#define FCONDE (COND (0x9)) |
Definition at line 139 of file sparc-opc.c.
#define FCONDG (COND (0x6)) |
Definition at line 140 of file sparc-opc.c.
#define FCONDGE (COND (0xb)) |
Definition at line 141 of file sparc-opc.c.
#define FCONDL (COND (0x4)) |
Definition at line 142 of file sparc-opc.c.
#define FCONDLE (COND (0xd)) |
Definition at line 143 of file sparc-opc.c.
#define FCONDLG (COND (0x2)) |
Definition at line 144 of file sparc-opc.c.
#define FCONDN (COND (0x0)) |
Definition at line 145 of file sparc-opc.c.
#define FCONDNE (COND (0x1)) |
Definition at line 146 of file sparc-opc.c.
#define FCONDNZ FCONDNE |
Definition at line 155 of file sparc-opc.c.
#define FCONDO (COND (0xf)) |
Definition at line 147 of file sparc-opc.c.
#define FCONDU (COND (0x7)) |
Definition at line 148 of file sparc-opc.c.
#define FCONDUE (COND (0xa)) |
Definition at line 149 of file sparc-opc.c.
#define FCONDUG (COND (0x5)) |
Definition at line 150 of file sparc-opc.c.
#define FCONDUGE (COND (0xc)) |
Definition at line 151 of file sparc-opc.c.
#define FCONDUL (COND (0x3)) |
Definition at line 152 of file sparc-opc.c.
#define FCONDULE (COND (0xe)) |
Definition at line 153 of file sparc-opc.c.
#define FCONDZ FCONDE |
Definition at line 156 of file sparc-opc.c.
#define FM_DF 2 /* v9 */ |
#define FM_QF 3 /* v9 */ |
#define FM_SF 1 /* v9 - values for fpsize */ |
#define ICC (0) /* v9 */ |
Definition at line 158 of file sparc-opc.c.
#define MASK_SPARCLET SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_SPARCLET) |
Definition at line 37 of file sparc-opc.c.
#define MASK_SPARCLITE SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_SPARCLITE) |
Definition at line 38 of file sparc-opc.c.
#define MASK_V6 SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V6) |
Definition at line 34 of file sparc-opc.c.
#define MASK_V7 SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V7) |
Definition at line 35 of file sparc-opc.c.
#define MASK_V8 SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V8) |
Definition at line 36 of file sparc-opc.c.
#define MASK_V9 SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V9) |
Definition at line 39 of file sparc-opc.c.
#define MASK_V9A SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V9A) |
Definition at line 40 of file sparc-opc.c.
#define MASK_V9B SPARC_OPCODE_ARCH_MASK (SPARC_OPCODE_ARCH_V9B) |
Definition at line 41 of file sparc-opc.c.
Definition at line 111 of file sparc-opc.c.
#define movfcc | ( | opcode, | |
fcond, | |||
flags | |||
) |
Definition at line 114 of file sparc-opc.c.
#define SLCBCC2 | ( | opcode, | |
mask, | |||
lose | |||
) |
#define sparclet (MASK_SPARCLET) |
Definition at line 60 of file sparc-opc.c.
#define sparclite (MASK_SPARCLITE) |
Definition at line 61 of file sparc-opc.c.
#define v6 |
Definition at line 45 of file sparc-opc.c.
#define v6notlet |
Definition at line 48 of file sparc-opc.c.
#define v6notv9 |
Definition at line 66 of file sparc-opc.c.
#define v7 |
Definition at line 50 of file sparc-opc.c.
v2 v22 v2 v22 v2 v15 v2 v14 v2 v22 v2 v22 v2 v15 v2 v14 v2 v22 v2 v22 v2 v22 v2 v22 v2 v8 |
Definition at line 58 of file sparc-opc.c.
Definition at line 62 of file sparc-opc.c.
Definition at line 63 of file sparc-opc.c.
#define v9b (MASK_V9B) |
Definition at line 64 of file sparc-opc.c.
#define v9notv9a (MASK_V9) |
Definition at line 70 of file sparc-opc.c.
#define XCC (1 << 12) /* v9 */ |
Definition at line 159 of file sparc-opc.c.
Definition at line 1844 of file sparc-opc.c.
References p.
Referenced by sparc_encode_asi(), sparc_encode_membar(), sparc_encode_prefetch(), and sparc_encode_sparclet_cpreg().
Definition at line 1860 of file sparc-opc.c.
References NULL, p, and value.
Referenced by sparc_decode_asi(), sparc_decode_membar(), sparc_decode_prefetch(), and sparc_decode_sparclet_cpreg().
Definition at line 2051 of file sparc-opc.c.
References asi_table, lookup_value(), and value.
Referenced by print_insn_sparc().
Definition at line 2081 of file sparc-opc.c.
References lookup_value(), membar_table, and value.
Referenced by print_insn_sparc().
Definition at line 2115 of file sparc-opc.c.
References lookup_value(), prefetch_table, and value.
Referenced by print_insn_sparc().
Definition at line 2145 of file sparc-opc.c.
References lookup_value(), sparclet_cpreg_table, and value.
Referenced by print_insn_sparc().
Definition at line 2073 of file sparc-opc.c.
References lookup_name(), and membar_table.
Definition at line 2107 of file sparc-opc.c.
References lookup_name(), and prefetch_table.
Definition at line 2137 of file sparc-opc.c.
References lookup_name(), and sparclet_cpreg_table.
enum sparc_opcode_arch_val sparc_opcode_lookup_arch | ( | const char * | name | ) |
Definition at line 1 of file sparc-opc.c.
|
static |
Definition at line 1875 of file sparc-opc.c.
Referenced by sparc_decode_asi(), and sparc_encode_asi().
|
static |
Definition at line 2058 of file sparc-opc.c.
Referenced by sparc_decode_membar(), and sparc_encode_membar().
|
static |
Definition at line 2088 of file sparc-opc.c.
Referenced by sparc_decode_prefetch(), and sparc_encode_prefetch().
const int sparc_num_opcodes = ((sizeof sparc_opcodes)/(sizeof sparc_opcodes[0])) |
Definition at line 1831 of file sparc-opc.c.
Referenced by print_insn_sparc().
const struct sparc_opcode_arch sparc_opcode_archs[] |
Definition at line 1 of file sparc-opc.c.
const struct sparc_opcode sparc_opcodes[] |
Definition at line 1 of file sparc-opc.c.
Referenced by print_insn_sparc().
|
static |
Definition at line 2122 of file sparc-opc.c.
Referenced by sparc_decode_sparclet_cpreg(), and sparc_encode_sparclet_cpreg().