Skip to content

Commit f431f93

Browse files
authored
[CodeGen][NewPM] Use proper NPM AtomicExpandPass in AMDGPU (#122086)
`PassRegistry.def` already has this entry, but the dummy definition was being pulled instead. I couldn't reproduce the build failures that FIXME referenced, maybe the Dummy pass getting in the way was part of the cause.
1 parent ecf4f95 commit f431f93

File tree

2 files changed

+2
-3
lines changed

2 files changed

+2
-3
lines changed

llvm/include/llvm/Passes/MachinePassRegistry.def

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,6 @@ MACHINE_FUNCTION_PASS_WITH_PARAMS(
194194
#ifndef DUMMY_FUNCTION_PASS
195195
#define DUMMY_FUNCTION_PASS(NAME, PASS_NAME)
196196
#endif
197-
DUMMY_FUNCTION_PASS("atomic-expand", AtomicExpandPass)
198197
#undef DUMMY_FUNCTION_PASS
199198

200199
#ifndef DUMMY_MACHINE_MODULE_PASS

llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
#include "llvm/Analysis/CGSCCPassManager.h"
5050
#include "llvm/Analysis/CallGraphSCCPass.h"
5151
#include "llvm/Analysis/UniformityAnalysis.h"
52+
#include "llvm/CodeGen/AtomicExpand.h"
5253
#include "llvm/CodeGen/DeadMachineInstructionElim.h"
5354
#include "llvm/CodeGen/GlobalISel/CSEInfo.h"
5455
#include "llvm/CodeGen/GlobalISel/IRTranslator.h"
@@ -1957,8 +1958,7 @@ void AMDGPUCodeGenPassBuilder::addIRPasses(AddIRPass &addPass) const {
19571958
(AMDGPUAtomicOptimizerStrategy != ScanOptions::None))
19581959
addPass(AMDGPUAtomicOptimizerPass(TM, AMDGPUAtomicOptimizerStrategy));
19591960

1960-
// FIXME: Adding atomic-expand manages to break -passes=atomic-expand
1961-
// addPass(AtomicExpandPass(TM));
1961+
addPass(AtomicExpandPass(&TM));
19621962

19631963
if (TM.getOptLevel() > CodeGenOptLevel::None) {
19641964
addPass(AMDGPUPromoteAllocaPass(TM));

0 commit comments

Comments
 (0)