[all-commits] [llvm/llvm-project] f50091: [AMDGPU][SIInsertWaitCnts] Remove VMemTypes (#206440)
Pierre van Houtryve via All-commits
all-commits at lists.llvm.org
Wed Jul 1 01:49:34 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: f5009119ced0973a0f0ffcf068c64e9405699d21
https://github.com/llvm/llvm-project/commit/f5009119ced0973a0f0ffcf068c64e9405699d21
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.h
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[AMDGPU][SIInsertWaitCnts] Remove VMemTypes (#206440)
This can be considered a RFC. I'd personally like to get rid of
VMEMTypes but I don't know if anyone feels strongly that they should be kept.
My motivation for removing VMemTypes is simple: They are just a repeat
of VMEM events, just under a different name, and messier (defined as a
basic enum but actually stored as a bitmask later). It's just confusing.
This patch eliminates the need for them by:
- Adding a new entrypoint in AMDGPUHWEvents to get the basic set of
VMEM events issued by a VMEM Instruction.
- Set BVH/SAMPLER events irrespective of whether the HW can track them.
These events exist anyway, it should be up to InsertWaitCnt to deal with
them
properly (which is easy, only `counterOutOfOrder` needed work).
- Tracking an additional set of per-VGPR "PendingEvents" which is
set using the "basic set of VMEM events" and cleared as needed.
I believe this is worth it because it streamlines the implementation
of `SIInsertWaitCnts` and eliminates a bit of code duplication
along the way.
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