summaryrefslogtreecommitdiff
path: root/source/slang/slang-ir.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2020-10-20 19:07:14 -0700
committerGitHub <noreply@github.com>2020-10-20 19:07:14 -0700
commitc0943661e5441bfb996430c4f67fb4dddea9dfcf (patch)
treee0ea914285d750b5c7b390cddf6a9fb9458335f0 /source/slang/slang-ir.cpp
parent624809ab356a54dad6cda9ce4d8f881e392d6e97 (diff)
Bottleneck interface dispatch calls through a single function. (#1584)
Diffstat (limited to 'source/slang/slang-ir.cpp')
-rw-r--r--source/slang/slang-ir.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/source/slang/slang-ir.cpp b/source/slang/slang-ir.cpp
index 6f0cc43e2..778f066dd 100644
--- a/source/slang/slang-ir.cpp
+++ b/source/slang/slang-ir.cpp
@@ -5559,5 +5559,16 @@ namespace Slang
{
return inst->findDecoration<IRBuiltinDecoration>() != nullptr;
}
+ IRFunc* getParentFunc(IRInst* inst)
+ {
+ auto parent = inst->getParent();
+ while (parent)
+ {
+ if (auto func = as<IRFunc>(parent))
+ return func;
+ parent = parent->getParent();
+ }
+ return nullptr;
+ }
} // namespace Slang