From 5e5c08dc5ddf7989faf2f9f8ad76e260ba6385d7 Mon Sep 17 00:00:00 2001 From: Gangzheng Tong Date: Fri, 9 May 2025 02:00:39 -0700 Subject: Destroy unused witness table after hoisting (#7009) * Destroy unused witness table after hoisting --- source/slang/slang-ir-autodiff.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/slang/slang-ir-autodiff.cpp b/source/slang/slang-ir-autodiff.cpp index f70e30b72..6ad8c5dbb 100644 --- a/source/slang/slang-ir-autodiff.cpp +++ b/source/slang/slang-ir-autodiff.cpp @@ -3249,6 +3249,9 @@ struct AutoDiffPass : public InstPassBase } } + // Destroy the old witness table + innerResult.diffWitness->replaceUsesWith(newWitnessTable); + innerResult.diffWitness->removeAndDeallocate(); result.diffWitness = hoistValueFromGeneric(builder, newWitnessTable, specInst, true); } -- cgit v1.2.3