diff options
Diffstat (limited to 'contrib/llvm/lib/Target/R600/AMDGPUTargetMachine.h')
-rw-r--r-- | contrib/llvm/lib/Target/R600/AMDGPUTargetMachine.h | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/contrib/llvm/lib/Target/R600/AMDGPUTargetMachine.h b/contrib/llvm/lib/Target/R600/AMDGPUTargetMachine.h deleted file mode 100644 index 785c119..0000000 --- a/contrib/llvm/lib/Target/R600/AMDGPUTargetMachine.h +++ /dev/null @@ -1,89 +0,0 @@ -//===-- AMDGPUTargetMachine.h - AMDGPU TargetMachine Interface --*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -/// \file -/// \brief The AMDGPU TargetMachine interface definition for hw codgen targets. -// -//===----------------------------------------------------------------------===// - -#ifndef LLVM_LIB_TARGET_R600_AMDGPUTARGETMACHINE_H -#define LLVM_LIB_TARGET_R600_AMDGPUTARGETMACHINE_H - -#include "AMDGPUFrameLowering.h" -#include "AMDGPUInstrInfo.h" -#include "AMDGPUIntrinsicInfo.h" -#include "AMDGPUSubtarget.h" -#include "R600ISelLowering.h" -#include "llvm/IR/DataLayout.h" - -namespace llvm { - -//===----------------------------------------------------------------------===// -// AMDGPU Target Machine (R600+) -//===----------------------------------------------------------------------===// - -class AMDGPUTargetMachine : public LLVMTargetMachine { -private: - -protected: - TargetLoweringObjectFile *TLOF; - AMDGPUSubtarget Subtarget; - AMDGPUIntrinsicInfo IntrinsicInfo; - -public: - AMDGPUTargetMachine(const Target &T, StringRef TT, StringRef FS, - StringRef CPU, TargetOptions Options, Reloc::Model RM, - CodeModel::Model CM, CodeGenOpt::Level OL); - ~AMDGPUTargetMachine(); - - const AMDGPUSubtarget *getSubtargetImpl() const { return &Subtarget; } - const AMDGPUSubtarget *getSubtargetImpl(const Function &) const override { - return &Subtarget; - } - const AMDGPUIntrinsicInfo *getIntrinsicInfo() const override { - return &IntrinsicInfo; - } - TargetIRAnalysis getTargetIRAnalysis() override; - - TargetLoweringObjectFile *getObjFileLowering() const override { - return TLOF; - } -}; - -//===----------------------------------------------------------------------===// -// R600 Target Machine (R600 -> Cayman) -//===----------------------------------------------------------------------===// - -class R600TargetMachine : public AMDGPUTargetMachine { - -public: - R600TargetMachine(const Target &T, StringRef TT, StringRef FS, - StringRef CPU, TargetOptions Options, Reloc::Model RM, - CodeModel::Model CM, CodeGenOpt::Level OL); - - TargetPassConfig *createPassConfig(PassManagerBase &PM) override; -}; - -//===----------------------------------------------------------------------===// -// GCN Target Machine (SI+) -//===----------------------------------------------------------------------===// - -class GCNTargetMachine : public AMDGPUTargetMachine { - -public: - GCNTargetMachine(const Target &T, StringRef TT, StringRef FS, - StringRef CPU, TargetOptions Options, Reloc::Model RM, - CodeModel::Model CM, CodeGenOpt::Level OL); - - TargetPassConfig *createPassConfig(PassManagerBase &PM) override; -}; - -} // End namespace llvm - -#endif |