13#ifndef LLVM_LIB_TARGET_LANAI_LANAITARGETMACHINE_H
14#define LLVM_LIB_TARGET_LANAI_LANAITARGETMACHINE_H
27 std::unique_ptr<TargetLoweringObjectFile> TLOF;
33 std::optional<Reloc::Model>
RM,
34 std::optional<CodeModel::Model>
CodeModel,
CodeGenTargetMachineImpl(const Target &T, StringRef DataLayoutString, const Triple &TT, StringRef CPU, StringRef FS, const TargetOptions &Options, Reloc::Model RM, CodeModel::Model CM, CodeGenOptLevel OL)
TargetPassConfig * createPassConfig(PassManagerBase &pass_manager) override
Create a pass configuration object to be used by addPassToEmitX methods for generating a pipeline of ...
TargetLoweringObjectFile * getObjFileLowering() const override
bool isMachineVerifierClean() const override
Returns true if the target is expected to pass all machine verifier checks.
const LanaiSubtarget * getSubtargetImpl(const llvm::Function &) const override
Virtual method implemented by subclasses that returns a reference to that target's TargetSubtargetInf...
LanaiTargetMachine(const Target &TheTarget, const Triple &TargetTriple, StringRef Cpu, StringRef FeatureString, const TargetOptions &Options, std::optional< Reloc::Model > RM, std::optional< CodeModel::Model > CodeModel, CodeGenOptLevel OptLevel, bool JIT)
MachineFunctionInfo * createMachineFunctionInfo(BumpPtrAllocator &Allocator, const Function &F, const TargetSubtargetInfo *STI) const override
Create the target's instance of MachineFunctionInfo.
TargetTransformInfo getTargetTransformInfo(const Function &F) const override
Get a TargetTransformInfo implementation for the target.
StringRef - Represent a constant reference to a string, i.e.
Triple TargetTriple
Triple string, CPU name, and target feature strings the TargetMachine instance is created with.
std::unique_ptr< const MCSubtargetInfo > STI
const Target & TheTarget
The Target that this machine was created for.
Target-Independent Code Generator Pass Configuration Options.
TargetSubtargetInfo - Generic base class for all target subtargets.
Target - Wrapper for Target specific information.
Triple - Helper class for working with autoconf configuration names.
PassManagerBase - An abstract interface to allow code to add passes to a pass manager without having ...
This is an optimization pass for GlobalISel generic memory operations.
BumpPtrAllocatorImpl BumpPtrAllocator
The standard BumpPtrAllocator which just uses the default template parameters.
CodeGenOptLevel
Code generation optimization level.
MachineFunctionInfo - This class can be derived from and used by targets to hold private target-speci...