From 4aa6344f772d31c1f7b0676cbaf315104c4b30a2 Mon Sep 17 00:00:00 2001 From: Yong He Date: Thu, 23 Jun 2022 12:41:05 -0700 Subject: Preserve specialization cache in IR for specialization pass. (#2293) * Perserve specialization cache in IR for specialization pass. * Fix compile error. * Fix. * Fix. * Fix test case. * Fix. Co-authored-by: Yong He --- source/slang/slang-emit.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'source/slang/slang-emit.cpp') diff --git a/source/slang/slang-emit.cpp b/source/slang/slang-emit.cpp index fb0f65c5f..d7ddb773a 100644 --- a/source/slang/slang-emit.cpp +++ b/source/slang/slang-emit.cpp @@ -37,6 +37,7 @@ #include "slang-ir-specialize-resources.h" #include "slang-ir-ssa.h" #include "slang-ir-ssa-simplification.h" +#include "slang-ir-strip-cached-dict.h" #include "slang-ir-strip-witness-tables.h" #include "slang-ir-synthesize-active-mask.h" #include "slang-ir-union.h" @@ -707,6 +708,8 @@ Result linkAndOptimizeIR( break; } + stripCachedDictionaries(irModule); + // TODO: our current dynamic dispatch pass will remove all uses of witness tables. // If we are going to support function-pointer based, "real" modular dynamic dispatch, // we will need to disable this pass. -- cgit v1.2.3