For PR761:

The Module::setEndianness and Module::setPointerSize methods have been
removed. Instead you can get/set the DataLayout. Adjust thise accordingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33530 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer
2007-01-26 08:11:39 +00:00
parent aacc35a794
commit 26f238589f
4 changed files with 28 additions and 42 deletions

View File

@@ -189,8 +189,8 @@ void TargetData::init(const std::string &TargetDescription) {
}
}
// Unless explicitly specified, the alignments for longs and doubles is capped by
// pointer size.
// Unless explicitly specified, the alignments for longs and doubles is
// capped by pointer size.
if (LongABIAlignment == 0)
LongABIAlignment = LongPrefAlignment = PointerMemSize;
if (DoubleABIAlignment == 0)
@@ -198,25 +198,7 @@ void TargetData::init(const std::string &TargetDescription) {
}
TargetData::TargetData(const Module *M) {
LittleEndian = M->getEndianness() != Module::BigEndian;
PointerMemSize = M->getPointerSize() != Module::Pointer64 ? 4 : 8;
PointerABIAlignment = PointerMemSize;
DoubleABIAlignment = PointerMemSize;
FloatABIAlignment = 4;
LongABIAlignment = PointerMemSize;
IntABIAlignment = 4;
ShortABIAlignment = 2;
ByteABIAlignment = 1;
BoolABIAlignment = 1;
BoolPrefAlignment = BoolABIAlignment;
BytePrefAlignment = ByteABIAlignment;
ShortPrefAlignment = ShortABIAlignment;
IntPrefAlignment = IntABIAlignment;
LongPrefAlignment = LongABIAlignment;
FloatPrefAlignment = FloatABIAlignment;
DoublePrefAlignment = DoubleABIAlignment;
PointerPrefAlignment = PointerABIAlignment;
AggMinPrefAlignment = 0;
init(M->getDataLayout());
}
/// Layouts - The lazy cache of structure layout information maintained by