jon.recoil.org

Module Llvm_ir.Value

Values in LLVM IR. These are the main operands to instructions. They consist of a type and something that inhabits that type (confusingly called value here...). The latter can be an immediate, an identifier, among other things.

type contents
type t
val get_ident_exn : Llvm_ir.Value.t -> Llvm_ir.Ident.t
val of_symbol : ?typ:Llvm_ir.Type.t -> string -> Llvm_ir.Value.t
val of_int : ?typ:Llvm_ir.Type.t -> int -> Llvm_ir.Value.t
val of_nativeint : ?typ:Llvm_ir.Type.t -> nativeint -> Llvm_ir.Value.t
val of_float32_bits : int32 -> Llvm_ir.Value.t
val of_float64_bits : int64 -> Llvm_ir.Value.t
val of_float : typ:Llvm_ir.Type.t -> float -> Llvm_ir.Value.t
val of_label : Label.t -> Llvm_ir.Value.t
val of_string_constant : string -> Llvm_ir.Value.t
val zeroinitializer : Llvm_ir.Type.t -> Llvm_ir.Value.t
val imm : Llvm_ir.Type.t -> string -> Llvm_ir.Value.t
val struct_constant : Llvm_ir.Value.t list -> Llvm_ir.Value.t
val blockaddress : func:Llvm_ir.Ident.t -> block:Llvm_ir.Ident.t -> Llvm_ir.Value.t
val pp_contents : Stdlib.Format.formatter -> Llvm_ir.Value.contents -> unit