Lineartype label = Cmm.labeltype instruction = {mutable desc : instruction_desc; | 
mutable next : instruction; | 
arg : Reg.t array; | 
res : Reg.t array; | 
dbg : Debuginfo.t; | 
live : Reg.Set.t; | 
}and instruction_desc = | Lprologue | |
| Lend | |
| Lop of Mach.operation | |
| Lreloadretaddr | |
| Lreturn | |
| Llabel of label | |
| Lbranch of label | |
| Lcondbranch of Mach.test * label | |
| Lcondbranch3 of label option * label option * label option | |
| Lswitch of label array | |
| Lentertrap | |
| Ladjust_trap_depth of {
 } | |
| Lpushtrap of {
 } | |
| Lpoptrap | |
| Lraise of Lambda.raise_kind | 
val has_fallthrough : instruction_desc -> boolval end_instr : instructionval instr_cons : instruction_desc -> Reg.t array -> Reg.t array -> instruction -> instructiontype fundecl = {fun_name : string; | 
fun_body : instruction; | 
fun_fast : bool; | 
fun_dbg : Debuginfo.t; | 
fun_tailrec_entry_point_label : label; | 
fun_contains_calls : bool; | 
fun_num_stack_slots : int array; | 
fun_frame_required : bool; | 
fun_prologue_required : bool; | 
}