Enable PDB generation with lld in asan and cfi tests on Windows.

PDB emission now works well enough that we can rely on it for these
tests to pass.

Differential Revision: https://reviews.llvm.org/D40188

llvm-svn: 318546
This commit is contained in:
Peter Collingbourne 2017-11-17 19:49:41 +00:00
parent 5d0199a218
commit dd01ddbe67
4 changed files with 4 additions and 8 deletions

View File

@ -2,11 +2,7 @@
//
// REQUIRES: lld-available
//
// FIXME: Use -fuse-ld=lld after the old COFF linker is removed.
// FIXME: Test will fail until we add flags for requesting dwarf or cv.
// RUNX: %clangxx_asan -O2 %s -o %t.exe -fuse-ld=lld -Wl,-debug
// RUN: %clangxx_asan -c -O2 %s -o %t.o -g -gdwarf
// RUN: lld-link %t.o -out:%t.exe -debug -nopdb -defaultlib:libcmt %asan_lib %asan_cxx_lib
// RUN: %clangxx_asan -O2 %s -o %t.exe -g -gcodeview -fuse-ld=lld -Wl,-debug
// RUN: not %run %t.exe 2>&1 | FileCheck %s
#include <stdlib.h>

View File

@ -32,6 +32,7 @@ if config.lto_supported:
config.substitutions.append((r"%clangxx_cfi_diag ", clang_cfi + cxx + non_dso + diag))
config.substitutions.append((r"%clangxx_cfi_dso ", clang_cfi + cxx + dso))
config.substitutions.append((r"%clangxx_cfi_dso_diag ", clang_cfi + cxx + dso + diag))
config.substitutions.append((r"%debug_info_flags", ' '.join(config.debug_info_flags)))
else:
config.unsupported = True

View File

@ -1,4 +1,4 @@
// RUN: %clangxx_cfi -g -fsanitize-stats -o %t %s
// RUN: %clangxx_cfi %debug_info_flags -fsanitize-stats -o %t %s
// RUN: env SANITIZER_STATS_PATH=%t.stats %run %t
// RUN: sanstats %t.stats | FileCheck %s

View File

@ -254,8 +254,7 @@ elif config.host_os == 'Linux' and is_linux_lto_supported():
elif config.host_os == 'Windows' and is_windows_lto_supported():
config.lto_supported = True
config.lto_launch = []
# FIXME: Remove -nopdb when PDB writing is ready.
config.lto_flags = ["-fuse-ld=lld -Wl,-nopdb"]
config.lto_flags = ["-fuse-ld=lld"]
else:
config.lto_supported = False