package llvm
val create :
triple:string ->
?cpu:string ->
?features:string ->
?level:CodeGenOptLevel.t ->
?reloc_mode:RelocMode.t ->
?code_model:CodeModel.t ->
Target.t ->
t
Creates a new target machine. See llvm::Target::createTargetMachine
.
val triple : t -> string
Returns the triple used while creating this target machine. See llvm::TargetMachine::getTriple
.
val cpu : t -> string
Returns the CPU used while creating this target machine. See llvm::TargetMachine::getCPU
.
val data_layout : t -> DataLayout.t
Returns the data layout of this target machine.
val features : t -> string
Returns the feature string used while creating this target machine. See llvm::TargetMachine::getFeatureString
.
val add_analysis_passes :
[< Llvm.PassManager.any ] Llvm.PassManager.t ->
t ->
unit
Adds the target-specific analysis passes to the pass manager. See llvm::TargetMachine::addAnalysisPasses
.
val set_verbose_asm : bool -> t -> unit
Sets the assembly verbosity of this target machine. See llvm::TargetMachine::setAsmVerbosity
.
val emit_to_file : Llvm.llmodule -> CodeGenFileType.t -> string -> t -> unit
Emits assembly or object data for the given module to the given file or raise Error
.
val emit_to_memory_buffer :
Llvm.llmodule ->
CodeGenFileType.t ->
t ->
Llvm.llmemorybuffer
Emits assembly or object data for the given module to a fresh memory buffer or raise Error
.