From 750d7230621010d2290e180bf3e214a71b89a8ac Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Thu, 12 Aug 2004 18:29:05 +0000 Subject: [PATCH] Instead of a virtual method call, lets try a direct constant reference git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15696 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/SparcV9/SparcV9BurgISel.cpp | 6 +++--- lib/Target/SparcV9/SparcV9PrologEpilogInserter.cpp | 4 ++-- lib/Target/SparcV9/SparcV9RegInfo.cpp | 5 +++-- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/lib/Target/SparcV9/SparcV9BurgISel.cpp b/lib/Target/SparcV9/SparcV9BurgISel.cpp index 3716edb625d..037cb32c20d 100644 --- a/lib/Target/SparcV9/SparcV9BurgISel.cpp +++ b/lib/Target/SparcV9/SparcV9BurgISel.cpp @@ -2575,7 +2575,7 @@ CreateCodeForFixedSizeAlloca(const TargetMachine& target, paddedSize, tsize * numElements); - if (((int)paddedSize) > 8 * target.getFrameInfo()->getSizeOfEachArgOnStack()|| + if (((int)paddedSize) > 8 * SparcV9FrameInfo::SizeOfEachArgOnStack || !target.getInstrInfo()->constantFitsInImmedField(V9::LDXi,offsetFromFP)) { CreateCodeForVariableSizeAlloca(target, result, tsize, ConstantSInt::get(Type::IntTy,numElements), @@ -3992,7 +3992,7 @@ void GetInstructionsByRule(InstructionNode* subtreeRoot, int ruleForNode, // not need to be adjusted. int argOffset = frameInfo.getOutgoingArgOffset(MF, argNo); if (argType->isFloatingPoint()) { - unsigned slotSize = frameInfo.getSizeOfEachArgOnStack(); + unsigned slotSize = SparcV9FrameInfo::SizeOfEachArgOnStack; assert(argSize <= slotSize && "Insufficient slot size!"); argOffset += slotSize - argSize; } @@ -4132,7 +4132,7 @@ void GetInstructionsByRule(InstructionNode* subtreeRoot, int ruleForNode, Instruction* vaNextI = subtreeRoot->getInstruction(); assert(target.getTargetData().getTypeSize(vaNextI->getType()) <= 8 && "We assumed that all LLVM parameter types <= 8 bytes!"); - int argSize = target.getFrameInfo()->getSizeOfEachArgOnStack(); + unsigned argSize = SparcV9FrameInfo::SizeOfEachArgOnStack; mvec.push_back(BuildMI(V9::ADDi, 3).addReg(vaNextI->getOperand(0)). addSImm(argSize).addRegDef(vaNextI)); break; diff --git a/lib/Target/SparcV9/SparcV9PrologEpilogInserter.cpp b/lib/Target/SparcV9/SparcV9PrologEpilogInserter.cpp index f2e03589329..5a708083272 100644 --- a/lib/Target/SparcV9/SparcV9PrologEpilogInserter.cpp +++ b/lib/Target/SparcV9/SparcV9PrologEpilogInserter.cpp @@ -58,8 +58,8 @@ static unsigned getStaticStackSize (MachineFunction &MF) { unsigned staticStackSize = MF.getInfo()->getStaticStackSize(); - if (staticStackSize < (unsigned) frameInfo.getMinStackFrameSize()) - staticStackSize = (unsigned) frameInfo.getMinStackFrameSize(); + if (staticStackSize < SparcV9FrameInfo::MinStackFrameSize) + staticStackSize = SparcV9FrameInfo::MinStackFrameSize; if (unsigned padsz = staticStackSize % SparcV9FrameInfo::StackFrameSizeAlignment) staticStackSize += SparcV9FrameInfo::StackFrameSizeAlignment - padsz; diff --git a/lib/Target/SparcV9/SparcV9RegInfo.cpp b/lib/Target/SparcV9/SparcV9RegInfo.cpp index e3e8a712f49..b01c4fcfc72 100644 --- a/lib/Target/SparcV9/SparcV9RegInfo.cpp +++ b/lib/Target/SparcV9/SparcV9RegInfo.cpp @@ -25,6 +25,7 @@ #include "SparcV9Internals.h" #include "SparcV9RegClassInfo.h" #include "SparcV9RegInfo.h" +#include "SparcV9FrameInfo.h" #include "SparcV9TargetMachine.h" #include "SparcV9TmpInstr.h" #include @@ -492,7 +493,7 @@ void SparcV9RegInfo::colorMethodArgs(const Function *Meth, // a full double-word so the offset does not need to be adjusted. if (regType == FPSingleRegType) { unsigned argSize = target.getTargetData().getTypeSize(LR->getType()); - unsigned slotSize = frameInfo.getSizeOfEachArgOnStack(); + unsigned slotSize = SparcV9FrameInfo::SizeOfEachArgOnStack; assert(argSize <= slotSize && "Insufficient slot size!"); offsetFromFP += slotSize - argSize; } @@ -550,7 +551,7 @@ void SparcV9RegInfo::colorMethodArgs(const Function *Meth, // a full double-word so the offset does not need to be adjusted. if (regType == FPSingleRegType) { unsigned argSize = target.getTargetData().getTypeSize(LR->getType()); - unsigned slotSize = frameInfo.getSizeOfEachArgOnStack(); + unsigned slotSize = SparcV9FrameInfo::SizeOfEachArgOnStack; assert(argSize <= slotSize && "Insufficient slot size!"); offsetFromFP += slotSize - argSize; } -- 2.34.1