[all-commits] [llvm/llvm-project] 6a8c20: [AMDGPU] Avoid bundling a SCHED_BARRIER with memop...

Yoonseo Choi via All-commits all-commits at lists.llvm.org
Wed Aug 27 15:09:48 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6a8c20549e72e239fa39c77af72f719c6f7f0c6d
      https://github.com/llvm/llvm-project/commit/6a8c20549e72e239fa39c77af72f719c6f7f0c6d
  Author: Yoonseo Choi <Yoonseo.Choi at amd.com>
  Date:   2025-08-27 (Wed, 27 Aug 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIPostRABundler.cpp
    M llvm/test/CodeGen/AMDGPU/postra-bundle-memops.mir

  Log Message:
  -----------
  [AMDGPU] Avoid bundling a SCHED_BARRIER with memops (#153533)

Avoid bundling a SCHED_BARRIER with memops. Memops are still can be
bundled and a SCHED_BARRIER ends the bundle. (e.g. [load, load, ...
SCHED_BARRIER(exclusive from the bundle) ), This is to honor the
SCHED_BARRIERs maximally without intervention of bundling.

If a SCHED_BARRIER is placed in a bundle between memops, the
SCHED_BARRIER is not used during IGroupLPMutation in postra mi-sched
phase. In addition, bundling memory ops with in-between SCHED_BARRIER
can prevent that SCHED_BARRIER or any neighboring SCHED_BARRIER being
honored. As users already provided SCHED_BARRIER between memory ops,
don't bundle it together with memory ops. Bypassing any bundling in a
MBB with a SCHED_BARRIER removes all those problems occur.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list