diff options
Diffstat (limited to 'source/slang/slang-ir-util.cpp')
| -rw-r--r-- | source/slang/slang-ir-util.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/source/slang/slang-ir-util.cpp b/source/slang/slang-ir-util.cpp index a69e13562..95240a26c 100644 --- a/source/slang/slang-ir-util.cpp +++ b/source/slang/slang-ir-util.cpp @@ -759,6 +759,21 @@ void removePhiArgs(IRInst* phiParam) } } +int getParamIndexInBlock(IRParam* paramInst) +{ + auto block = as<IRBlock>(paramInst->getParent()); + if (!block) + return -1; + int paramIndex = 0; + for (auto param : block->getParams()) + { + if (param == paramInst) + return paramIndex; + paramIndex++; + } + return -1; +} + struct GenericChildrenMigrationContextImpl { IRCloneEnv cloneEnv; |
