Refactor TargetMachine, pushing handling of TargetData into the target-specific subclasses. This has one caller-visible change: getTargetData() now returns a pointer instead of a reference.

This fixes PR 759.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28074 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Owen Anderson
2006-05-03 01:29:57 +00:00
parent 0eb4d6b52e
commit a69571c799
38 changed files with 145 additions and 149 deletions

View File

@ -69,23 +69,9 @@ namespace {
//---------------------------------------------------------------------------
// TargetMachine Class
//
TargetMachine::TargetMachine(const std::string &name, bool LittleEndian,
unsigned char PtrSize, unsigned char PtrAl,
unsigned char DoubleAl, unsigned char FloatAl,
unsigned char LongAl, unsigned char IntAl,
unsigned char ShortAl, unsigned char ByteAl,
unsigned char BoolAl)
: Name(name), DataLayout(name, LittleEndian,
PtrSize, PtrAl, DoubleAl, FloatAl, LongAl,
IntAl, ShortAl, ByteAl, BoolAl) {
}
TargetMachine::TargetMachine(const std::string &name, const TargetData &TD)
: Name(name), DataLayout(TD) {
}
TargetMachine::TargetMachine(const std::string &name, const Module &M)
: Name(name), DataLayout(name, &M) {
: Name(name) {
}
TargetMachine::~TargetMachine() {