aboutsummaryrefslogtreecommitdiffstats
path: root/capstone/bindings/ocaml/x86.ml
blob: 9e97794cf9297de84f3c9134420157377486df8a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
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;
}