Do not set the last use bit on UVR ref positions.
authorPat Gavlin <pagavlin@microsoft.com>
Thu, 9 Mar 2017 06:10:36 +0000 (22:10 -0800)
committerPat Gavlin <pagavlin@microsoft.com>
Thu, 9 Mar 2017 06:10:36 +0000 (22:10 -0800)
Commit migrated from https://github.com/dotnet/coreclr/commit/d9580cb54e121cc0e53b7c7554996189ad085738

src/coreclr/src/jit/lsra.cpp

index cf817ca..e7c1c83 100644 (file)
@@ -734,7 +734,7 @@ void LinearScan::associateRefPosWithInterval(RefPosition* rp)
                 rp->lastUse = (rp->refType != RefTypeExpUse) && (rp->refType != RefTypeParamDef) &&
                               (rp->refType != RefTypeZeroInit) && !extendLifetimes();
             }
-            else if (RefTypeIsUse(rp->refType))
+            else if (rp->refType == RefTypeUse)
             {
                 // Ensure that we have consistent def/use on SDSU temps.
                 // However, in the case of a non-commutative rmw def, we must avoid over-constraining