summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
Diffstat (limited to 'source')
-rw-r--r--source/slang/slang-ir-util.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/source/slang/slang-ir-util.cpp b/source/slang/slang-ir-util.cpp
index 4aef7e7ba..58bb7aaf2 100644
--- a/source/slang/slang-ir-util.cpp
+++ b/source/slang/slang-ir-util.cpp
@@ -2162,7 +2162,9 @@ void legalizeDefUse(IRGlobalValueWithCode* func)
{
// If inst is an var, this is easy, we just move it to the
// common dominator.
- var->insertBefore(commonDominator->getTerminator());
+ if (var->getParent() != commonDominator)
+ var->insertBefore(commonDominator->getTerminator());
+
if (shouldInitializeVar)
{
IRBuilder builder(func);