[llvm] [AMDGPU] Do not bundle meta instructions with memops (PR #153533)
Jeffrey Byrnes via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 14 16:04:06 PDT 2025
================
@@ -179,20 +179,20 @@ bool SIPostRABundler::run(MachineFunction &MF) {
Next = std::next(I);
assert(BundleEnd != I);
- if (canBundle(*BundleEnd, *I)) {
- BundleEnd = I;
- if (I->getNumExplicitDefs() != 0)
- Defs.insert(I->defs().begin()->getReg());
- ++ClauseLength;
- } else if (!I->isMetaInstruction()) {
- // Allow meta instructions in between bundle candidates, but do not
- // start or end a bundle on one.
- //
- // TODO: It may be better to move meta instructions like dbg_value
- // after the bundle. We're relying on the memory legalizer to unbundle
- // these.
+ if (!canBundle(*BundleEnd, *I)) {
----------------
jrbyrnes wrote:
I think we should just also bypass if our MBB has SCHED_BARRIER (so long as the immediate operand is not 0)
https://github.com/llvm/llvm-project/pull/153533
More information about the llvm-commits
mailing list