type condition = | L| GE| LE| G| B| AE| BE| A| E| NE| O| NO| S| NS| P| NP
type rounding = | RoundUp| RoundDown| RoundNearest| RoundTruncate
type data_type = | NONE| REAL4| REAL8| BYTE| WORD| DWORD| QWORD| OWORD| NEAR| PROC
type reg64 = | RAX| RBX| RCX| RDX| RSP| RBP| RSI| RDI| R8| R9| R10| R11| R12| R13| R14| R15
type reg8h = | AH| BH| CH| DH
type registerf = | XMM of int| TOS| ST of int
type addr = {arch : arch;typ : data_type;idx : reg64;scale : int;base : reg64 option;sym : string option;displ : int;
}type asm_line = | Ins of instruction| Align of bool * int| Byte of constant| Bytes of string| Global of string| Long of constant| NewLabel of string * data_type| Quad of constant| Section of string list * string option * string list| Space of int| Word of constant| External of string * data_type| Mode386| Model of string| Cfi_adjust_cfa_offset of int| Cfi_endproc| Cfi_startproc| File of int * string| Indirect_symbol of string| Loc of int * int * int| Private_extern of string| Set of string * constant| Size of string * constant| Type of string * string