summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-ir.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/slang-ir.cpp')
-rw-r--r--source/slang/slang-ir.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/source/slang/slang-ir.cpp b/source/slang/slang-ir.cpp
index f84300327..45cbd65ff 100644
--- a/source/slang/slang-ir.cpp
+++ b/source/slang/slang-ir.cpp
@@ -5027,6 +5027,21 @@ namespace Slang
return val;
}
+ IRGeneric* findSpecializedGeneric(IRSpecialize* specialize)
+ {
+ return as<IRGeneric>(specialize->getBase());
+ }
+
+
+ IRInst* findSpecializeReturnVal(IRSpecialize* specialize)
+ {
+ auto generic = findSpecializedGeneric(specialize);
+ if(!generic)
+ return nullptr;
+
+ return findGenericReturnVal(generic);
+ }
+
IRInst* getResolvedInstForDecorations(IRInst* inst)
{
IRInst* candidate = inst;