summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver
diff options
context:
space:
mode:
authorFangrui Song <maskray@google.com>2020-01-07 14:21:39 -0800
committerFangrui Song <maskray@google.com>2020-01-07 15:09:22 -0800
commit907a0cadb2c807d86d3150f2397e6697ba4676df (patch)
tree00c325bbb74bce1553cccfd78ec6a873a1af7e69 /clang/lib/Driver
parentb6598bcf4b81ed8fb66a7c576a81e422750b9329 (diff)
downloadbcm5719-llvm-907a0cadb2c807d86d3150f2397e6697ba4676df.tar.gz
bcm5719-llvm-907a0cadb2c807d86d3150f2397e6697ba4676df.zip
[PowerPC] Default ppc64 linux-gnu/freebsd to -fno-PIC
According to D53384, the default was switched from -fno-PIC to -fPIC to work around a -fsanitize=leak bug on big-endian. This gratuitous difference between little-endian and big-endian is undesired, and not acceptable on powerpc64-unknown-freebsd. If -fsanitize=leak still has the problem, we should consider defaulting to -fPIC/-fPIE only when -fsanitize=leak is specified (see SanitizerArgs::requiresPIE()) powerpc64-ibm-aix is unaffected: it still defaults to -fPIC. powerpc64-linux-musl is unaffected (-fPIE since D39588): it still defaults to -fPIE. Reviewed By: #powerpc, jhibbits Differential Revision: https://reviews.llvm.org/D72363
Diffstat (limited to 'clang/lib/Driver')
-rw-r--r--clang/lib/Driver/ToolChains/Gnu.cpp3
1 files changed, 0 insertions, 3 deletions
diff --git a/clang/lib/Driver/ToolChains/Gnu.cpp b/clang/lib/Driver/ToolChains/Gnu.cpp
index 91076709fd7..da197e47662 100644
--- a/clang/lib/Driver/ToolChains/Gnu.cpp
+++ b/clang/lib/Driver/ToolChains/Gnu.cpp
@@ -2615,9 +2615,6 @@ bool Generic_GCC::isPICDefault() const {
switch (getArch()) {
case llvm::Triple::x86_64:
return getTriple().isOSWindows();
- case llvm::Triple::ppc64:
- // Big endian PPC is PIC by default
- return !getTriple().isOSBinFormatMachO() && !getTriple().isMacOSX();
case llvm::Triple::mips64:
case llvm::Triple::mips64el:
return true;
OpenPOWER on IntegriCloud