]> granicus.if.org Git - clang/commitdiff
[Driver][Fuchsia] Pass --hash-style=gnu to the linker
authorPetr Hosek <phosek@chromium.org>
Fri, 4 Aug 2017 02:39:27 +0000 (02:39 +0000)
committerPetr Hosek <phosek@chromium.org>
Fri, 4 Aug 2017 02:39:27 +0000 (02:39 +0000)
The .gnu_hash format is superior, and all versions of the Fuchsia
dynamic linker support it.

Differential Revision: https://reviews.llvm.org/D36254

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@310017 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Driver/ToolChains/Fuchsia.cpp
test/Driver/fuchsia.c

index a825c382711484bd950fd82ceda2f87870bab499..368a8bc998e3b29fbfe8e306109789250e38e0d7 100644 (file)
@@ -64,10 +64,12 @@ void fuchsia::Linker::ConstructJob(Compilation &C, const JobAction &JA,
   if (Args.hasArg(options::OPT_s))
     CmdArgs.push_back("-s");
 
-  if (Args.hasArg(options::OPT_r))
+  if (Args.hasArg(options::OPT_r)) {
     CmdArgs.push_back("-r");
-  else
+  } else {
     CmdArgs.push_back("--build-id");
+    CmdArgs.push_back("--hash-style=gnu");
+  }
 
   CmdArgs.push_back("--eh-frame-hdr");
 
index 73154fb4f1508105a6b1a6c241ce306c8624e6d6..5b61bf424f55bb30f4de2f691dc551ac658493bd 100644 (file)
@@ -9,6 +9,7 @@
 // CHECK: "--sysroot=[[SYSROOT]]"
 // CHECK: "-pie"
 // CHECK: "--build-id"
+// CHECK: "--hash-style=gnu"
 // CHECK: "-dynamic-linker" "ld.so.1"
 // CHECK: Scrt1.o
 // CHECK-NOT: crti.o