[Mlir-commits] [mlir] [mlir][SPIR-V] Fix CopyMemory handling of a lone memory operands mask (PR #226969)
Arseniy Obolenskiy
llvmlistbot at llvm.org
Wed Sep 30 09:56:24 PDT 2026
================
@@ -208,10 +208,16 @@ static LogicalResult verifyMemoryAccessAttribute(MemoryOpTy memoryOp) {
// MakePointerVisible applies to reads through the pointer, so it is invalid
// for Store and for the Target operand of CopyMemory, both of which only
- // write through it.
+ // write through it. A CopyMemory mask is Target-only when a Source mask
+ // follows it, otherwise it applies to both operands.
if constexpr (std::is_same_v<MemoryOpTy, StoreOp> ||
std::is_same_v<MemoryOpTy, CopyMemoryOp>) {
- if (spirv::bitEnumContainsAll(memAccess.getValue(),
+ bool writeOnly = true;
----------------
aobolensk wrote:
Sure, done
https://github.com/llvm/llvm-project/pull/226969
More information about the Mlir-commits
mailing list