diff options
Diffstat (limited to 'capstone/bindings/ocaml/x86.ml')
-rw-r--r-- | capstone/bindings/ocaml/x86.ml | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/capstone/bindings/ocaml/x86.ml b/capstone/bindings/ocaml/x86.ml new file mode 100644 index 000000000..9e97794cf --- /dev/null +++ b/capstone/bindings/ocaml/x86.ml @@ -0,0 +1,47 @@ +(* Capstone Disassembly Engine + * By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 *) + +open X86_const + +(* architecture specific info of instruction *) +type x86_op_mem = { + segment: int; + base: int; + index: int; + scale: int; + disp: int; +} + +type x86_op_value = + | X86_OP_INVALID of int + | X86_OP_REG of int + | X86_OP_IMM of int + | X86_OP_MEM of x86_op_mem + +type x86_op = { + value: x86_op_value; + size: int; + access: int; + avx_bcast: int; + avx_zero_opmask: int; +} + +type cs_x86 = { + prefix: int array; + opcode: int array; + rex: int; + addr_size: int; + modrm: int; + sib: int; + disp: int; + sib_index: int; + sib_scale: int; + sib_base: int; + xop_cc: int; + sse_cc: int; + avx_cc: int; + avx_sae: int; + avx_rm: int; + eflags: int; + operands: x86_op array; +} |