[llvm] [UniformityAnalysis] Add CallbackVH to keep UniformValues consistent on value deletion (PR #187658)
Juan Manuel Martinez CaamaƱo via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 9 06:57:18 PDT 2026
================
@@ -107,6 +143,15 @@ template <> void llvm::GenericUniformityAnalysisImpl<SSAContext>::initialize() {
pushUsers(Arg);
}
+template <>
+void llvm::GenericUniformityAnalysisImpl<SSAContext>::registerCallbacks() {
+ IRUniformValueCallbackManager *Manager =
+ new IRUniformValueCallbackManager(UniformValues);
+ for (const Value *V : UniformValues)
+ Manager->registerValue(V);
+ UniformValueCallbacks.reset(Manager);
----------------
jmmartinez wrote:
```suggestion
std::unique_ptr<IRUniformValueCallbackManager> Manager =
make_unique<IRUniformValueCallbackManager>(UniformValues);
for (const Value *V : UniformValues)
Manager->registerValue(V);
UniformValueCallbacks = std::move(Manager);
```
https://github.com/llvm/llvm-project/pull/187658
More information about the llvm-commits
mailing list