14 #ifndef LLVM_EXECUTIONENGINE_ORC_JITTARGETMACHINEBUILDER_H 15 #define LLVM_EXECUTIONENGINE_ORC_JITTARGETMACHINEBUILDER_H 67 return TM.takeError();
68 return (*TM)->createDataLayout();
73 this->CPU = std::move(CPU);
79 this->RM = std::move(RM);
85 this->CM = std::move(CM);
91 this->OptLevel = OptLevel;
97 addFeatures(
const std::vector<std::string> &FeatureVec);
130 #endif // LLVM_EXECUTIONENGINE_ORC_JITTARGETMACHINEBUILDER_H const SubtargetFeatures & getFeatures() const
Access subtarget features.
This class represents lattice values for constants.
const TargetOptions & getOptions() const
Access TargetOptions.
JITTargetMachineBuilder & setRelocationModel(Optional< Reloc::Model > RM)
Set the relocation model.
SubtargetFeatures & getFeatures()
Access subtarget features.
Tagged union holding either a T or a Error.
static Expected< JITTargetMachineBuilder > detectHost()
Create a JITTargetMachineBuilder for the host system.
Expected< DataLayout > getDefaultDataLayoutForTarget()
Get the default DataLayout for the target.
JITTargetMachineBuilder(Triple TT)
Create a JITTargetMachineBuilder based on the given triple.
JITTargetMachineBuilder & addFeatures(const std::vector< std::string > &FeatureVec)
Add subtarget features.
Triple - Helper class for working with autoconf configuration names.
Triple & getTargetTriple()
Access Triple.
Manages the enabling and disabling of subtarget specific features.
JITTargetMachineBuilder & setCPU(std::string CPU)
Set the CPU string.
const Triple & getTargetTriple() const
Access Triple.
Expected< std::unique_ptr< TargetMachine > > createTargetMachine()
Create a TargetMachine.
TargetOptions & getOptions()
Access TargetOptions.
JITTargetMachineBuilder & setCodeGenOptLevel(CodeGenOpt::Level OptLevel)
Set the LLVM CodeGen optimization level.
JITTargetMachineBuilder & setCodeModel(Optional< CodeModel::Model > CM)
Set the code model.
A utility class for building TargetMachines for JITs.