--- a/lib/Basic/Targets/PPC.h +++ b/lib/Basic/Targets/PPC.h @@ -364,11 +364,10 @@ public: if ((Triple.getArch() == llvm::Triple::ppc64le)) { resetDataLayout("e-m:e-i64:64-n32:64"); - ABI = "elfv2"; } else { resetDataLayout("E-m:e-i64:64-n32:64"); - ABI = "elfv1"; } + ABI = "elfv2"; switch (getTriple().getOS()) { case llvm::Triple::FreeBSD: --- a/lib/Driver/ToolChains/Clang.cpp +++ b/lib/Driver/ToolChains/Clang.cpp @@ -1745,7 +1745,7 @@ void Clang::AddPPCTargetArgs(const ArgList &Args, break; } - ABIName = "elfv1"; + ABIName = "elfv2"; break; } case llvm::Triple::ppc64le: