diff options
| author | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-03-06 20:47:19 +0000 |
|---|---|---|
| committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-03-06 20:47:19 +0000 |
| commit | 29b82b631dc3271abbddd99ffc923c097c4959d9 (patch) | |
| tree | d608bb3806cc4d3f8c80197e4902407f1f17fef6 /clang/lib/Driver/Tools.cpp | |
| parent | 35476334e994d15f775f187a51d6acdf9ae3c4a0 (diff) | |
| download | bcm5719-llvm-29b82b631dc3271abbddd99ffc923c097c4959d9.tar.gz bcm5719-llvm-29b82b631dc3271abbddd99ffc923c097c4959d9.zip | |
Update for LLVM API change
Use the new getObjectFormat/setObjectFormat instead of Environment now that the
file format is a separate field.
llvm-svn: 203161
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
| -rw-r--r-- | clang/lib/Driver/Tools.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index 70c06466bfd..86a62376abd 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -666,10 +666,6 @@ StringRef tools::arm::getARMFloatABI(const Driver &D, const ArgList &Args, // EABI is always AAPCS, and if it was not marked 'hard', it's softfp FloatABI = "softfp"; break; - case llvm::Triple::MachO: { - FloatABI = "soft"; - break; - } case llvm::Triple::Android: { std::string ArchName = arm::getLLVMArchSuffixForARM(arm::getARMTargetCPU(Args, Triple)); @@ -682,6 +678,10 @@ StringRef tools::arm::getARMFloatABI(const Driver &D, const ArgList &Args, default: // Assume "soft", but warn the user we are guessing. FloatABI = "soft"; + // *-macho defaults to "soft" + if (Triple.getOS() == llvm::Triple::UnknownOS && + Triple.getObjectFormat() == llvm::Triple::MachO) + break; D.Diag(diag::warn_drv_assuming_mfloat_abi_is) << "soft"; break; } @@ -761,7 +761,8 @@ void Clang::AddARMTargetArgs(const ArgList &Args, // The backend is hardwired to assume AAPCS for M-class processors, ensure // the frontend matches that. if (Triple.getEnvironment() == llvm::Triple::EABI || - Triple.getEnvironment() == llvm::Triple::MachO || + (Triple.getOS() == llvm::Triple::UnknownOS && + Triple.getObjectFormat() == llvm::Triple::MachO) || StringRef(CPUName).startswith("cortex-m")) { ABIName = "aapcs"; } else { @@ -4885,7 +4886,7 @@ void darwin::setTripleTypeForMachOArchName(llvm::Triple &T, StringRef Str) { T.setArchName(Str); else if (Str == "armv6m" || Str == "armv7m" || Str == "armv7em") { T.setOS(llvm::Triple::UnknownOS); - T.setEnvironment(llvm::Triple::MachO); + T.setObjectFormat(llvm::Triple::MachO); } } |

