Rizin
unix-like reverse engineering framework and cli tools
capstone.h
Go to the documentation of this file.
1 #ifndef CAPSTONE_ENGINE_H
2 #define CAPSTONE_ENGINE_H
3 
4 /* Capstone Disassembly Engine */
5 /* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2016 */
6 
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 
11 #include <stdarg.h>
12 
13 #if defined(CAPSTONE_HAS_OSXKERNEL)
14 #include <libkern/libkern.h>
15 #else
16 #include <stdlib.h>
17 #include <stdio.h>
18 #endif
19 
20 #include "platform.h"
21 
22 #ifdef _MSC_VER
23 #pragma warning(disable:4201)
24 #pragma warning(disable:4100)
25 #define CAPSTONE_API __cdecl
26 #ifdef CAPSTONE_SHARED
27 #define CAPSTONE_EXPORT __declspec(dllexport)
28 #else // defined(CAPSTONE_STATIC)
29 #define CAPSTONE_EXPORT
30 #endif
31 #else
32 #define CAPSTONE_API
33 #if defined(__GNUC__) && !defined(CAPSTONE_STATIC)
34 #define CAPSTONE_EXPORT __attribute__((visibility("default")))
35 #else // defined(CAPSTONE_STATIC)
36 #define CAPSTONE_EXPORT
37 #endif
38 #endif
39 
40 #ifdef __GNUC__
41 #define CAPSTONE_DEPRECATED __attribute__((deprecated))
42 #elif defined(_MSC_VER)
43 #define CAPSTONE_DEPRECATED __declspec(deprecated)
44 #else
45 #pragma message("WARNING: You need to implement CAPSTONE_DEPRECATED for this compiler")
46 #define CAPSTONE_DEPRECATED
47 #endif
48 
49 // Capstone API version
50 #define CS_API_MAJOR 4
51 #define CS_API_MINOR 0
52 
53 // Version for bleeding edge code of the Github's "next" branch.
54 // Use this if you want the absolutely latest development code.
55 // This version number will be bumped up whenever we have a new major change.
56 #define CS_NEXT_VERSION 5
57 
58 // Capstone package version
59 #define CS_VERSION_MAJOR CS_API_MAJOR
60 #define CS_VERSION_MINOR CS_API_MINOR
61 #define CS_VERSION_EXTRA 2
62 
65 #define CS_MAKE_VERSION(major, minor) ((major << 8) + minor)
66 
68 #define CS_MNEMONIC_SIZE 32
69 
70 // Handle using with all API
71 typedef size_t csh;
72 
74 typedef enum cs_arch {
88  CS_ARCH_ALL = 0xFFFF, // All architectures - for cs_support()
90 
91 // Support value to verify diet mode of the engine.
92 // If cs_support(CS_SUPPORT_DIET) return True, the engine was compiled
93 // in diet mode.
94 #define CS_SUPPORT_DIET (CS_ARCH_ALL + 1)
95 
96 // Support value to verify X86 reduce mode of the engine.
97 // If cs_support(CS_SUPPORT_X86_REDUCE) return True, the engine was compiled
98 // in X86 reduce mode.
99 #define CS_SUPPORT_X86_REDUCE (CS_ARCH_ALL + 2)
100 
102 typedef enum cs_mode {
105  CS_MODE_16 = 1 << 1,
106  CS_MODE_32 = 1 << 2,
107  CS_MODE_64 = 1 << 3,
108  CS_MODE_THUMB = 1 << 4,
109  CS_MODE_MCLASS = 1 << 5,
110  CS_MODE_V8 = 1 << 6,
111  CS_MODE_MICRO = 1 << 4,
112  CS_MODE_MIPS3 = 1 << 5,
113  CS_MODE_MIPS32R6 = 1 << 6,
114  CS_MODE_MIPS2 = 1 << 7,
115  CS_MODE_V9 = 1 << 4,
116  CS_MODE_QPX = 1 << 4,
117  CS_MODE_M68K_000 = 1 << 1,
118  CS_MODE_M68K_010 = 1 << 2,
119  CS_MODE_M68K_020 = 1 << 3,
120  CS_MODE_M68K_030 = 1 << 4,
121  CS_MODE_M68K_040 = 1 << 5,
122  CS_MODE_M68K_060 = 1 << 6,
123  CS_MODE_BIG_ENDIAN = 1U << 31,
134  CS_MODE_M680X_CPU12 = 1 << 9,
138 
139 typedef void* (CAPSTONE_API *cs_malloc_t)(size_t size);
140 typedef void* (CAPSTONE_API *cs_calloc_t)(size_t nmemb, size_t size);
141 typedef void* (CAPSTONE_API *cs_realloc_t)(void *ptr, size_t size);
142 typedef void (CAPSTONE_API *cs_free_t)(void *ptr);
143 typedef int (CAPSTONE_API *cs_vsnprintf_t)(char *str, size_t size, const char *format, va_list ap);
144 
145 
148 typedef struct cs_opt_mem {
155 
160 typedef struct cs_opt_mnem {
162  unsigned int id;
164  const char *mnemonic;
166 
168 typedef enum cs_opt_type {
179 
181 typedef enum cs_opt_value {
183  CS_OPT_ON = 3,
190 
192 typedef enum cs_op_type {
199 
202 typedef enum cs_ac_type {
204  CS_AC_READ = 1 << 0,
205  CS_AC_WRITE = 1 << 1,
207 
209 typedef enum cs_group_type {
219 
234 typedef size_t (CAPSTONE_API *cs_skipdata_cb_t)(const uint8_t *code, size_t code_size, size_t offset, void *user_data);
235 
237 typedef struct cs_opt_skipdata {
241  const char *mnemonic;
242 
260  cs_skipdata_cb_t callback; // default value is NULL
261 
263  void *user_data;
264 } cs_opt_skipdata;
265 
266 
267 #include "arm.h"
268 #include "arm64.h"
269 #include "m68k.h"
270 #include "mips.h"
271 #include "ppc.h"
272 #include "sparc.h"
273 #include "systemz.h"
274 #include "x86.h"
275 #include "xcore.h"
276 #include "tms320c64x.h"
277 #include "m680x.h"
278 #include "evm.h"
279 
285 typedef struct cs_detail {
286  uint16_t regs_read[12];
287  uint8_t regs_read_count;
288 
289  uint16_t regs_write[20];
290  uint8_t regs_write_count;
291 
292  uint8_t groups[8];
293  uint8_t groups_count;
294 
296  union {
297  cs_x86 x86;
298  cs_arm64 arm64;
299  cs_arm arm;
300  cs_m68k m68k;
301  cs_mips mips;
302  cs_ppc ppc;
303  cs_sparc sparc;
304  cs_sysz sysz;
305  cs_xcore xcore;
306  cs_tms320c64x tms320c64x;
307  cs_m680x m680x;
308  cs_evm evm;
309  };
310 } cs_detail;
311 
313 typedef struct cs_insn {
320  unsigned int id;
321 
324  uint64_t address;
325 
328  uint16_t size;
329 
332  uint8_t bytes[16];
333 
337 
340  char op_str[160];
341 
349  cs_detail *detail;
350 } cs_insn;
351 
352 
356 #define CS_INSN_OFFSET(insns, post) (insns[post - 1].address - insns[0].address)
357 
358 
361 typedef enum cs_err {
362  CS_ERR_OK = 0,
363  CS_ERR_MEM,
364  CS_ERR_ARCH,
365  CS_ERR_HANDLE,
366  CS_ERR_CSH,
367  CS_ERR_MODE,
368  CS_ERR_OPTION,
369  CS_ERR_DETAIL,
372  CS_ERR_DIET,
377 } cs_err;
378 
397 unsigned int CAPSTONE_API cs_version(int *major, int *minor);
398 
399 
414 bool CAPSTONE_API cs_support(int query);
415 
428 
445 
462 
473 
474 
484 const char * CAPSTONE_API cs_strerror(cs_err code);
485 
521  const uint8_t *code, size_t code_size,
522  uint64_t address,
523  size_t count,
524  cs_insn **insn);
525 
533  const uint8_t *code, size_t code_size,
534  uint64_t address,
535  size_t count,
536  cs_insn **insn);
537 
546 void CAPSTONE_API cs_free(cs_insn *insn, size_t count);
547 
548 
558 cs_insn * CAPSTONE_API cs_malloc(csh handle);
559 
597  const uint8_t **code, size_t *size,
598  uint64_t *address, cs_insn *insn);
599 
614 const char * CAPSTONE_API cs_reg_name(csh handle, unsigned int reg_id);
615 
629 const char * CAPSTONE_API cs_insn_name(csh handle, unsigned int insn_id);
630 
644 const char * CAPSTONE_API cs_group_name(csh handle, unsigned int group_id);
645 
663 bool CAPSTONE_API cs_insn_group(csh handle, const cs_insn *insn, unsigned int group_id);
664 
681 bool CAPSTONE_API cs_reg_read(csh handle, const cs_insn *insn, unsigned int reg_id);
682 
699 bool CAPSTONE_API cs_reg_write(csh handle, const cs_insn *insn, unsigned int reg_id);
700 
715 int CAPSTONE_API cs_op_count(csh handle, const cs_insn *insn, unsigned int op_type);
716 
734 int CAPSTONE_API cs_op_index(csh handle, const cs_insn *insn, unsigned int op_type,
735  unsigned int position);
736 
738 typedef uint16_t cs_regs[64];
739 
758 cs_err CAPSTONE_API cs_regs_access(csh handle, const cs_insn *insn,
759  cs_regs regs_read, uint8_t *regs_read_count,
760  cs_regs regs_write, uint8_t *regs_write_count);
761 
762 #ifdef __cplusplus
763 }
764 #endif
765 
766 #endif
static ut8 bytes[32]
Definition: asm_arc.c:23
static mcore_handle handle
Definition: asm_mcore.c:8
#define CAPSTONE_EXPORT
Definition: capstone.h:36
cs_arch
Architecture type.
Definition: capstone.h:74
@ CS_ARCH_ARM64
ARM-64, also called AArch64.
Definition: capstone.h:76
@ CS_ARCH_SPARC
Sparc architecture.
Definition: capstone.h:80
@ CS_ARCH_XCORE
XCore architecture.
Definition: capstone.h:82
@ CS_ARCH_MAX
Definition: capstone.h:87
@ CS_ARCH_M68K
68K architecture
Definition: capstone.h:83
@ CS_ARCH_X86
X86 architecture (including x86 & x86-64)
Definition: capstone.h:78
@ CS_ARCH_ALL
Definition: capstone.h:88
@ CS_ARCH_M680X
680X architecture
Definition: capstone.h:85
@ CS_ARCH_ARM
ARM architecture (including Thumb, Thumb-2)
Definition: capstone.h:75
@ CS_ARCH_MIPS
Mips architecture.
Definition: capstone.h:77
@ CS_ARCH_SYSZ
SystemZ architecture.
Definition: capstone.h:81
@ CS_ARCH_TMS320C64X
TMS320C64x architecture.
Definition: capstone.h:84
@ CS_ARCH_EVM
Ethereum architecture.
Definition: capstone.h:86
@ CS_ARCH_PPC
PowerPC architecture.
Definition: capstone.h:79
struct cs_opt_mnem cs_opt_mnem
cs_mode
Mode type.
Definition: capstone.h:102
@ CS_MODE_M680X_6811
M680X Motorola/Freescale/NXP 68HC11 mode.
Definition: capstone.h:133
@ CS_MODE_M680X_6805
M680X Motorola/Freescale 6805 mode.
Definition: capstone.h:130
@ CS_MODE_MCLASS
ARM's Cortex-M series.
Definition: capstone.h:109
@ CS_MODE_M680X_HCS08
M680X Freescale/NXP HCS08 mode.
Definition: capstone.h:136
@ CS_MODE_64
64-bit mode (X86, PPC)
Definition: capstone.h:107
@ CS_MODE_M68K_040
M68K 68040 mode.
Definition: capstone.h:121
@ CS_MODE_MIPS64
Mips64 ISA (Mips)
Definition: capstone.h:125
@ CS_MODE_M680X_6309
M680X Hitachi 6309 mode.
Definition: capstone.h:127
@ CS_MODE_M68K_000
M68K 68000 mode.
Definition: capstone.h:117
@ CS_MODE_32
32-bit mode (X86)
Definition: capstone.h:106
@ CS_MODE_ARM
32-bit ARM
Definition: capstone.h:104
@ CS_MODE_V8
ARMv8 A32 encodings for ARM.
Definition: capstone.h:110
@ CS_MODE_MICRO
MicroMips mode (MIPS)
Definition: capstone.h:111
@ CS_MODE_M680X_CPU12
used on M68HC12/HCS12
Definition: capstone.h:134
@ CS_MODE_M68K_060
M68K 68060 mode.
Definition: capstone.h:122
@ CS_MODE_MIPS3
Mips III ISA.
Definition: capstone.h:112
@ CS_MODE_M68K_010
M68K 68010 mode.
Definition: capstone.h:118
@ CS_MODE_M680X_6301
M680X Hitachi 6301,6303 mode.
Definition: capstone.h:126
@ CS_MODE_MIPS32
Mips32 ISA (Mips)
Definition: capstone.h:124
@ CS_MODE_MIPS32R6
Mips32r6 ISA.
Definition: capstone.h:113
@ CS_MODE_M680X_6801
M680X Motorola 6801,6803 mode.
Definition: capstone.h:129
@ CS_MODE_BIG_ENDIAN
big-endian mode
Definition: capstone.h:123
@ CS_MODE_16
16-bit mode (X86)
Definition: capstone.h:105
@ CS_MODE_V9
SparcV9 mode (Sparc)
Definition: capstone.h:115
@ CS_MODE_M68K_020
M68K 68020 mode.
Definition: capstone.h:119
@ CS_MODE_THUMB
ARM's Thumb mode, including Thumb-2.
Definition: capstone.h:108
@ CS_MODE_M680X_6800
M680X Motorola 6800,6802 mode.
Definition: capstone.h:128
@ CS_MODE_M68K_030
M68K 68030 mode.
Definition: capstone.h:120
@ CS_MODE_M680X_6808
M680X Motorola/Freescale/NXP 68HC08 mode.
Definition: capstone.h:131
@ CS_MODE_QPX
Quad Processing eXtensions mode (PPC)
Definition: capstone.h:116
@ CS_MODE_LITTLE_ENDIAN
little-endian mode (default mode)
Definition: capstone.h:103
@ CS_MODE_MIPS2
Mips II ISA.
Definition: capstone.h:114
@ CS_MODE_M680X_6809
M680X Motorola 6809 mode.
Definition: capstone.h:132
cs_opt_type
Runtime option for the disassembled engine.
Definition: capstone.h:168
@ CS_OPT_SKIPDATA_SETUP
Setup user-defined function for SKIPDATA option.
Definition: capstone.h:175
@ CS_OPT_UNSIGNED
print immediate operands in unsigned form
Definition: capstone.h:177
@ CS_OPT_INVALID
No option specified.
Definition: capstone.h:169
@ CS_OPT_MEM
User-defined dynamic memory related functions.
Definition: capstone.h:173
@ CS_OPT_MODE
Change engine's mode at run-time.
Definition: capstone.h:172
@ CS_OPT_DETAIL
Break down instruction structure into details.
Definition: capstone.h:171
@ CS_OPT_SYNTAX
Assembly output syntax.
Definition: capstone.h:170
@ CS_OPT_SKIPDATA
Skip data when disassembling. Then engine is in SKIPDATA mode.
Definition: capstone.h:174
@ CS_OPT_MNEMONIC
Customize instruction mnemonic.
Definition: capstone.h:176
size_t csh
Definition: capstone.h:71
struct cs_opt_mem cs_opt_mem
cs_group_type
Common instruction groups - to be consistent across all architectures.
Definition: capstone.h:209
@ CS_GRP_INVALID
uninitialized/invalid group.
Definition: capstone.h:210
@ CS_GRP_JUMP
all jump instructions (conditional+direct+indirect jumps)
Definition: capstone.h:211
@ CS_GRP_PRIVILEGE
all privileged instructions
Definition: capstone.h:216
@ CS_GRP_RET
all return instructions
Definition: capstone.h:213
@ CS_GRP_INT
all interrupt instructions (int+syscall)
Definition: capstone.h:214
@ CS_GRP_CALL
all call instructions
Definition: capstone.h:212
@ CS_GRP_BRANCH_RELATIVE
all relative branching instructions
Definition: capstone.h:217
@ CS_GRP_IRET
all interrupt return instructions
Definition: capstone.h:215
void(CAPSTONE_API * cs_free_t)(void *ptr)
Definition: capstone.h:142
#define CS_MNEMONIC_SIZE
Maximum size of an instruction mnemonic string.
Definition: capstone.h:68
cs_opt_value
Runtime option value (associated with option type above)
Definition: capstone.h:181
@ CS_OPT_SYNTAX_NOREGNAME
Prints register name with only number (CS_OPT_SYNTAX)
Definition: capstone.h:187
@ CS_OPT_SYNTAX_INTEL
X86 Intel asm syntax - default on X86 (CS_OPT_SYNTAX).
Definition: capstone.h:185
@ CS_OPT_SYNTAX_ATT
X86 ATT asm syntax (CS_OPT_SYNTAX).
Definition: capstone.h:186
@ CS_OPT_ON
Turn ON an option (CS_OPT_DETAIL, CS_OPT_SKIPDATA).
Definition: capstone.h:183
@ CS_OPT_SYNTAX_MASM
X86 Intel Masm syntax (CS_OPT_SYNTAX).
Definition: capstone.h:188
@ CS_OPT_OFF
Turn OFF an option - default for CS_OPT_DETAIL, CS_OPT_SKIPDATA, CS_OPT_UNSIGNED.
Definition: capstone.h:182
@ CS_OPT_SYNTAX_DEFAULT
Default asm syntax (CS_OPT_SYNTAX).
Definition: capstone.h:184
#define CAPSTONE_API
Definition: capstone.h:32
cs_ac_type
Definition: capstone.h:202
@ CS_AC_INVALID
Uninitialized/invalid access type.
Definition: capstone.h:203
@ CS_AC_READ
Operand read from memory or register.
Definition: capstone.h:204
@ CS_AC_WRITE
Operand write to memory or register.
Definition: capstone.h:205
void *(CAPSTONE_API * cs_malloc_t)(size_t size)
Definition: capstone.h:139
void *(CAPSTONE_API * cs_calloc_t)(size_t nmemb, size_t size)
Definition: capstone.h:140
cs_op_type
Common instruction operand types - to be consistent across all architectures.
Definition: capstone.h:192
@ CS_OP_MEM
Memory operand.
Definition: capstone.h:196
@ CS_OP_REG
Register operand.
Definition: capstone.h:194
@ CS_OP_INVALID
uninitialized/invalid operand.
Definition: capstone.h:193
@ CS_OP_IMM
Immediate operand.
Definition: capstone.h:195
@ CS_OP_FP
Floating-Point operand.
Definition: capstone.h:197
int(CAPSTONE_API * cs_vsnprintf_t)(char *str, size_t size, const char *format, va_list ap)
Definition: capstone.h:143
#define CAPSTONE_DEPRECATED
Definition: capstone.h:46
void *(CAPSTONE_API * cs_realloc_t)(void *ptr, size_t size)
Definition: capstone.h:141
static int value
Definition: cmd_api.c:93
CAPSTONE_EXPORT unsigned int CAPSTONE_API cs_version(int *major, int *minor)
Definition: cs.c:357
CAPSTONE_EXPORT bool CAPSTONE_API cs_support(int query)
Definition: cs.c:368
CAPSTONE_EXPORT cs_err CAPSTONE_API cs_regs_access(csh ud, const cs_insn *insn, cs_regs regs_read, uint8_t *regs_read_count, cs_regs regs_write, uint8_t *regs_write_count)
Definition: cs.c:1504
CAPSTONE_EXPORT cs_err CAPSTONE_API cs_errno(csh handle)
Definition: cs.c:402
CAPSTONE_EXPORT size_t CAPSTONE_API cs_disasm(csh ud, const uint8_t *buffer, size_t size, uint64_t offset, size_t count, cs_insn **insn)
Definition: cs.c:798
CAPSTONE_EXPORT const char *CAPSTONE_API cs_group_name(csh ud, unsigned int group)
Definition: cs.c:1178
CAPSTONE_EXPORT bool CAPSTONE_API cs_reg_read(csh ud, const cs_insn *insn, unsigned int reg_id)
Definition: cs.c:1217
CAPSTONE_EXPORT const char *CAPSTONE_API cs_strerror(cs_err code)
Definition: cs.c:414
CAPSTONE_EXPORT cs_err CAPSTONE_API cs_open(cs_arch arch, cs_mode mode, csh *handle)
Definition: cs.c:453
CAPSTONE_EXPORT bool CAPSTONE_API cs_insn_group(csh ud, const cs_insn *insn, unsigned int group_id)
Definition: cs.c:1190
CAPSTONE_EXPORT int CAPSTONE_API cs_op_count(csh ud, const cs_insn *insn, unsigned int op_type)
Definition: cs.c:1271
CAPSTONE_EXPORT const char *CAPSTONE_API cs_insn_name(csh ud, unsigned int insn)
Definition: cs.c:1166
CAPSTONE_EXPORT void CAPSTONE_API cs_free(cs_insn *insn, size_t count)
Definition: cs.c:1017
CAPSTONE_EXPORT const char *CAPSTONE_API cs_reg_name(csh ud, unsigned int reg)
Definition: cs.c:1154
CAPSTONE_EXPORT bool CAPSTONE_API cs_reg_write(csh ud, const cs_insn *insn, unsigned int reg_id)
Definition: cs.c:1244
CAPSTONE_EXPORT cs_err CAPSTONE_API cs_close(csh *handle)
Definition: cs.c:501
CAPSTONE_EXPORT int CAPSTONE_API cs_op_index(csh ud, const cs_insn *insn, unsigned int op_type, unsigned int post)
Definition: cs.c:1369
CAPSTONE_EXPORT cs_insn *CAPSTONE_API cs_malloc(csh ud)
Definition: cs.c:1030
CAPSTONE_EXPORT bool CAPSTONE_API cs_disasm_iter(csh ud, const uint8_t **code, size_t *size, uint64_t *address, cs_insn *insn)
Definition: cs.c:1058
CAPSTONE_EXPORT CAPSTONE_DEPRECATED size_t CAPSTONE_API cs_disasm_ex(csh ud, const uint8_t *buffer, size_t size, uint64_t offset, size_t count, cs_insn **insn)
Definition: cs.c:1011
CAPSTONE_EXPORT cs_err CAPSTONE_API cs_option(csh ud, cs_opt_type type, size_t value)
Definition: cs.c:646
cs_arch arch
Definition: cstool.c:13
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void count
Definition: sflib.h:98
#define minor(dev)
Definition: fsmagic.c:57
#define major(dev)
Definition: fsmagic.c:56
voidpf void uLong size
Definition: ioapi.h:138
voidpf uLong offset
Definition: ioapi.h:144
const char int mode
Definition: ioapi.h:137
int type
Definition: mipsasm.c:17
int CS_ERR_CSH
Definition: __init__.py:239
int CS_ERR_SKIPDATA
Definition: __init__.py:246
int CS_ERR_MEMSETUP
Definition: __init__.py:243
int CS_ERR_X86_MASM
Definition: __init__.py:249
int CS_ERR_MEM
Definition: __init__.py:236
int CS_ERR_DIET
Definition: __init__.py:245
int CS_ERR_X86_ATT
Definition: __init__.py:247
int CS_ERR_X86_INTEL
Definition: __init__.py:248
int CS_ERR_OPTION
Definition: __init__.py:241
int CS_ERR_VERSION
Definition: __init__.py:244
int CS_ERR_HANDLE
Definition: __init__.py:238
int CS_ERR_OK
Definition: __init__.py:235
int CS_ERR_ARCH
Definition: __init__.py:237
int CS_ERR_MODE
Definition: __init__.py:240
int CS_ERR_DETAIL
Definition: __init__.py:242
int id
Definition: op.c:540
const char * code
Definition: pal.c:98
static int
Definition: sfsocketcall.h:114
unsigned short uint16_t
Definition: sftypes.h:30
int size_t
Definition: sftypes.h:40
unsigned long uint64_t
Definition: sftypes.h:28
unsigned char uint8_t
Definition: sftypes.h:31
Definition: inftree9.h:24
Instruction structure.
Definition: arm64.h:658
Instruction structure.
Definition: arm.h:424
Instruction structure.
Definition: evm.h:18
The M680X instruction and it's operands.
Definition: m680x.h:165
The M68K instruction and it's operands.
Definition: m68k.h:210
Instruction structure.
Definition: mips.h:250
cs_vsnprintf_t vsnprintf
Definition: capstone.h:153
cs_calloc_t calloc
Definition: capstone.h:150
cs_free_t free
Definition: capstone.h:152
cs_malloc_t malloc
Definition: capstone.h:149
cs_realloc_t realloc
Definition: capstone.h:151
const char * mnemonic
Customized instruction mnemonic.
Definition: capstone.h:164
unsigned int id
ID of instruction to be customized.
Definition: capstone.h:162
Instruction structure.
Definition: ppc.h:294
Instruction structure.
Definition: sparc.h:199
Instruction structure.
Definition: x86.h:312
Instruction structure.
Definition: xcore.h:85
mnemonic
Definition: z80asm.h:48