[llvm] 526c095 - [NVPTX][NewPM] Temporarily disable NVPTX passes in new PM pipeline
Arthur Eubanks via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 5 11:31:28 PST 2021
Author: Arthur Eubanks
Date: 2021-02-05T11:31:07-08:00
New Revision: 526c0955c08b402a163139ea544815e9b46d47c3
URL: https://github.com/llvm/llvm-project/commit/526c0955c08b402a163139ea544815e9b46d47c3
DIFF: https://github.com/llvm/llvm-project/commit/526c0955c08b402a163139ea544815e9b46d47c3.diff
LOG: [NVPTX][NewPM] Temporarily disable NVPTX passes in new PM pipeline
These passes are causing numerical discrepancies after being added to
the pipeline. Disable while investigating.
Reviewed By: rupprecht
Differential Revision: https://reviews.llvm.org/D96166
Added:
Modified:
llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
llvm/test/CodeGen/NVPTX/nvvm-reflect-arch.ll
Removed:
################################################################################
diff --git a/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp b/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
index f1a82f1cf6078..21588385292b9 100644
--- a/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
+++ b/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
@@ -222,14 +222,17 @@ void NVPTXTargetMachine::registerPassBuilderCallbacks(PassBuilder &PB,
return false;
});
- PB.registerPipelineStartEPCallback(
- [this, DebugPassManager](ModulePassManager &PM,
- PassBuilder::OptimizationLevel Level) {
- FunctionPassManager FPM(DebugPassManager);
- FPM.addPass(NVVMReflectPass(Subtarget.getSmVersion()));
- FPM.addPass(NVVMIntrRangePass(Subtarget.getSmVersion()));
- PM.addPass(createModuleToFunctionPassAdaptor(std::move(FPM)));
- });
+ // FIXME: these passes are causing numerical discrepancies, investigate and
+ // re-enable.
+
+ // PB.registerPipelineStartEPCallback(
+ // [this, DebugPassManager](ModulePassManager &PM,
+ // PassBuilder::OptimizationLevel Level) {
+ // FunctionPassManager FPM(DebugPassManager);
+ // FPM.addPass(NVVMReflectPass(Subtarget.getSmVersion()));
+ // FPM.addPass(NVVMIntrRangePass(Subtarget.getSmVersion()));
+ // PM.addPass(createModuleToFunctionPassAdaptor(std::move(FPM)));
+ // });
}
TargetTransformInfo
diff --git a/llvm/test/CodeGen/NVPTX/nvvm-reflect-arch.ll b/llvm/test/CodeGen/NVPTX/nvvm-reflect-arch.ll
index 8e8d866504de5..faab35525f76b 100644
--- a/llvm/test/CodeGen/NVPTX/nvvm-reflect-arch.ll
+++ b/llvm/test/CodeGen/NVPTX/nvvm-reflect-arch.ll
@@ -1,9 +1,10 @@
; Libdevice in recent CUDA versions relies on __CUDA_ARCH reflecting GPU type.
; Verify that __nvvm_reflect() is replaced with an appropriate value.
;
-; RUN: opt %s -S -nvvm-reflect -O2 -mtriple=nvptx64 \
+; FIXME: fix pass and re-enable under new PM
+; RUN: opt %s -S -nvvm-reflect -O2 -enable-new-pm=0 -mtriple=nvptx64 \
; RUN: | FileCheck %s --check-prefixes=COMMON,SM20
-; RUN: opt %s -S -nvvm-reflect -O2 -mtriple=nvptx64 -mcpu=sm_35 \
+; RUN: opt %s -S -nvvm-reflect -O2 -enable-new-pm=0 -mtriple=nvptx64 -mcpu=sm_35 \
; RUN: | FileCheck %s --check-prefixes=COMMON,SM35
@"$str" = private addrspace(1) constant [12 x i8] c"__CUDA_ARCH\00"
More information about the llvm-commits
mailing list