[PATCH] D49898: Make test/Driver/baremetal.cpp work with linkers other than lld

Jon Roelofs via cfe-commits cfe-commits at lists.llvm.org
Fri Jul 27 10:11:00 PDT 2018


LGTM

Jon

On Thu, Jul 26, 2018 at 10:12 PM David Greene via Phabricator <
reviews at reviews.llvm.org> wrote:

> greened created this revision.
> greened added reviewers: jroelofs, hans, probinson, ismail, rtrieu.
> Herald added a subscriber: cfe-commits.
>
> This test fails if clang is configure with, for example, gold as the
> default linker.  It does not appear that this test really relies on lld so
> make the checks accept ld, ld.gold and ld.bfd too.
>
>
> Repository:
>   rC Clang
>
> https://reviews.llvm.org/D49898
>
> Files:
>   test/Driver/baremetal.cpp
>
>
> Index: test/Driver/baremetal.cpp
> ===================================================================
> --- test/Driver/baremetal.cpp
> +++ test/Driver/baremetal.cpp
> @@ -10,7 +10,7 @@
>  // CHECK-V6M-C-SAME: "-internal-isystem"
> "[[SYSROOT]]{{[/\\]+}}include{{[/\\]+}}c++{{[/\\]+}}v1"
>  // CHECk-V6M-C-SAME: "-internal-isystem" "[[SYSROOT]]{{[/\\]+}}include"
>  // CHECK-V6M-C-SAME: "-x" "c++" "{{.*}}baremetal.cpp"
> -// CHECK-V6M-C-NEXT: "{{[^"]*}}ld.lld{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
> +// CHECK-V6M-C-NEXT: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}"
> "{{.*}}.o" "-Bstatic"
>  // CHECK-V6M-C-SAME:
> "-L[[RESOURCE_DIR:[^"]+]]{{[/\\]+}}lib{{[/\\]+}}baremetal"
>  // CHECK-V6M-C-SAME: "-T" "semihosted.lds"
> "-Lsome{{[/\\]+}}directory{{[/\\]+}}user{{[/\\]+}}asked{{[/\\]+}}for"
>  // CHECK-V6M-C-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
> @@ -32,7 +32,7 @@
>  // RUN:     -target armv6m-none-eabi \
>  // RUN:     --sysroot=%S/Inputs/baremetal_arm \
>  // RUN:   | FileCheck --check-prefix=CHECK-V6M-DEFAULTCXX %s
> -// CHECK-V6M-DEFAULTCXX: "{{[^"]*}}ld.lld{{(\.exe)?}}" "{{.*}}.o"
> "-Bstatic"
> +// CHECK-V6M-DEFAULTCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}"
> "{{.*}}.o" "-Bstatic"
>  // CHECK-V6M-DEFAULTCXX-SAME:
> "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
>  // CHECK-V6M-DEFAULTCXX-SAME: "-lc++" "-lc++abi" "-lunwind"
>  // CHECK-V6M-DEFAULTCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
> @@ -45,7 +45,7 @@
>  // RUN:   | FileCheck --check-prefix=CHECK-V6M-LIBCXX %s
>  // CHECK-V6M-LIBCXX-NOT: "-internal-isystem"
> "{{[^"]+}}{{[/\\]+}}include{{[/\\]+}}c++{{[/\\]+}}{{[^v].*}}"
>  // CHECK-V6M-LIBCXX: "-internal-isystem"
> "{{[^"]+}}{{[/\\]+}}include{{[/\\]+}}c++{{[/\\]+}}v1"
> -// CHECK-V6M-LIBCXX: "{{[^"]*}}ld.lld{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
> +// CHECK-V6M-LIBCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}"
> "{{.*}}.o" "-Bstatic"
>  // CHECK-V6M-LIBCXX-SAME:
> "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
>  // CHECK-V6M-LIBCXX-SAME: "-lc++" "-lc++abi" "-lunwind"
>  // CHECK-V6M-LIBCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
> @@ -58,7 +58,7 @@
>  // RUN:   | FileCheck --check-prefix=CHECK-V6M-LIBSTDCXX %s
>  // CHECK-V6M-LIBSTDCXX-NOT: "-internal-isystem"
> "{{[^"]+}}{{[/\\]+}}include{{[/\\]+}}c++{{[/\\]+}}v1"
>  // CHECK-V6M-LIBSTDCXX: "-internal-isystem"
> "{{[^"]+}}{{[/\\]+}}include{{[/\\]+}}c++{{[/\\]+}}6.0.0"
> -// CHECK-V6M-LIBSTDCXX: "{{[^"]*}}ld.lld{{(\.exe)?}}" "{{.*}}.o"
> "-Bstatic"
> +// CHECK-V6M-LIBSTDCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}"
> "{{.*}}.o" "-Bstatic"
>  // CHECK-V6M-LIBSTDCXX-SAME:
> "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
>  // CHECK-V6M-LIBSTDCXX-SAME: "-lstdc++" "-lsupc++" "-lunwind"
>  // CHECK-V6M-LIBSTDCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
> @@ -69,7 +69,7 @@
>  // RUN:     --sysroot=%S/Inputs/baremetal_arm \
>  // RUN:     -nodefaultlibs \
>  // RUN:   | FileCheck --check-prefix=CHECK-V6M-NDL %s
> -// CHECK-V6M-NDL: "{{[^"]*}}ld.lld{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
> +// CHECK-V6M-NDL: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}"
> "{{.*}}.o" "-Bstatic"
>  // CHECK-V6M-NDL-SAME:
> "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
> "-o" "{{.*}}.o"
>
>  // RUN: %clangxx -target arm-none-eabi -v 2>&1 \
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20180727/5269f3ba/attachment.html>


More information about the cfe-commits mailing list