summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Atanasyan <satanasyan@mips.com>2012-04-12 19:59:24 +0000
committerSimon Atanasyan <satanasyan@mips.com>2012-04-12 19:59:24 +0000
commitce74e9d8968375f1fd60b1fc9c7938bd07dd172f (patch)
tree7dc2d3eec164afe19e1ab61ab37fe4dfcf661278
parent3e869f002c5ecfbbe5c3596026b2fc73421b2f91 (diff)
downloadbcm5719-llvm-ce74e9d8968375f1fd60b1fc9c7938bd07dd172f.tar.gz
bcm5719-llvm-ce74e9d8968375f1fd60b1fc9c7938bd07dd172f.zip
MIPS: Initialize MIPS CPU's name by default value.
Otherwise MipsTargetInfoBase::getDefaultFeatures() might return an invalid features set with an empty feature name. llvm-svn: 154606
-rw-r--r--clang/lib/Basic/Targets.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index 8cf27b301e1..1ad37c4e572 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -3449,8 +3449,11 @@ protected:
std::string ABI;
public:
- MipsTargetInfoBase(const std::string& triple, const std::string& ABIStr)
+ MipsTargetInfoBase(const std::string& triple,
+ const std::string& ABIStr,
+ const std::string& CPUStr)
: TargetInfo(triple),
+ CPU(CPUStr),
SoftFloat(false), SingleFloat(false),
ABI(ABIStr)
{}
@@ -3575,7 +3578,7 @@ public:
class Mips32TargetInfoBase : public MipsTargetInfoBase {
public:
Mips32TargetInfoBase(const std::string& triple) :
- MipsTargetInfoBase(triple, "o32") {
+ MipsTargetInfoBase(triple, "o32", "mips32") {
SizeType = UnsignedInt;
PtrDiffType = SignedInt;
}
@@ -3679,7 +3682,7 @@ class Mips64TargetInfoBase : public MipsTargetInfoBase {
virtual void SetDescriptionString(const std::string &Name) = 0;
public:
Mips64TargetInfoBase(const std::string& triple) :
- MipsTargetInfoBase(triple, "n64") {
+ MipsTargetInfoBase(triple, "n64", "mips64") {
LongWidth = LongAlign = 64;
PointerWidth = PointerAlign = 64;
LongDoubleWidth = LongDoubleAlign = 128;
OpenPOWER on IntegriCloud