Allow targets to override description string.

llvm-svn: 54914
This commit is contained in:
Sanjiv Gupta 2008-08-18 10:05:22 +00:00
parent 0d19699e52
commit 14f18f3f91
3 changed files with 5 additions and 4 deletions

View File

@ -43,6 +43,7 @@ protected:
unsigned char LongDoubleWidth, LongDoubleAlign;
unsigned char LongWidth, LongAlign;
unsigned char LongLongWidth, LongLongAlign;
char *DescriptionString;
const llvm::fltSemantics *FloatFormat, *DoubleFormat, *LongDoubleFormat;
@ -197,10 +198,7 @@ public:
}
const char *getTargetDescription() const {
// FIXME !
// Hard code darwin-x86 for now.
return "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:\
32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128";
return DescriptionString;
}
struct GCCRegAlias {

View File

@ -37,6 +37,8 @@ TargetInfo::TargetInfo(const std::string &T) : Triple(T) {
FloatFormat = &llvm::APFloat::IEEEsingle;
DoubleFormat = &llvm::APFloat::IEEEdouble;
LongDoubleFormat = &llvm::APFloat::IEEEdouble;
DescriptionString = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:\
32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128";
}
// Out of line virtual dtor for TargetInfo.

View File

@ -873,6 +873,7 @@ namespace {
// little point on a platform with 8-bit loads.
IntWidth = IntAlign = LongAlign = LongLongAlign = PointerWidth = 16;
PointerAlign = 8;
DescriptionString = "e-p:16:8:8-i8:8:8-i16:8:8-i32:8:8";
}
virtual uint64_t getPointerWidthV(unsigned AddrSpace) const { return 16; }
virtual uint64_t getPointerAlignV(unsigned AddrSpace) const { return 8; }