diff options
author | Tom Stellard <thomas.stellard@amd.com> | 2016-04-14 19:09:28 +0000 |
---|---|---|
committer | Tom Stellard <thomas.stellard@amd.com> | 2016-04-14 19:09:28 +0000 |
commit | 000c5af3e65bcd32305d51a32ccdbe6fdf7d3fdf (patch) | |
tree | 959ef307f75403f2bf48327f70012034022c5829 /llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h | |
parent | 3151d8959598d6da4f9373fc6965fedac16dc835 (diff) | |
download | bcm5719-llvm-000c5af3e65bcd32305d51a32ccdbe6fdf7d3fdf.tar.gz bcm5719-llvm-000c5af3e65bcd32305d51a32ccdbe6fdf7d3fdf.zip |
AMDGPU: Add skeleton GlobalIsel implementation
Summary:
This adds the necessary target code to be able to run the ir translator.
Lowering function arguments and returns is a nop and there is no support
for RegBankSelect.
Reviewers: arsenm, qcolombet
Subscribers: arsenm, joker.eph, vkalintiris, llvm-commits
Differential Revision: http://reviews.llvm.org/D19077
llvm-svn: 266356
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h')
-rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h b/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h index 318410f9861..c74edab4b44 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h +++ b/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h @@ -22,6 +22,7 @@ #include "AMDGPUSubtarget.h" #include "Utils/AMDGPUBaseInfo.h" #include "llvm/ADT/StringRef.h" +#include "llvm/CodeGen/GlobalISel/GISelAccessor.h" #include "llvm/Target/TargetSubtargetInfo.h" #define GET_SUBTARGETINFO_HEADER @@ -98,6 +99,7 @@ private: std::unique_ptr<AMDGPUFrameLowering> FrameLowering; std::unique_ptr<AMDGPUTargetLowering> TLInfo; std::unique_ptr<AMDGPUInstrInfo> InstrInfo; + std::unique_ptr<GISelAccessor> GISel; InstrItineraryData InstrItins; Triple TargetTriple; @@ -107,6 +109,10 @@ public: AMDGPUSubtarget &initializeSubtargetDependencies(const Triple &TT, StringRef GPU, StringRef FS); + void setGISelAccessor(GISelAccessor &GISel) { + this->GISel.reset(&GISel); + } + const AMDGPUFrameLowering *getFrameLowering() const override { return FrameLowering.get(); } @@ -123,6 +129,8 @@ public: return &InstrItins; } + const CallLowering *getCallLowering() const override; + void ParseSubtargetFeatures(StringRef CPU, StringRef FS); bool hasVertexCache() const { |