From 6a3db8c117b75ebd87d5e7fff213570230d6c436 Mon Sep 17 00:00:00 2001 From: Ruchira Sasanka Date: Mon, 7 Jan 2002 21:09:06 +0000 Subject: [PATCH] PhyRegAlloc.cpp: Added temp area resetting before every call git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1499 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/RegAlloc/PhyRegAlloc.cpp | 3 ++- lib/CodeGen/RegAlloc/RegClass.cpp | 2 +- lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp | 3 ++- lib/Target/SparcV9/RegAlloc/RegClass.cpp | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp b/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp index dc1c8690ee6..7d6fbb7cc98 100644 --- a/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp +++ b/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp @@ -466,7 +466,8 @@ void PhyRegAlloc::updateMachineCode() // Tmp stack poistions are needed by some calls that have spilled args // So reset it before we call each such method - // TODO: mcInfo.popAllTempValues(TM); + // + mcInfo.popAllTempValues(TM); if( (TM.getInstrInfo()).isCall( Opcode ) ) MRI.colorCallArgs( MInst, LRI, AI, *this, *BBI ); diff --git a/lib/CodeGen/RegAlloc/RegClass.cpp b/lib/CodeGen/RegAlloc/RegClass.cpp index 22466435946..3ee79e328e8 100644 --- a/lib/CodeGen/RegAlloc/RegClass.cpp +++ b/lib/CodeGen/RegAlloc/RegClass.cpp @@ -165,7 +165,7 @@ IGNode * RegClass::getIGNodeWithMinSpillCost() if( ! IGNode->isOnStack() ) { - unsigned SpillCost = IGNode->getParentLR()->getSpillCost(); + long SpillCost = (long) IGNode->getParentLR()->getSpillCost(); if( MinSpillCost == -1) { // for the first IG node MinSpillCost = SpillCost; diff --git a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp index dc1c8690ee6..7d6fbb7cc98 100644 --- a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp +++ b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp @@ -466,7 +466,8 @@ void PhyRegAlloc::updateMachineCode() // Tmp stack poistions are needed by some calls that have spilled args // So reset it before we call each such method - // TODO: mcInfo.popAllTempValues(TM); + // + mcInfo.popAllTempValues(TM); if( (TM.getInstrInfo()).isCall( Opcode ) ) MRI.colorCallArgs( MInst, LRI, AI, *this, *BBI ); diff --git a/lib/Target/SparcV9/RegAlloc/RegClass.cpp b/lib/Target/SparcV9/RegAlloc/RegClass.cpp index 22466435946..3ee79e328e8 100644 --- a/lib/Target/SparcV9/RegAlloc/RegClass.cpp +++ b/lib/Target/SparcV9/RegAlloc/RegClass.cpp @@ -165,7 +165,7 @@ IGNode * RegClass::getIGNodeWithMinSpillCost() if( ! IGNode->isOnStack() ) { - unsigned SpillCost = IGNode->getParentLR()->getSpillCost(); + long SpillCost = (long) IGNode->getParentLR()->getSpillCost(); if( MinSpillCost == -1) { // for the first IG node MinSpillCost = SpillCost;