You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
832 B
47 lines
832 B
3 years ago
|
(* Capstone Disassembly Engine
|
||
|
* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 *)
|
||
|
|
||
|
open Arm64_const
|
||
|
|
||
|
(* architecture specific info of instruction *)
|
||
|
type arm64_op_shift = {
|
||
|
shift_type: int;
|
||
|
shift_value: int;
|
||
|
}
|
||
|
|
||
|
type arm64_op_mem = {
|
||
|
base: int;
|
||
|
index: int;
|
||
|
disp: int
|
||
|
}
|
||
|
|
||
|
type arm64_op_value =
|
||
|
| ARM64_OP_INVALID of int
|
||
|
| ARM64_OP_REG of int
|
||
|
| ARM64_OP_CIMM of int
|
||
|
| ARM64_OP_IMM of int
|
||
|
| ARM64_OP_FP of float
|
||
|
| ARM64_OP_MEM of arm64_op_mem
|
||
|
| ARM64_OP_REG_MRS of int
|
||
|
| ARM64_OP_REG_MSR of int
|
||
|
| ARM64_OP_PSTATE of int
|
||
|
| ARM64_OP_SYS of int
|
||
|
| ARM64_OP_PREFETCH of int
|
||
|
| ARM64_OP_BARRIER of int
|
||
|
|
||
|
type arm64_op = {
|
||
|
vector_index: int;
|
||
|
vas: int;
|
||
|
vess: int;
|
||
|
shift: arm64_op_shift;
|
||
|
ext: int;
|
||
|
value: arm64_op_value;
|
||
|
}
|
||
|
|
||
|
type cs_arm64 = {
|
||
|
cc: int;
|
||
|
update_flags: bool;
|
||
|
writeback: bool;
|
||
|
operands: arm64_op array;
|
||
|
}
|