Fix -print-multi-directory to print the selected multilib
Details
Details
- Reviewers
jroelofs - Commits
- rGeaf4fd749bbc: Fix Check test to avoid output string mismatch
rG6ccc4a7c2076: Fix the -print-multi-directory flag to print the selected multilib.
rG034423377cf8: Revert r341373, since it fails on some targets.
rGed1d6db90731: Fix the -print-multi-directory flag to print the selected multilib.
rL342031: Fix Check test to avoid output string mismatch
rC342031: Fix Check test to avoid output string mismatch
rC341547: Fix the -print-multi-directory flag to print the selected multilib.
rL341547: Fix the -print-multi-directory flag to print the selected multilib.
rL341418: Revert r341373, since it fails on some targets.
rC341418: Revert r341373, since it fails on some targets.
rL341373: Fix the -print-multi-directory flag to print the selected multilib.
rC341373: Fix the -print-multi-directory flag to print the selected multilib.
Diff Detail
Diff Detail
- Repository
- rC Clang
Event Timeline
Comment Actions
The test fails on my system like so:
-- ******************** FAIL: Clang :: Driver/print-multi-directory.c (4696 of 13174) ******************** TEST 'Clang :: Driver/print-multi-directory.c' FAILED ******************** Script: -- : 'RUN: at line 1'; /usr/local/google/home/thakis/src/llvm-build-goma/bin/clang -no-canonical-prefixes /usr/local/google/home/thakis/src/llvm-rw/tools/clang/test/Driver/print-multi-directory.c -### -o /usr/local/google/home/thakis/src/llvm-build-goma/tools/clang/test/Driver/Output/print-multi-directory.c.tmp.o 2>&1 -target i386-none-linux -print-multi-directory | /usr/local/google/home/thakis/src/llvm-build-goma/bin/FileCheck --check-prefix=CHECK-X86-MULTILIBS /usr/local/google/home/thakis/src/llvm-rw/tools/clang/test/Driver/print-multi-directory.c : 'RUN: at line 10'; /usr/local/google/home/thakis/src/llvm-build-goma/bin/clang -no-canonical-prefixes /usr/local/google/home/thakis/src/llvm-rw/tools/clang/test/Driver/print-multi-directory.c -### -o /usr/local/google/home/thakis/src/llvm-build-goma/tools/clang/test/Driver/Output/print-multi-directory.c.tmp.o 2>&1 -target i386-none-linux -m64 -print-multi-directory | /usr/local/google/home/thakis/src/llvm-build-goma/bin/FileCheck --check-prefix=CHECK-X86_64-MULTILIBS /usr/local/google/home/thakis/src/llvm-rw/tools/clang/test/Driver/print-multi-directory.c : 'RUN: at line 19'; /usr/local/google/home/thakis/src/llvm-build-goma/bin/clang -no-canonical-prefixes /usr/local/google/home/thakis/src/llvm-rw/tools/clang/test/Driver/print-multi-directory.c -### -o /usr/local/google/home/thakis/src/llvm-build-goma/tools/clang/test/Driver/Output/print-multi-directory.c.tmp.o 2>&1 -target arm-linux-androideabi21 -stdlib=libstdc++ -mthumb -B/usr/local/google/home/thakis/src/llvm-rw/tools/clang/test/Driver/Inputs/basic_android_ndk_tree --sysroot=/usr/local/google/home/thakis/src/llvm-rw/tools/clang/test/Driver/Inputs/basic_android_ndk_tree/sysroot -print-multi-directory | /usr/local/google/home/thakis/src/llvm-build-goma/bin/FileCheck --check-prefix=CHECK-ARM-MULTILIBS /usr/local/google/home/thakis/src/llvm-rw/tools/clang/test/Driver/print-multi-directory.c -- Exit Code: 1 Command Output (stderr): -- /usr/local/google/home/thakis/src/llvm-rw/tools/clang/test/Driver/print-multi-directory.c:6:25: error: CHECK-X86-MULTILIBS: expected string not found in input // CHECK-X86-MULTILIBS: 32 ^ <stdin>:1:1: note: scanning from here clang version 8.0.0 (trunk 341389) ^ <stdin>:1:28: note: possible intended match here clang version 8.0.0 (trunk 341389) ^ --
Comment Actions
The test fails on my system like so:
I also observed the same failure.
I'm going to revert this patch.
This comment was removed by chrib.
Comment Actions
Understood, The test worked for me because I have both 64 bit and 32 bit libs installed on my default sysroot. Otherwise might fail indeed.
Will amend the test with an explicit sysroot,
Comment Actions
Re-commit patch at r341547 with modified test case to use an explicit root tree for libraries
Comment Actions
I saw this test fail in our testing as well. I think the matches are too broad and I suspect this will fail intermittently on the bots too causing confusion:
Command Output (stderr): -- /vstsdrive/_work/10/s/llvm/tools/clang/test/Driver/print-multi-directory.c:19:32: error: CHECK-X86_64-MULTILIBS-NOT: excluded string found in input // CHECK-X86_64-MULTILIBS-NOT: 32 ^ <stdin>:1:199: note: found here clang version 8.0.0 (https://yn744hjyhitxavgbejjp2xsdymxivo4b6r7yrbigmz6v3uodg2sq@edgetools.visualstudio.com/llvm/_git/clang 5df831d3873a0affc7c7e1d908978f68222737f1) (llvm/_git/llvm 3e62673386d63e53205e2b6b92955c5506225e38) ^~