summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-ir-specialize.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2021-08-26 10:30:35 -0700
committerGitHub <noreply@github.com>2021-08-26 10:30:35 -0700
commitb2ad8e99a82884bb157e1be76b1ad7eb0e481457 (patch)
tree3f5357083b5972761d516b70cb51a4fa7ab72cd5 /source/slang/slang-ir-specialize.cpp
parent33f7e1599cbecb32c23787b37b2bf3b34bdd5c84 (diff)
Add API to control interface specialization. (#1925)
Diffstat (limited to 'source/slang/slang-ir-specialize.cpp')
-rw-r--r--source/slang/slang-ir-specialize.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/slang/slang-ir-specialize.cpp b/source/slang/slang-ir-specialize.cpp
index e9300ae06..9522dbeca 100644
--- a/source/slang/slang-ir-specialize.cpp
+++ b/source/slang/slang-ir-specialize.cpp
@@ -2158,6 +2158,11 @@ IRInst* specializeGenericImpl(
if( auto returnValInst = as<IRReturnVal>(ii) )
{
auto specializedVal = findCloneForOperand(&env, returnValInst->getVal());
+
+ // Clone decorations on the orignal `specialize` inst over to the newly specialized
+ // value.
+ cloneInstDecorationsAndChildren(
+ &env, &sharedBuilderStorage, specializeInst, specializedVal);
return specializedVal;
}