summaryrefslogtreecommitdiff
path: root/source/slang/slang-ir-use-uninitialized-values.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2024-10-17 20:14:22 -0700
committerGitHub <noreply@github.com>2024-10-17 20:14:22 -0700
commita618b8c5e249b0f20e6c0c95f9da1b5cbfdbf08b (patch)
treed583c373d574a265fefe7f288a96c4b382e259b8 /source/slang/slang-ir-use-uninitialized-values.cpp
parent11e1ecafa09396a3559fe245d729b40ce4f25d52 (diff)
Cleanup atomic intrinsics. (#5324)
* Cleanup atomic intrinsics. * Fix. * Fix glsl. * Remove hacky intrinsic expansion logic for glsl image atomics. * Fix all tests. * Fix. * Add `InterlockedAddF16Emulated`. * Fix glsl intrinsic. * Fix.
Diffstat (limited to 'source/slang/slang-ir-use-uninitialized-values.cpp')
-rw-r--r--source/slang/slang-ir-use-uninitialized-values.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/source/slang/slang-ir-use-uninitialized-values.cpp b/source/slang/slang-ir-use-uninitialized-values.cpp
index 98fd9841a..fea55de8d 100644
--- a/source/slang/slang-ir-use-uninitialized-values.cpp
+++ b/source/slang/slang-ir-use-uninitialized-values.cpp
@@ -315,8 +315,11 @@ namespace Slang
case kIROp_Unmodified:
return Store;
- // ... and the rest will load/use them
default:
+ // Default case is that if the instruction is a pointer, it
+ // is considered a store, otherwise a load.
+ if (as<IRPtrTypeBase>(user->getDataType()))
+ return Store;
return Load;
}
}