From e3860e5be5f3bbbfbe27a097aa38ba21f08e3961 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 27 Aug 2001 15:51:16 +0000 Subject: [PATCH] Convert to use the new factored out TargetData class git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@381 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/TargetMachine/Sparc/Sparc.cpp | 13 ++----------- .../TargetMachine/Sparc/SparcInstrSelection.cpp | 12 +++++------- 2 files changed, 7 insertions(+), 18 deletions(-) diff --git a/lib/CodeGen/TargetMachine/Sparc/Sparc.cpp b/lib/CodeGen/TargetMachine/Sparc/Sparc.cpp index a9ea1da02cc..4707b373b95 100644 --- a/lib/CodeGen/TargetMachine/Sparc/Sparc.cpp +++ b/lib/CodeGen/TargetMachine/Sparc/Sparc.cpp @@ -27,23 +27,14 @@ //--------------------------------------------------------------------------- UltraSparc::UltraSparc() - : TargetMachine(new UltraSparcInstrInfo) -{ + : TargetMachine("UltraSparc-Native", new UltraSparcInstrInfo()) { optSizeForSubWordData = 4; - intSize = 4; - floatSize = 4; - longSize = 8; - doubleSize = 8; - longDoubleSize = 16; - pointerSize = 8; minMemOpWordSize = 8; maxAtomicMemOpWordSize = 8; zeroRegNum = 0; // %g0 always gives 0 on Sparc } -UltraSparc::~UltraSparc() -{ - delete (UltraSparcInstrInfo*) machineInstrInfo; +UltraSparc::~UltraSparc() { } //**************************************************************************/ diff --git a/lib/CodeGen/TargetMachine/Sparc/SparcInstrSelection.cpp b/lib/CodeGen/TargetMachine/Sparc/SparcInstrSelection.cpp index 95cc0ec62be..83962537ce8 100644 --- a/lib/CodeGen/TargetMachine/Sparc/SparcInstrSelection.cpp +++ b/lib/CodeGen/TargetMachine/Sparc/SparcInstrSelection.cpp @@ -1347,8 +1347,7 @@ SetMemOperands_Internal(MachineInstr* minstr, isConstantOffset = true; // Compute the offset value using the index vector - offset = MemAccessInst::getIndexedOfsetForTarget(ptrType, - idxVec, target); + offset = target.DataLayout.getIndexedOffset(ptrType, idxVec); } else { @@ -1359,13 +1358,12 @@ SetMemOperands_Internal(MachineInstr* minstr, assert(arrayOffsetVal != NULL && "Expect to be given Value* for array offsets"); - if (arrayOffsetVal->getValueType() == Value::ConstantVal) - { + if (ConstPoolVal *CPV = arrayOffsetVal->castConstant()) { isConstantOffset = true; // always constant for structs assert(arrayOffsetVal->getType()->isIntegral()); - offset = (arrayOffsetVal->getType()->isSigned()) - ? ((ConstPoolSInt*) arrayOffsetVal)->getValue() - : (int64_t) ((ConstPoolUInt*) arrayOffsetVal)->getValue(); + offset = (CPV->getType()->isSigned()) + ? ((ConstPoolSInt*)CPV)->getValue() + : (int64_t) ((ConstPoolUInt*)CPV)->getValue(); } else { -- 2.34.1