///
ARMTargetMachine::ARMTargetMachine(const Module &M, const std::string &FS)
: TargetMachine("ARM"),
- DataLayout("ARM", false, 4, 4),
+ DataLayout(std::string("ARM"), std::string("E-p:32:32")),
InstrInfo(),
FrameInfo(TargetFrameInfo::StackGrowsDown, 8, 0) {
}
AlphaTargetMachine::AlphaTargetMachine(const Module &M, const std::string &FS)
: TargetMachine("alpha"),
- DataLayout("alpha", true),
+ DataLayout(std::string("alpha"), std::string("e")),
FrameInfo(TargetFrameInfo::StackGrowsDown, 16, 0),
JITInfo(*this),
Subtarget(M, FS)
/// IA64TargetMachine ctor - Create an LP64 architecture model
///
IA64TargetMachine::IA64TargetMachine(const Module &M, const std::string &FS)
- : TargetMachine("IA64"), DataLayout("IA64", true),
+ : TargetMachine("IA64"), DataLayout(std::string("IA64"), std::string("e")),
FrameInfo(TargetFrameInfo::StackGrowsDown, 16, 0),
TLInfo(*this) { // FIXME? check this stuff
}
PPCTargetMachine::PPCTargetMachine(const Module &M, const std::string &FS)
: TargetMachine("PowerPC"),
- DataLayout("PowerPC", false, 4, 4, 4, 4, 4),
+ DataLayout(std::string("PowerPC"), std::string("E-p:32:32-d:64:32-l:64:32")),
Subtarget(M, FS), FrameInfo(*this, false), JITInfo(*this),
TLInfo(*this), InstrItins(Subtarget.getInstrItineraryData()) {
if (TargetDefault == PPCTarget) {
///
SparcTargetMachine::SparcTargetMachine(const Module &M, const std::string &FS)
: TargetMachine("Sparc"),
- DataLayout("Sparc", false, 4, 4),
+ DataLayout(std::string("Sparc"), std::string("e-p:32:32")),
Subtarget(M, FS), InstrInfo(Subtarget),
FrameInfo(TargetFrameInfo::StackGrowsDown, 8, 0) {
}
TargetData::TargetData(const std::string &TargetName,
const std::string &TargetDescription) {
+ assert(!TargetName.empty() &&
+ "ERROR: Tool did not specify a target data to use!");
+
+
std::string temp = TargetDescription;
LittleEndian = false;
ByteAlignment = 1;
BoolAlignment = 1;
- while (temp.length() > 0) {
+ while (!temp.empty()) {
std::string token = getToken(temp, "-");
char signal = getToken(token, ":")[0];
///
X86TargetMachine::X86TargetMachine(const Module &M, const std::string &FS)
: TargetMachine("X86"),
- DataLayout("X86", true, 4, 4, 4, 4, 4),
+ DataLayout(std::string("X86"), std::string("e-p:32:32-d:64:32-l:64:32")),
Subtarget(M, FS),
FrameInfo(TargetFrameInfo::StackGrowsDown,
Subtarget.getStackAlignment(), -4),