diff options
| author | Akshat Oke <Akshat.Oke@amd.com> | 2025-07-09 14:52:58 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-09 14:52:58 +0530 |
| commit | edaf656d5e17799208118069e8b64ee286621f2c (patch) | |
| tree | 1e4f261eb79dc79fb568623eea71a2a621a7e558 /llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp | |
| parent | 7ea371443b83f20edadb538c4b6ea19ee4de1094 (diff) | |
[CodeGen][NPM] Differentiate pipeline-required and opt-required passes (#135752)
"Required" passes relate to actually running the pass on the IR,
regardless of whether they are in the pipeline.
CGPassBuilder was mistakenly still adding them to the pipeline.
The test `llc -stop-after=greedy -enable-new-pm` would still add
`greedy` to the pipeline otherwise.
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp')
| -rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp index 64c4e5d6a22b..92d378e01bcb 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp @@ -2147,7 +2147,8 @@ void AMDGPUCodeGenPassBuilder::addPreISel(AddIRPass &addPass) const { // FIXME: Why isn't this queried as required from AMDGPUISelDAGToDAG, and why // isn't this in addInstSelector? - addPass(RequireAnalysisPass<UniformityInfoAnalysis, Function>()); + addPass(RequireAnalysisPass<UniformityInfoAnalysis, Function>(), + /*Force=*/true); } void AMDGPUCodeGenPassBuilder::addILPOpts(AddMachinePass &addPass) const { |
