[llvm] [MachinePipeliner] Fix store-store dependences (#72508) (PR #72575)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 21 06:38:43 PST 2023
================
@@ -2251,7 +2251,13 @@ bool SwingSchedulerDAG::isLoopCarriedDep(SUnit *Source, const SDep &Dep,
SI->hasOrderedMemoryRef() || DI->hasOrderedMemoryRef())
return true;
- // Only chain dependences between a load and store can be loop carried.
+ // Dependences between stores are loop carried to ensure that the dependent
+ // store is not scheduled after the source store on the next iteration.
+ if (Dep.isNormalMemory() && DI->mayStore() && SI->mayStore())
----------------
mmarjieh wrote:
Seems enough for me, thanks
https://github.com/llvm/llvm-project/pull/72575
More information about the llvm-commits
mailing list