diff options
| author | Simon Atanasyan <simon@atanasyan.com> | 2013-02-27 14:55:49 +0000 |
|---|---|---|
| committer | Simon Atanasyan <simon@atanasyan.com> | 2013-02-27 14:55:49 +0000 |
| commit | 0da400cf92e30fc5d231a8ad248a829e5167c3c2 (patch) | |
| tree | c037483e8f5434c76818004f18692a620a574916 /clang/lib/Basic/Targets.cpp | |
| parent | 57cbe5c790256791a58c0e394641b0136131d997 (diff) | |
| download | bcm5719-llvm-0da400cf92e30fc5d231a8ad248a829e5167c3c2.tar.gz bcm5719-llvm-0da400cf92e30fc5d231a8ad248a829e5167c3c2.zip | |
[Mips] Add two new aliases for MIPS ABI names 32 (means o32 abi) and 64
(means n64 abi) to improve compatibility with GNU tools.
Patch by Jia Liu <proljc@gmail.com>.
llvm-svn: 176187
Diffstat (limited to 'clang/lib/Basic/Targets.cpp')
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index ec57ca3609f..24a69ee22ba 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -4411,6 +4411,12 @@ public: Name == "mips16" || Name == "dsp" || Name == "dspr2") { Features[Name] = Enabled; return true; + } else if (Name == "32") { + Features["o32"] = Enabled; + return true; + } else if (Name == "64") { + Features["n64"] = Enabled; + return true; } return false; } @@ -4467,6 +4473,9 @@ public: if ((Name == "o32") || (Name == "eabi")) { ABI = Name; return true; + } else if (Name == "32") { + ABI = "o32"; + return true; } else return false; } @@ -4571,18 +4580,19 @@ public: } virtual bool setABI(const std::string &Name) { SetDescriptionString(Name); - - if (Name != "n32" && Name != "n64") - return false; - - ABI = Name; - if (Name == "n32") { LongWidth = LongAlign = 32; PointerWidth = PointerAlign = 32; - } - - return true; + ABI = Name; + return true; + } else if (Name == "n64") { + ABI = Name; + return true; + } else if (Name == "64") { + ABI = "n64"; + return true; + } else + return false; } virtual void getTargetDefines(const LangOptions &Opts, MacroBuilder &Builder) const { |

