[llvm-bugs] [Bug 42074] New: Three AddressSanitizer-x86_64-windows-dynamic coverage tests fail when building with CMAKE_LINKER=lld-link.exe
via llvm-bugs
llvm-bugs at lists.llvm.org
Thu May 30 11:30:14 PDT 2019
https://bugs.llvm.org/show_bug.cgi?id=42074
Bug ID: 42074
Summary: Three AddressSanitizer-x86_64-windows-dynamic coverage
tests fail when building with
CMAKE_LINKER=lld-link.exe
Product: compiler-rt
Version: unspecified
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: asan
Assignee: unassignedbugs at nondot.org
Reporter: nicolasweber at gmx.de
CC: llvm-bugs at lists.llvm.org
When doing build of LLVM on Windows with CMAKE_LINKER set to lld-link, 3 tests
fail.
I don't immediately see how the failures are related to things building with
lld -- the test doesn't use lld.
Maybe the shared libasan linked by lld is missing symbols or something?
Full cmake invocation below.
-- Testing: 49878 tests, 32 threads --
Testing: 0 ..
FAIL: AddressSanitizer-x86_64-windows-dynamic ::
TestCases/Windows/coverage-basic.cc (4634 of 49878)
******************** TEST 'AddressSanitizer-x86_64-windows-dynamic ::
TestCases/Windows/coverage-basic.cc' FAILED ********************
Script:
--
: 'RUN: at line 1'; rm -rf
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Windows\Output\coverage-basic.cc.tmp-dir
: 'RUN: at line 2'; mkdir
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Windows\Output\coverage-basic.cc.tmp-dir
&& cd
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Windows\Output\coverage-basic.cc.tmp-dir
: 'RUN: at line 3';
C:/b/s/w/ir/k/src/third_party/llvm-build/Release+Asserts/./bin/clang.exe
-fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer
-fno-optimize-sibling-calls -gline-tables-only -gcodeview -gcolumn-info
-shared-libasan -D_MT -D_DLL
-Wl,-nodefaultlib:libcmt,-defaultlib:msvcrt,-defaultlib:oldnames
-fsanitize-coverage=func
C:\b\s\w\ir\k\src\third_party\llvm\compiler-rt\test\asan\TestCases\Windows\coverage-basic.cc
-o test.exe
: 'RUN: at line 4'; env ASAN_OPTIONS=coverage=1 ./test.exe
: 'RUN: at line 6'; C:/b/s/w/ir/cache/vpython/21a792/Scripts/python.exe
C:/b/s/w/ir/k/src/third_party/llvm/compiler-rt\lib\sanitizer_common\scripts\sancov.py
print *.sancov | FileCheck
C:\b\s\w\ir\k\src\third_party\llvm\compiler-rt\test\asan\TestCases\Windows\coverage-basic.cc
--
Exit Code: 1120
Command Output (stdout):
--
$ ":" "RUN: at line 1"
$ "rm" "-rf"
"C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Windows\Output\coverage-basic.cc.tmp-dir"
$ ":" "RUN: at line 2"
$ "mkdir"
"C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Windows\Output\coverage-basic.cc.tmp-dir"
$ ":" "RUN: at line 3"
$ "C:/b/s/w/ir/k/src/third_party/llvm-build/Release+Asserts/./bin/clang.exe"
"-fsanitize=address" "-mno-omit-leaf-frame-pointer" "-fno-omit-frame-pointer"
"-fno-optimize-sibling-calls" "-gline-tables-only" "-gcodeview" "-gcolumn-info"
"-shared-libasan" "-D_MT" "-D_DLL"
"-Wl,-nodefaultlib:libcmt,-defaultlib:msvcrt,-defaultlib:oldnames"
"-fsanitize-coverage=func"
"C:\b\s\w\ir\k\src\third_party\llvm\compiler-rt\test\asan\TestCases\Windows\coverage-basic.cc"
"-o" "test.exe"
# command output:
coverage-basic-ce3187.o : error LNK2019: unresolved external symbol
__sanitizer_cov_trace_pc_guard referenced in function "void __cdecl foo(void)"
(?foo@@YAXXZ)
coverage-basic-ce3187.o : error LNK2019: unresolved external symbol
__sanitizer_cov_trace_pc_guard_init referenced in function
sancov.module_ctor_trace_pc_guard
test.exe : fatal error LNK1120: 2 unresolved externals
# command stderr:
clang: warning: argument '-fsanitize-coverage=[func|bb|edge]' is deprecated,
use '-fsanitize-coverage=[func|bb|edge],[trace-pc-guard|trace-pc]' instead
[-Wdeprecated]
clang: error: linker command failed with exit code 1120 (use -v to see
invocation)
error: command failed with exit status: 1120
--
********************
Testing: 0 ..
FAIL: AddressSanitizer-x86_64-windows-dynamic ::
TestCases/Windows/coverage-dll-stdio.cc (4672 of 49878)
******************** TEST 'AddressSanitizer-x86_64-windows-dynamic ::
TestCases/Windows/coverage-dll-stdio.cc' FAILED ********************
Script:
--
: 'RUN: at line 4'; rm -rf
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Windows\Output\coverage-dll-stdio.cc.tmp
&& mkdir
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Windows\Output\coverage-dll-stdio.cc.tmp
&& cd
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Windows\Output\coverage-dll-stdio.cc.tmp
: 'RUN: at line 5';
C:/b/s/w/ir/k/src/third_party/llvm-build/Release+Asserts/./bin/clang-cl.exe
-fsanitize=address -Wno-deprecated-declarations -WX -D_HAS_EXCEPTIONS=0 -Zi
-MD -fsanitize-coverage=func,trace-pc-guard -O0
C:\b\s\w\ir\k\src\third_party\llvm\compiler-rt\test\asan\TestCases\Windows/dll_host.cc
-Fet.exe
: 'RUN: at line 6';
C:/b/s/w/ir/k/src/third_party/llvm-build/Release+Asserts/./bin/clang-cl.exe
-fsanitize=address -Wno-deprecated-declarations -WX -D_HAS_EXCEPTIONS=0 -Zi
-MD -fsanitize-coverage=func,trace-pc-guard -LD -O0
C:\b\s\w\ir\k\src\third_party\llvm\compiler-rt\test\asan\TestCases\Windows\coverage-dll-stdio.cc
-Fet.dll
: 'RUN: at line 7'; ./t.exe t.dll 2>&1 | FileCheck
C:\b\s\w\ir\k\src\third_party\llvm\compiler-rt\test\asan\TestCases\Windows\coverage-dll-stdio.cc
--
Exit Code: 1120
Command Output (stdout):
--
$ ":" "RUN: at line 4"
$ "rm" "-rf"
"C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Windows\Output\coverage-dll-stdio.cc.tmp"
$ "mkdir"
"C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Windows\Output\coverage-dll-stdio.cc.tmp"
$ ":" "RUN: at line 5"
$ "C:/b/s/w/ir/k/src/third_party/llvm-build/Release+Asserts/./bin/clang-cl.exe"
"-fsanitize=address" "-Wno-deprecated-declarations" "-WX" "-D_HAS_EXCEPTIONS=0"
"-Zi" "-MD" "-fsanitize-coverage=func,trace-pc-guard" "-O0"
"C:\b\s\w\ir\k\src\third_party\llvm\compiler-rt\test\asan\TestCases\Windows/dll_host.cc"
"-Fet.exe"
# command output:
dll_host-bea811.obj : error LNK2019: unresolved external symbol
__sanitizer_cov_trace_pc_guard referenced in function main
dll_host-bea811.obj : error LNK2019: unresolved external symbol
__sanitizer_cov_trace_pc_guard_init referenced in function
sancov.module_ctor_trace_pc_guard
t.exe : fatal error LNK1120: 2 unresolved externals
# command stderr:
clang-cl: error: linker command failed with exit code 1120 (use -v to see
invocation)
error: command failed with exit status: 1120
--
********************
Testing: 0 ..
FAIL: AddressSanitizer-x86_64-windows-dynamic :: TestCases/coverage-disabled.cc
(4747 of 49878)
******************** TEST 'AddressSanitizer-x86_64-windows-dynamic ::
TestCases/coverage-disabled.cc' FAILED ********************
Script:
--
: 'RUN: at line 3'; rm -rf
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Output\coverage-disabled.cc.tmp-dir
: 'RUN: at line 4'; mkdir -p
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Output\coverage-disabled.cc.tmp-dir
: 'RUN: at line 6';
C:/b/s/w/ir/k/src/third_party/llvm-build/Release+Asserts/./bin/clang.exe
-fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer
-fno-optimize-sibling-calls -gline-tables-only -gcodeview -gcolumn-info
-shared-libasan -D_MT -D_DLL
-Wl,-nodefaultlib:libcmt,-defaultlib:msvcrt,-defaultlib:oldnames
-fsanitize-coverage=func
C:\b\s\w\ir\k\src\third_party\llvm\compiler-rt\test\asan\TestCases\coverage-disabled.cc
-o
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Output\coverage-disabled.cc.tmp
: 'RUN: at line 8'; env
ASAN_OPTIONS=coverage_direct=0:coverage_dir='"C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Output\coverage-disabled.cc.tmp-dir"':verbosity=1
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Output\coverage-disabled.cc.tmp
: 'RUN: at line 9'; not C:/b/s/w/ir/cache/vpython/21a792/Scripts/python.exe
C:/b/s/w/ir/k/src/third_party/llvm/compiler-rt\lib\sanitizer_common\scripts\sancov.py
print
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Output\coverage-disabled.cc.tmp-dir/*.sancov
2>&1
--
Exit Code: 1120
Command Output (stdout):
--
$ ":" "RUN: at line 3"
$ "rm" "-rf"
"C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Output\coverage-disabled.cc.tmp-dir"
$ ":" "RUN: at line 4"
$ "mkdir" "-p"
"C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Output\coverage-disabled.cc.tmp-dir"
$ ":" "RUN: at line 6"
$ "C:/b/s/w/ir/k/src/third_party/llvm-build/Release+Asserts/./bin/clang.exe"
"-fsanitize=address" "-mno-omit-leaf-frame-pointer" "-fno-omit-frame-pointer"
"-fno-optimize-sibling-calls" "-gline-tables-only" "-gcodeview" "-gcolumn-info"
"-shared-libasan" "-D_MT" "-D_DLL"
"-Wl,-nodefaultlib:libcmt,-defaultlib:msvcrt,-defaultlib:oldnames"
"-fsanitize-coverage=func"
"C:\b\s\w\ir\k\src\third_party\llvm\compiler-rt\test\asan\TestCases\coverage-disabled.cc"
"-o"
"C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Output\coverage-disabled.cc.tmp"
# command output:
coverage-disabled-865ee1.o : error LNK2019: unresolved external symbol
__sanitizer_cov_trace_pc_guard referenced in function main
coverage-disabled-865ee1.o : error LNK2019: unresolved external symbol
__sanitizer_cov_trace_pc_guard_init referenced in function
sancov.module_ctor_trace_pc_guard
C:\b\s\w\ir\k\src\third_party\llvm-build\Release+Asserts\projects\compiler-rt\test\asan\X86_64WindowsDynamicConfig\TestCases\Output\coverage-disabled.cc.tmp
: fatal error LNK1120: 2 unresolved externals
# command stderr:
clang: warning: argument '-fsanitize-coverage=[func|bb|edge]' is deprecated,
use '-fsanitize-coverage=[func|bb|edge],[trace-pc-guard|trace-pc]' instead
[-Wdeprecated]
clang: error: linker command failed with exit code 1120 (use -v to see
invocation)
error: command failed with exit status: 1120
--
********************
Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
Testing Time: 294.36s
********************
Failing Tests (3):
AddressSanitizer-x86_64-windows-dynamic ::
TestCases/Windows/coverage-basic.cc
AddressSanitizer-x86_64-windows-dynamic ::
TestCases/Windows/coverage-dll-stdio.cc
AddressSanitizer-x86_64-windows-dynamic :: TestCases/coverage-disabled.cc
Expected Passes : 42784
Expected Failures : 217
Unsupported Tests : 6874
Unexpected Failures: 3
CMake invocation:
Running
[u'C:\\b\\s\\w\\ir\\k\\src\\third_party\\depot_tools\\win_toolchain\\vs_files\\818a152b3f1da991c1725d85be19a0f27af6bab4\\win_sdk\\bin\\SetEnv.cmd',
'/x64', '&&', 'cmake', '-GNinja', '-DCMAKE_BUILD_TYPE=Release',
'-DLLVM_ENABLE_ASSERTIONS=OFF',
'-DLLVM_ENABLE_PROJECTS=clang;compiler-rt;lld;chrometools',
'-DLLVM_TARGETS_TO_BUILD=AArch64;ARM;Mips;PowerPC;SystemZ;WebAssembly;X86',
'-DLLVM_ENABLE_PIC=OFF', '-DLLVM_ENABLE_UNWIND_TABLES=OFF',
'-DLLVM_ENABLE_TERMINFO=OFF', '-DCLANG_PLUGIN_SUPPORT=OFF',
'-DCLANG_ENABLE_STATIC_ANALYZER=OFF', '-DCLANG_ENABLE_ARCMT=OFF',
'-DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=ON',
'-DBUG_REPORT_URL=https://crbug.com and run tools/clang/scripts/upload_crash.py
(only works inside Google) which will upload a report',
'-DCOMPILER_RT_USE_LIBCXX=NO', '-DLLVM_USE_CRT_RELEASE=MT',
'-DCMAKE_C_COMPILER=C:/b/s/w/ir/k/src/third_party/llvm-bootstrap-install/bin/clang-cl.exe',
'-DCMAKE_CXX_COMPILER=C:/b/s/w/ir/k/src/third_party/llvm-bootstrap-install/bin/clang-cl.exe',
'-DCMAKE_LINKER=C:/b/s/w/ir/k/src/third_party/llvm-bootstrap-install/bin/lld-link.exe',
'-DCOMPILER_RT_BUILD_CRT=OFF', '-DCOMPILER_RT_BUILD_LIBFUZZER=ON',
'-DCOMPILER_RT_BUILD_PROFILE=ON', '-DCOMPILER_RT_BUILD_SANITIZERS=ON',
'-DCOMPILER_RT_BUILD_XRAY=OFF', '-DCOMPILER_RT_BUILD_BUILTINS=OFF',
'-DLLVM_ENABLE_THREADS=OFF', '-DCMAKE_C_FLAGS=/Zi /GS-', '-DCMAKE_CXX_FLAGS=/Zi
/GS-', '-DCMAKE_EXE_LINKER_FLAGS=/DEBUG /OPT:REF /OPT:ICF',
'-DCMAKE_SHARED_LINKER_FLAGS=/DEBUG /OPT:REF /OPT:ICF',
'-DCMAKE_MODULE_LINKER_FLAGS=/DEBUG /OPT:REF /OPT:ICF',
'-DCMAKE_INSTALL_PREFIX=C:\\b\\s\\w\\ir\\k\\src\\third_party\\llvm-build\\Release+Asserts',
'-DCHROMIUM_TOOLS_SRC=C:\\b\\s\\w\\ir\\k\\src\\tools\\clang',
'-DCHROMIUM_TOOLS=blink_gc_plugin;translation_unit;plugins',
'C:\\b\\s\\w\\ir\\k\\src\\third_party\\llvm\\llvm']
This is from https://chromium-review.googlesource.com/c/chromium/src/+/1636672
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20190530/18cadcc8/attachment-0001.html>
More information about the llvm-bugs
mailing list