[NVPTX] Added run NVVMReflect pass to NVPTX back-end.
authorArtem Belevich <tra@google.com>
Tue, 8 Sep 2015 21:04:55 +0000 (21:04 +0000)
committerArtem Belevich <tra@google.com>
Tue, 8 Sep 2015 21:04:55 +0000 (21:04 +0000)
The pass is needed to remove __nvvm_reflect calls when we link in
libdevice bitcode that comes with CUDA.

Differential Revision: http://reviews.llvm.org/D11663

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@247072 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/NVPTX/NVPTXTargetMachine.cpp

index 706314c9ed37e4b3afdfe5d42f2b24a35c624972..e5fbaf9f8ca5fad526057b2ad58e3b40d7217f2b 100644 (file)
@@ -176,6 +176,7 @@ void NVPTXPassConfig::addIRPasses() {
   disablePass(&MachineCopyPropagationID);
   disablePass(&TailDuplicateID);
 
+  addPass(createNVVMReflectPass());
   addPass(createNVPTXImageOptimizerPass());
   addPass(createNVPTXAssignValidGlobalNamesPass());
   addPass(createGenericToNVVMPass());