Module Llvm_ir.Type
Types in LLVM IR. These include both first-class types (like int or ptr) and non-first-class types (like labels or metadata)
type t = | Int of {}| Ptr of {}| Float| Double| Struct of Llvm_ir.Type.t list| Array of {num_of_elems : int;elem_type : Llvm_ir.Type.t;
}| Vector of {num_of_elems : int;elem_type : Llvm_ir.Type.t;
}| Label| Token| Metadata
val i128 : Llvm_ir.Type.tval i64 : Llvm_ir.Type.tval i32 : Llvm_ir.Type.tval i16 : Llvm_ir.Type.tval i8 : Llvm_ir.Type.tval i1 : Llvm_ir.Type.tval float : Llvm_ir.Type.tval double : Llvm_ir.Type.tval ptr : Llvm_ir.Type.tval val_ptr : Llvm_ir.Type.tval doublex2 : Llvm_ir.Type.tval label : Llvm_ir.Type.tval metadata : Llvm_ir.Type.tval _token : Llvm_ir.Type.tval of_machtype_component : Cmm.machtype_component -> Llvm_ir.Type.tval of_reg : Reg.t -> Llvm_ir.Type.tval of_float_width : Cmm.float_width -> Llvm_ir.Type.tval pp_t : Stdlib.Format.formatter -> Llvm_ir.Type.t -> unitval to_string : Llvm_ir.Type.t -> stringval equal : Llvm_ir.Type.t -> Llvm_ir.Type.t -> boolval get_struct_elements : Llvm_ir.Type.t -> Llvm_ir.Type.t list optionval extract_struct : Llvm_ir.Type.t -> int list -> Llvm_ir.Type.t optionval elem_type : Llvm_ir.Type.t -> Llvm_ir.Type.t optionval is_ptr : Llvm_ir.Type.t -> boolval is_int : Llvm_ir.Type.t -> boolval is_floating_point : Llvm_ir.Type.t -> boolmodule Or_void : sig ... end