diff options
author | Petr Hosek <phosek@chromium.org> | 2017-07-18 23:23:16 +0000 |
---|---|---|
committer | Petr Hosek <phosek@chromium.org> | 2017-07-18 23:23:16 +0000 |
commit | dcf3d49a8e077c38ae441ab6ed860af9a89be14e (patch) | |
tree | 935502d5e01203a1e0798546003f006a02378a5f /clang | |
parent | 483506562c00bebd2fa12521ad72880ab098a19c (diff) | |
download | bcm5719-llvm-dcf3d49a8e077c38ae441ab6ed860af9a89be14e.tar.gz bcm5719-llvm-dcf3d49a8e077c38ae441ab6ed860af9a89be14e.zip |
[Driver] Always use -z rodynamic for Fuchsia
Fuchsia uses read-only .dynamic section.
Differential Revision: https://reviews.llvm.org/D35582
llvm-svn: 308390
Diffstat (limited to 'clang')
-rw-r--r-- | clang/lib/Driver/ToolChains/Fuchsia.cpp | 3 | ||||
-rw-r--r-- | clang/test/Driver/fuchsia.c | 1 | ||||
-rw-r--r-- | clang/test/Driver/fuchsia.cpp | 1 |
3 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/Driver/ToolChains/Fuchsia.cpp b/clang/lib/Driver/ToolChains/Fuchsia.cpp index d8b8fe8f0bf..78053aafd16 100644 --- a/clang/lib/Driver/ToolChains/Fuchsia.cpp +++ b/clang/lib/Driver/ToolChains/Fuchsia.cpp @@ -46,6 +46,9 @@ void fuchsia::Linker::ConstructJob(Compilation &C, const JobAction &JA, if (llvm::sys::path::stem(Exec).equals_lower("lld")) { CmdArgs.push_back("-flavor"); CmdArgs.push_back("gnu"); + + CmdArgs.push_back("-z"); + CmdArgs.push_back("rodynamic"); } if (!D.SysRoot.empty()) diff --git a/clang/test/Driver/fuchsia.c b/clang/test/Driver/fuchsia.c index 64d31cc0d38..405086f3f07 100644 --- a/clang/test/Driver/fuchsia.c +++ b/clang/test/Driver/fuchsia.c @@ -5,6 +5,7 @@ // CHECK: "-isysroot" "[[SYSROOT:[^"]+]]" // CHECK: "-internal-externc-isystem" "[[SYSROOT]]{{/|\\\\}}include" // CHECK: {{.*}}lld{{.*}}" "-flavor" "gnu" +// CHECK: "-z" "rodynamic" // CHECK: "--sysroot=[[SYSROOT]]" // CHECK: "-pie" // CHECK: "--build-id" diff --git a/clang/test/Driver/fuchsia.cpp b/clang/test/Driver/fuchsia.cpp index 4c3f7d29acd..20299c34268 100644 --- a/clang/test/Driver/fuchsia.cpp +++ b/clang/test/Driver/fuchsia.cpp @@ -7,6 +7,7 @@ // CHECK: "-internal-isystem" "{{.*[/\\]}}x86_64-fuchsia{{/|\\\\}}include{{/|\\\\}}c++{{/|\\\\}}v1" // CHECK: "-internal-externc-isystem" "[[SYSROOT]]{{/|\\\\}}include" // CHECK: {{.*}}lld{{.*}}" "-flavor" "gnu" +// CHECK: "-z" "rodynamic" // CHECK: "--sysroot=[[SYSROOT]]" // CHECK: "-pie" // CHECK: "--build-id" |