diff options
Diffstat (limited to 'lib/Target/AMDGPU/AMDGPUTargetMachine.h')
-rw-r--r-- | lib/Target/AMDGPU/AMDGPUTargetMachine.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/Target/AMDGPU/AMDGPUTargetMachine.h b/lib/Target/AMDGPU/AMDGPUTargetMachine.h index 9496773a073f..934bf7f31bab 100644 --- a/lib/Target/AMDGPU/AMDGPUTargetMachine.h +++ b/lib/Target/AMDGPU/AMDGPUTargetMachine.h @@ -35,6 +35,7 @@ class AMDGPUTargetMachine : public LLVMTargetMachine { protected: std::unique_ptr<TargetLoweringObjectFile> TLOF; AMDGPUIntrinsicInfo IntrinsicInfo; + AMDGPUAS AS; StringRef getGPUName(const Function &F) const; StringRef getFeatureString(const Function &F) const; @@ -57,7 +58,18 @@ public: TargetLoweringObjectFile *getObjFileLowering() const override { return TLOF.get(); } - void addEarlyAsPossiblePasses(PassManagerBase &PM) override; + AMDGPUAS getAMDGPUAS() const { + return AS; + } + + void adjustPassManager(PassManagerBuilder &) override; + /// Get the integer value of a null pointer in the given address space. + uint64_t getNullPointerValue(unsigned AddrSpace) const { + if (AddrSpace == AS.LOCAL_ADDRESS || AddrSpace == AS.REGION_ADDRESS) + return -1; + return 0; + } + }; //===----------------------------------------------------------------------===// |