Change the position of unassignPhysReg()
authorsjsujinkim <sjsujin.kim@samsung.com>
Mon, 21 Aug 2017 01:57:23 +0000 (10:57 +0900)
committersjsujinkim <sjsujin.kim@samsung.com>
Mon, 21 Aug 2017 01:57:23 +0000 (10:57 +0900)
src/jit/lsra.cpp

index e2d79a9..67e3658 100644 (file)
@@ -5681,8 +5681,8 @@ regNumber LinearScan::tryAllocateFreeReg(Interval* currentInterval, RefPosition*
     {
         if (isAssigned(availablePhysRegInterval ARM_ARG(currentInterval->registerType)))
         {
-            unassignPhysReg(availablePhysRegInterval ARM_ARG(currentInterval->registerType));
             intervalToUnassign = availablePhysRegInterval->assignedInterval;
+            unassignPhysReg(availablePhysRegInterval ARM_ARG(currentInterval->registerType));
 
             if ((bestScore & VALUE_AVAILABLE) != 0 && intervalToUnassign != nullptr)
             {