diff options
author | Justin Hibbits <jhibbits@FreeBSD.org> | 2019-06-25 02:35:22 +0000 |
---|---|---|
committer | Justin Hibbits <jhibbits@FreeBSD.org> | 2019-06-25 02:35:22 +0000 |
commit | e861dab451869582008237a8c11e97348d2440ce (patch) | |
tree | 706a2849bdd52ce4bd941877d552b4aea3fcce3a /contrib/llvm/tools | |
parent | f62da49b2f17f279ddba946bf4bc7ba7247273a5 (diff) |
powerpc: Transition to Secure-PLT, like most other OSs (Toolchain part)
Summary:
Toolchain follow-up to r349350. LLVM patches will be submitted upstream for
9.0 as well.
The bsd.cpu.mk change is required because GNU ld assumes BSS-PLT if it
cannot determine for certain that it needs Secure-PLT, and some binaries do
not compile in such a way to make it know to use Secure-PLT.
Reviewed By: nwhitehorn, bdragon, pfg
Differential Revision: https://reviews.freebsd.org/D20598
Notes
Notes:
svn path=/head/; revision=349351
Diffstat (limited to 'contrib/llvm/tools')
-rw-r--r-- | contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp b/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp index 791f1206cf25..a85ff8d30a2e 100644 --- a/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp +++ b/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/PPC.cpp @@ -116,7 +116,8 @@ ppc::ReadGOTPtrMode ppc::getPPCReadGOTPtrMode(const Driver &D, const llvm::Tripl const ArgList &Args) { if (Args.getLastArg(options::OPT_msecure_plt)) return ppc::ReadGOTPtrMode::SecurePlt; - if (Triple.isOSOpenBSD()) + if ((Triple.isOSFreeBSD() && Triple.getOSMajorVersion() >= 13) || + Triple.isOSOpenBSD()) return ppc::ReadGOTPtrMode::SecurePlt; else return ppc::ReadGOTPtrMode::Bss; |