diff options
| author | Jingyue Wu <jingyue@google.com> | 2015-04-21 20:47:15 +0000 |
|---|---|---|
| committer | Jingyue Wu <jingyue@google.com> | 2015-04-21 20:47:15 +0000 |
| commit | 66a161f05e71d18a61a67f7998e42fecc4f0db99 (patch) | |
| tree | cbe638a7ad3a1f933479bfe04f40f3e00653eba5 /llvm/lib | |
| parent | 7be03d69e5439b8347083b34814b6ac3a4bb095c (diff) | |
| download | bcm5719-llvm-66a161f05e71d18a61a67f7998e42fecc4f0db99.tar.gz bcm5719-llvm-66a161f05e71d18a61a67f7998e42fecc4f0db99.zip | |
[NVPTX] do not run DCE after SLSR and SeparateConstOffsetFromGEP
Summary:
With D9096 and D9101, there's no need to run DCE after SLSR and
SeparateConstOffsetFromGEP.
Test Plan: no regression
Reviewers: jholewinski, meheff
Subscribers: jholewinski, llvm-commits
Differential Revision: http://reviews.llvm.org/D9172
llvm-svn: 235415
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp b/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp index 1b6bc714505..f9545cc1d41 100644 --- a/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp +++ b/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp @@ -164,6 +164,10 @@ void NVPTXPassConfig::addIRPasses() { addPass(createNVPTXAssignValidGlobalNamesPass()); addPass(createGenericToNVVMPass()); addPass(createNVPTXFavorNonGenericAddrSpacesPass()); + // FavorNonGenericAddrSpaces shortcuts unnecessary addrspacecasts, and leave + // them unused. We could remove dead code in an ad-hoc manner, but that + // requires manual work and might be error-prone. + addPass(createDeadCodeEliminationPass()); addPass(createStraightLineStrengthReducePass()); addPass(createSeparateConstOffsetFromGEPPass()); // The SeparateConstOffsetFromGEP pass creates variadic bases that can be used @@ -173,16 +177,6 @@ void NVPTXPassConfig::addIRPasses() { addPass(createGVNPass()); else addPass(createEarlyCSEPass()); - // Both FavorNonGenericAddrSpaces and SeparateConstOffsetFromGEP may leave - // some dead code. We could remove dead code in an ad-hoc manner, but that - // requires manual work and might be error-prone. - // - // The FavorNonGenericAddrSpaces pass shortcuts unnecessary addrspacecasts, - // and leave them unused. - // - // SeparateConstOffsetFromGEP rebuilds a new index from the old index, and the - // old index and some of its intermediate results may become unused. - addPass(createDeadCodeEliminationPass()); } bool NVPTXPassConfig::addInstSelector() { |

