aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h')
-rw-r--r--contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h26
1 files changed, 15 insertions, 11 deletions
diff --git a/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h b/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
index 5f9b2a7fca20..0fe14493fabd 100644
--- a/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
+++ b/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
@@ -8,7 +8,7 @@
//===----------------------------------------------------------------------===//
//
/// \file
-/// \brief The AMDGPU TargetMachine interface definition for hw codgen targets.
+/// The AMDGPU TargetMachine interface definition for hw codgen targets.
//
//===----------------------------------------------------------------------===//
@@ -34,7 +34,6 @@ namespace llvm {
class AMDGPUTargetMachine : public LLVMTargetMachine {
protected:
std::unique_ptr<TargetLoweringObjectFile> TLOF;
- AMDGPUIntrinsicInfo IntrinsicInfo;
AMDGPUAS AS;
StringRef getGPUName(const Function &F) const;
@@ -42,6 +41,7 @@ protected:
public:
static bool EnableLateStructurizeCFG;
+ static bool EnableFunctionCalls;
AMDGPUTargetMachine(const Target &T, const Triple &TT, StringRef CPU,
StringRef FS, TargetOptions Options,
@@ -49,13 +49,8 @@ public:
CodeGenOpt::Level OL);
~AMDGPUTargetMachine() override;
- const AMDGPUSubtarget *getSubtargetImpl() const;
- const AMDGPUSubtarget *getSubtargetImpl(const Function &) const override = 0;
-
- const AMDGPUIntrinsicInfo *getIntrinsicInfo() const override {
- return &IntrinsicInfo;
- }
- TargetTransformInfo getTargetTransformInfo(const Function &F) override;
+ const TargetSubtargetInfo *getSubtargetImpl() const;
+ const TargetSubtargetInfo *getSubtargetImpl(const Function &) const override = 0;
TargetLoweringObjectFile *getObjFileLowering() const override {
return TLOF.get();
@@ -91,6 +86,8 @@ public:
const R600Subtarget *getSubtargetImpl(const Function &) const override;
+ TargetTransformInfo getTargetTransformInfo(const Function &F) override;
+
bool isMachineVerifierClean() const override {
return false;
}
@@ -102,7 +99,8 @@ public:
class GCNTargetMachine final : public AMDGPUTargetMachine {
private:
- mutable StringMap<std::unique_ptr<SISubtarget>> SubtargetMap;
+ AMDGPUIntrinsicInfo IntrinsicInfo;
+ mutable StringMap<std::unique_ptr<GCNSubtarget>> SubtargetMap;
public:
GCNTargetMachine(const Target &T, const Triple &TT, StringRef CPU,
@@ -112,7 +110,13 @@ public:
TargetPassConfig *createPassConfig(PassManagerBase &PM) override;
- const SISubtarget *getSubtargetImpl(const Function &) const override;
+ const GCNSubtarget *getSubtargetImpl(const Function &) const override;
+
+ TargetTransformInfo getTargetTransformInfo(const Function &F) override;
+
+ const AMDGPUIntrinsicInfo *getIntrinsicInfo() const override {
+ return &IntrinsicInfo;
+ }
bool useIPRA() const override {
return true;