[llvm] [DirectX] Add support for Raw Buffer Loads and Stores for scalars and vectors of doubles and i64s in SM6.2 and earlier (PR #146627)
Justin Bogner via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 2 11:39:30 PDT 2025
================
@@ -71,12 +71,23 @@ static bool isIntrinsicExpansion(Function &F) {
case Intrinsic::vector_reduce_add:
case Intrinsic::vector_reduce_fadd:
return true;
+ case Intrinsic::dx_resource_load_rawbuffer:
+ if (F.getParent()->getTargetTriple().getDXILVersion() > VersionTuple(1, 2))
+ return false;
+ // fallthrough to check if double or i64
+ LLVM_FALLTHROUGH;
----------------
bogner wrote:
Maybe something like `resourceAccessNeeds64BitExpansion(Module &M, Type *OverloadTy, bool IsRaw)` that we call for all four of load_raw, load_typed, store_raw, and store_typed?
https://github.com/llvm/llvm-project/pull/146627
More information about the llvm-commits
mailing list