diff options
Diffstat (limited to 'source/slang/slang-ir-util.cpp')
| -rw-r--r-- | source/slang/slang-ir-util.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/source/slang/slang-ir-util.cpp b/source/slang/slang-ir-util.cpp index 95240a26c..506e96c81 100644 --- a/source/slang/slang-ir-util.cpp +++ b/source/slang/slang-ir-util.cpp @@ -430,6 +430,11 @@ bool canInstHaveSideEffectAtAddress(IRGlobalValueWithCode* func, IRInst* inst, I if (canAddressesPotentiallyAlias(func, as<IRStore>(inst)->getPtr(), addr)) return true; break; + case kIROp_SwizzledStore: + // If the target of the swizzled store inst may overlap addr, return true. + if (canAddressesPotentiallyAlias(func, as<IRSwizzledStore>(inst)->getDest(), addr)) + return true; + break; case kIROp_Call: { auto call = as<IRCall>(inst); |
