diff options
| author | Yong He <yonghe@outlook.com> | 2023-04-28 23:28:23 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-04-28 23:28:23 -0700 |
| commit | c571bcb025009f9c662e8d631fa49dbfed560287 (patch) | |
| tree | 3ade836c28920210b3dc1af5e8447d4804dc03ad /source/slang/slang-ir-util.cpp | |
| parent | 5adecbe837d27cf4e0a554ae13a0338743a8cb4b (diff) | |
SSA Register Allocation improvements. (#2857)
* SSA Register Allocation improvements.
* Fix.
* Rename `Use`->`UseOrPseudoUse`.
---------
Co-authored-by: Yong He <yhe@nvidia.com>
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; |
