[llvm] [AMDGPU] Add amdgcn.av.global.(load|store).b128 intrinsics (PR #191390)
Pierre van Houtryve via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 21 02:28:17 PDT 2026
================
@@ -1718,6 +1718,27 @@ void SITargetLowering::getTgtMemIntrinsic(SmallVectorImpl<IntrinsicInfo> &Infos,
Infos.push_back(Info);
return;
}
+ case Intrinsic::amdgcn_av_global_load_b128:
+ case Intrinsic::amdgcn_av_global_store_b128: {
+ bool IsStore = IntrID == Intrinsic::amdgcn_av_global_store_b128;
+ Info.opc = IsStore ? ISD::INTRINSIC_VOID : ISD::INTRINSIC_W_CHAIN;
+ Info.memVT = MVT::v4i32;
+ Info.ptrVal = CI.getArgOperand(0);
+ Info.flags |=
+ IsStore ? MachineMemOperand::MOStore : MachineMemOperand::MOLoad;
+ // Pretend to be atomic so that SIMemoryLegalizer::expandStore sets cache
----------------
Pierre-vh wrote:
I'm not sure about this, is it that much harder to do this the right way ? (add MOFlag operand and handle this separately in SIMemoryLegalizer)
https://github.com/llvm/llvm-project/pull/191390
More information about the llvm-commits
mailing list