14#ifndef LLVM_LIB_TARGET_AMDGPU_R600TARGETMACHINE_H
15#define LLVM_LIB_TARGET_AMDGPU_R600TARGETMACHINE_H
35 std::optional<Reloc::Model>
RM,
The AMDGPU TargetMachine interface definition for hw codegen targets.
PassInstrumentationCallbacks PIC
AMDGPU R600 specific subclass of TargetSubtarget.
const TargetSubtargetInfo * getSubtargetImpl() const
Allocate memory in an ever growing pool, as if by bump-pointer.
This class provides access to building LLVM's passes.
std::function< Expected< std::unique_ptr< MCStreamer > >(MCContext &)> CreateMCStreamer
PassInstrumentationCallbacks * PIC
Lightweight error class with error context and mandatory checking.
This class manages callbacks registration, as well as provides a way for PassInstrumentation to pass ...
void addPreISel(AddIRPass &addPass) const
void addAsmPrinter(AddMachinePass &, CreateMCStreamer) const
Error addInstSelector(AddMachinePass &) const
Error buildCodeGenPipeline(ModulePassManager &MPM, raw_pwrite_stream &Out, raw_pwrite_stream *DwoOut, CodeGenFileType FileType, const CGPassBuilderOption &Opt, PassInstrumentationCallbacks *PIC) override
bool isMachineVerifierClean() const override
Returns true if the target is expected to pass all machine verifier checks.
TargetPassConfig * createPassConfig(PassManagerBase &PM) override
Create a pass configuration object to be used by addPassToEmitX methods for generating a pipeline of ...
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.
StringMap - This is an unconventional map that is specialized for handling keys that are "strings",...
StringRef - Represent a constant reference to a string, i.e.
std::unique_ptr< const MCSubtargetInfo > STI
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 ...
An abstract base class for streams implementations that also support a pwrite operation.
This is an optimization pass for GlobalISel generic memory operations.
CodeGenFileType
These enums are meant to be passed into addPassesToEmitFile to indicate what type of file to emit,...
CodeGenOptLevel
Code generation optimization level.
MachineFunctionInfo - This class can be derived from and used by targets to hold private target-speci...