JIT: Follow related intervals for single-reg LIR temp intervals (#86632)
authorJakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com>
Wed, 24 May 2023 09:31:26 +0000 (11:31 +0200)
committerGitHub <noreply@github.com>
Wed, 24 May 2023 09:31:26 +0000 (11:31 +0200)
src/coreclr/jit/lsra.cpp

index 7156fb6..6a273e3 100644 (file)
@@ -12278,8 +12278,7 @@ regMaskTP LinearScan::RegisterSelection::select(Interval*    currentInterval,
                 //
                 bool thisIsSingleReg = isSingleRegister(newRelatedPreferences);
                 if (!thisIsSingleReg ||
-                    (finalRelatedInterval->isLocalVar &&
-                     linearScan->isFree(linearScan->getRegisterRecord(genRegNumFromMask(newRelatedPreferences)))))
+                    linearScan->isFree(linearScan->getRegisterRecord(genRegNumFromMask(newRelatedPreferences))))
                 {
                     relatedPreferences = newRelatedPreferences;
                     // If this Interval has a downstream def without a single-register preference, continue to iterate.