diff options
| author | Joerg Sonnenberger <joerg@bec.de> | 2014-03-13 00:42:01 +0000 |
|---|---|---|
| committer | Joerg Sonnenberger <joerg@bec.de> | 2014-03-13 00:42:01 +0000 |
| commit | 52be0b4cf42d9a6e5320845f0d3c71eb4ea0d343 (patch) | |
| tree | c37982cb31cb2ba0223c7e0c8a56ad0799b21fd0 | |
| parent | aae4058453ea5df82c3e9f29715e5847135124e4 (diff) | |
| download | bcm5719-llvm-52be0b4cf42d9a6e5320845f0d3c71eb4ea0d343.tar.gz bcm5719-llvm-52be0b4cf42d9a6e5320845f0d3c71eb4ea0d343.zip | |
Always use --eh-frame-hdr on NetBSD, even for -static.
llvm-svn: 203742
| -rw-r--r-- | clang/lib/Driver/Tools.cpp | 2 | ||||
| -rw-r--r-- | clang/test/Driver/netbsd.c | 20 |
2 files changed, 11 insertions, 11 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index cc944885ad4..72f781d3cff 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -6326,12 +6326,12 @@ void netbsd::Link::ConstructJob(Compilation &C, const JobAction &JA, if (!D.SysRoot.empty()) CmdArgs.push_back(Args.MakeArgString("--sysroot=" + D.SysRoot)); + CmdArgs.push_back("--eh-frame-hdr"); if (Args.hasArg(options::OPT_static)) { CmdArgs.push_back("-Bstatic"); } else { if (Args.hasArg(options::OPT_rdynamic)) CmdArgs.push_back("-export-dynamic"); - CmdArgs.push_back("--eh-frame-hdr"); if (Args.hasArg(options::OPT_shared)) { CmdArgs.push_back("-Bshareable"); } else { diff --git a/clang/test/Driver/netbsd.c b/clang/test/Driver/netbsd.c index 9cece622115..b300bf45779 100644 --- a/clang/test/Driver/netbsd.c +++ b/clang/test/Driver/netbsd.c @@ -159,47 +159,47 @@ // SPARC64: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o" // S-X86_64: clang{{.*}}" "-cc1" "-triple" "x86_64--netbsd" -// S-X86_64: ld{{.*}}" "-Bstatic" +// S-X86_64: ld{{.*}}" "--eh-frame-hdr" "-Bstatic" // S-X86_64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o" // S-X86_64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc" // S-X86_64: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o" // S-X86_64-7: clang{{.*}}" "-cc1" "-triple" "x86_64--netbsd7.0.0" -// S-X86_64-7: ld{{.*}}" "-Bstatic" +// S-X86_64-7: ld{{.*}}" "--eh-frame-hdr" "-Bstatic" // S-X86_64-7: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o" // S-X86_64-7: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc" // S-X86_64-7: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o" // S-X86_64-6: clang{{.*}}" "-cc1" "-triple" "x86_64--netbsd6.0.0" -// S-X86_64-6: ld{{.*}}" "-Bstatic" +// S-X86_64-6: ld{{.*}}" "--eh-frame-hdr" "-Bstatic" // S-X86_64-6: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o" // S-X86_64-6: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc" // S-X86_64-6: "-lgcc_eh" "-lc" "-lgcc" // S-X86_64-6: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o" // S-AARCH64: clang{{.*}}" "-cc1" "-triple" "aarch64--netbsd" -// S-AARCH64: ld{{.*}}" "-Bstatic" +// S-AARCH64: ld{{.*}}" "--eh-frame-hdr" "-Bstatic" // S-AARCH64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o" // S-AARCH64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc" // S-AARCH64: "-lgcc_eh" "-lc" "-lgcc" // S-AARCH64: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o" // S-AARCH64-7: clang{{.*}}" "-cc1" "-triple" "aarch64--netbsd7.0.0" -// S-AARCH64-7: ld{{.*}}" "-Bstatic" +// S-AARCH64-7: ld{{.*}}" "--eh-frame-hdr" "-Bstatic" // S-AARCH64-7: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o" // S-AARCH64-7: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc" // S-AARCH64-7: "-lgcc_eh" "-lc" "-lgcc" // S-AARCH64-7: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o" // S-ARM: clang{{.*}}" "-cc1" "-triple" "armv5e--netbsd-eabi" -// S-ARM: ld{{.*}}" "-Bstatic" +// S-ARM: ld{{.*}}" "--eh-frame-hdr" "-Bstatic" // S-ARM: "-m" "armelf_nbsd_eabi" // S-ARM: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o" // S-ARM: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc" // S-ARM: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o" // S-ARM-7: clang{{.*}}" "-cc1" "-triple" "armv5e--netbsd7.0.0-eabi" -// S-ARM-7: ld{{.*}}" "-Bstatic" +// S-ARM-7: ld{{.*}}" "--eh-frame-hdr" "-Bstatic" // S-ARM-7: "-m" "armelf_nbsd_eabi" // S-ARM-7: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o" // S-ARM-7: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc" @@ -207,7 +207,7 @@ // S-ARM-7: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o" // S-ARM-6: clang{{.*}}" "-cc1" "-triple" "armv5e--netbsd6.0.0-eabi" -// S-ARM-6: ld{{.*}}" "-Bstatic" +// S-ARM-6: ld{{.*}}" "--eh-frame-hdr" "-Bstatic" // S-ARM-6: "-m" "armelf_nbsd_eabi" // S-ARM-6: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o" // S-ARM-6: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc" @@ -215,7 +215,7 @@ // S-ARM-6: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o" // S-SPARC: clang{{.*}}" "-cc1" "-triple" "sparc--netbsd" -// S-SPARC: ld{{.*}}" "-Bstatic" +// S-SPARC: ld{{.*}}" "--eh-frame-hdr" "-Bstatic" // S-SPARC: "-m" "elf32_sparc" // S-SPARC: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o" // S-SPARC: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc" @@ -223,7 +223,7 @@ // S-SPARC: "{{.*}}/usr/lib{{/|\\\\}}crtend.o" "{{.*}}/usr/lib{{/|\\\\}}crtn.o" // S-SPARC64: clang{{.*}}" "-cc1" "-triple" "sparc64--netbsd" -// S-SPARC64: ld{{.*}}" "-Bstatic" +// S-SPARC64: ld{{.*}}" "--eh-frame-hdr" "-Bstatic" // S-SPARC64: "-m" "elf64_sparc" // S-SPARC64: "-o" "a.out" "{{.*}}/usr/lib{{/|\\\\}}crt0.o" "{{.*}}/usr/lib{{/|\\\\}}crti.o" // S-SPARC64: "{{.*}}/usr/lib{{/|\\\\}}crtbegin.o" "{{.*}}.o" "-lc" |

