diff options
author | Tom Stellard <thomas.stellard@amd.com> | 2014-06-17 16:53:14 +0000 |
---|---|---|
committer | Tom Stellard <thomas.stellard@amd.com> | 2014-06-17 16:53:14 +0000 |
commit | 880a80ad07b6ea7ead3a842fc03c74c2247c9486 (patch) | |
tree | 489496181586013e2a61c8773964938c4236822c /llvm/lib/Target/R600/AMDGPUTargetMachine.cpp | |
parent | 85ad429f1fbbcaad0cb0d2e579912868af50d28b (diff) | |
download | bcm5719-llvm-880a80ad07b6ea7ead3a842fc03c74c2247c9486.tar.gz bcm5719-llvm-880a80ad07b6ea7ead3a842fc03c74c2247c9486.zip |
R600: Use LDS and vectors for private memory
llvm-svn: 211110
Diffstat (limited to 'llvm/lib/Target/R600/AMDGPUTargetMachine.cpp')
-rw-r--r-- | llvm/lib/Target/R600/AMDGPUTargetMachine.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/R600/AMDGPUTargetMachine.cpp b/llvm/lib/Target/R600/AMDGPUTargetMachine.cpp index 3c896af46a6..be1eceaaa00 100644 --- a/llvm/lib/Target/R600/AMDGPUTargetMachine.cpp +++ b/llvm/lib/Target/R600/AMDGPUTargetMachine.cpp @@ -109,6 +109,7 @@ public: return nullptr; } + virtual void addCodeGenPrepare(); bool addPreISel() override; bool addInstSelector() override; bool addPreRegAlloc() override; @@ -134,6 +135,13 @@ void AMDGPUTargetMachine::addAnalysisPasses(PassManagerBase &PM) { PM.add(createAMDGPUTargetTransformInfoPass(this)); } +void AMDGPUPassConfig::addCodeGenPrepare() { + const AMDGPUSubtarget &ST = TM->getSubtarget<AMDGPUSubtarget>(); + addPass(createAMDGPUPromoteAlloca(ST)); + addPass(createSROAPass()); + TargetPassConfig::addCodeGenPrepare(); +} + bool AMDGPUPassConfig::addPreISel() { const AMDGPUSubtarget &ST = TM->getSubtarget<AMDGPUSubtarget>(); |