Remove two fields from TargetData which are target specific.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5963 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2003-04-26 20:11:09 +00:00
parent 37ec811409
commit 10daaa1416
7 changed files with 4 additions and 19 deletions

View File

@ -24,7 +24,6 @@ class StructLayout;
class TargetData : public ImmutablePass {
bool LittleEndian; // Defaults to false
unsigned char SubWordDataSize; // Defaults to 1 byte (no rounding up)
unsigned char ByteAlignment; // Defaults to 1 bytes
unsigned char ShortAlignment; // Defaults to 2 bytes
unsigned char IntAlignment; // Defaults to 4 bytes
@ -32,7 +31,6 @@ class TargetData : public ImmutablePass {
unsigned char FloatAlignment; // Defaults to 4 bytes
unsigned char DoubleAlignment; // Defaults to 8 bytes
unsigned char PointerSize; // Defaults to 8 bytes
unsigned char IntegerRegSize; // Defaults to PointerSize = 8 bytes
unsigned char PointerAlignment; // Defaults to 8 bytes
AnnotationID AID; // AID for structure layout annotation
@ -40,8 +38,6 @@ class TargetData : public ImmutablePass {
public:
TargetData(const std::string &TargetName = "",
bool LittleEndian = false,
unsigned char SubWordDataSize = 1,
unsigned char IntRegSize = 8,
unsigned char PtrSize = 8,
unsigned char PtrAl = 8, unsigned char DoubleAl = 8,
unsigned char FloatAl = 4, unsigned char LongAl = 8,
@ -55,7 +51,6 @@ public:
bool isBigEndian() const { return !LittleEndian; }
/// Target alignment constraints
unsigned char getSubWordDataSize() const { return SubWordDataSize; }
unsigned char getByteAlignment() const { return ByteAlignment; }
unsigned char getShortAlignment() const { return ShortAlignment; }
unsigned char getIntAlignment() const { return IntAlignment; }
@ -64,7 +59,6 @@ public:
unsigned char getDoubleAlignment() const { return DoubleAlignment; }
unsigned char getPointerAlignment() const { return PointerAlignment; }
unsigned char getPointerSize() const { return PointerSize; }
unsigned char getIntegerRegSize() const { return IntegerRegSize; }
AnnotationID getStructLayoutAID() const { return AID; }
// getTypeSize - Return the number of bytes neccesary to hold the specified

View File

@ -35,12 +35,11 @@ class TargetMachine : public NonCopyableV {
protected:
TargetMachine(const std::string &name, // Can only create subclasses...
bool LittleEndian = false,
unsigned char SubWordSize = 1, unsigned char IntRegSize = 8,
unsigned char PtrSize = 8, unsigned char PtrAl = 8,
unsigned char DoubleAl = 8, unsigned char FloatAl = 4,
unsigned char LongAl = 8, unsigned char IntAl = 4,
unsigned char ShortAl = 2, unsigned char ByteAl = 1)
: Name(name), DataLayout(name, LittleEndian, SubWordSize, IntRegSize,
: Name(name), DataLayout(name, LittleEndian,
PtrSize, PtrAl, DoubleAl, FloatAl, LongAl,
IntAl, ShortAl, ByteAl) {}
public:

View File

@ -25,7 +25,6 @@ Interpreter::Interpreter(Module *M, unsigned Config,
bool DebugMode, bool TraceMode)
: ExecutionEngine(M), ExitCode(0), Debug(DebugMode), Trace(TraceMode),
CurFrame(-1), TD("lli", (Config & TM::EndianMask) == TM::LittleEndian,
1, 4,
(Config & TM::PtrSizeMask) == TM::PtrSize64 ? 8 : 4,
(Config & TM::PtrSizeMask) == TM::PtrSize64 ? 8 : 4,
(Config & TM::PtrSizeMask) == TM::PtrSize64 ? 8 : 4) {

View File

@ -129,7 +129,7 @@ UltraSparcFrameInfo::getDynamicAreaOffset(MachineFunction& mcInfo,
//---------------------------------------------------------------------------
UltraSparc::UltraSparc()
: TargetMachine("UltraSparc-Native", false, 4),
: TargetMachine("UltraSparc-Native", false),
schedInfo(*this),
regInfo(*this),
frameInfo(*this),

View File

@ -82,8 +82,7 @@ Annotation *TargetData::TypeAnFactory(AnnotationID AID, const Annotable *T,
//===----------------------------------------------------------------------===//
TargetData::TargetData(const std::string &TargetName,
bool isLittleEndian, unsigned char SubWordSize,
unsigned char IntRegSize, unsigned char PtrSize,
bool isLittleEndian, unsigned char PtrSize,
unsigned char PtrAl, unsigned char DoubleAl,
unsigned char FloatAl, unsigned char LongAl,
unsigned char IntAl, unsigned char ShortAl,
@ -99,8 +98,6 @@ TargetData::TargetData(const std::string &TargetName,
"ERROR: Tool did not specify a target data to use!");
LittleEndian = isLittleEndian;
SubWordDataSize = SubWordSize;
IntegerRegSize = IntRegSize;
PointerSize = PtrSize;
PointerAlignment = PtrAl;
DoubleAlignment = DoubleAl;
@ -118,8 +115,6 @@ TargetData::TargetData(const std::string &ToolName, const Module *M)
AnnotationManager::registerAnnotationFactory(AID, TypeAnFactory, this);
LittleEndian = M->isLittleEndian();
SubWordDataSize = 1;
IntegerRegSize = 8;
PointerSize = M->has32BitPointers() ? 4 : 8;
PointerAlignment = PointerSize;
DoubleAlignment = PointerSize;

View File

@ -35,7 +35,6 @@ TargetMachine *allocateX86TargetMachine(unsigned Configuration) {
X86TargetMachine::X86TargetMachine(unsigned Config)
: TargetMachine("X86",
(Config & TM::EndianMask) == TM::LittleEndian,
1, 4,
(Config & TM::PtrSizeMask) == TM::PtrSize64 ? 8 : 4,
(Config & TM::PtrSizeMask) == TM::PtrSize64 ? 8 : 4,
(Config & TM::PtrSizeMask) == TM::PtrSize64 ? 8 : 4),

View File

@ -184,8 +184,7 @@ main(int argc, char **argv)
// Build up all of the passes that we want to do to the module...
PassManager Passes;
Passes.add(new TargetData("llc", TD.isLittleEndian(), TD.getSubWordDataSize(),
TD.getIntegerRegSize(), TD.getPointerSize(),
Passes.add(new TargetData("llc", TD.isLittleEndian(), TD.getPointerSize(),
TD.getPointerAlignment(), TD.getDoubleAlignment()));
// Create a new optimization pass for each one specified on the command line