summaryrefslogtreecommitdiff
path: root/test/lit.common.cfg
diff options
context:
space:
mode:
authorPeter Collingbourne <peter@pcc.me.uk>2015-07-02 22:08:38 +0000
committerPeter Collingbourne <peter@pcc.me.uk>2015-07-02 22:08:38 +0000
commit8f6f5c0ee4fb08c2bda141510762505d82def7c1 (patch)
tree0b76976f9d5b39e253637e1e93d13415701510eb /test/lit.common.cfg
parentc9a7e37ba2b696c85235d36ff269ec7de24b882c (diff)
UBSan: Enable runtime library tests on Windows, and get most tests passing.
Specifically: - Disable int128 tests on Windows, as MSVC cl.exe does not support int128, so we might not have been able to build the runtime with int128 support. - XFAIL the vptr tests as we lack Microsoft ABI support. - XFAIL enum.cpp as UBSan fails to add the correct instrumentation code for some reason. - Modify certain tests that build executables multiple times to use unique names for each executable. This works around a race condition observed on Windows. - Implement IsAccessibleMemoryRange for Windows to fix the last misaligned.cpp test. - Introduce a substitution for testing crashes on Windows using KillTheDoctor. Differential Revision: http://reviews.llvm.org/D10864 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@241303 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/lit.common.cfg')
-rw-r--r--test/lit.common.cfg9
1 files changed, 9 insertions, 0 deletions
diff --git a/test/lit.common.cfg b/test/lit.common.cfg
index 4fafc41a8..b4cf396c9 100644
--- a/test/lit.common.cfg
+++ b/test/lit.common.cfg
@@ -80,6 +80,15 @@ config.substitutions.append( ('%run', config.emulator) )
# Define CHECK-%os to check for OS-dependent output.
config.substitutions.append( ('CHECK-%os', ("CHECK-" + config.host_os)))
+if config.host_os == 'Windows':
+ # FIXME: This isn't quite right. Specifically, it will succeed if the program
+ # does not crash but exits with a non-zero exit code. We ought to merge
+ # KillTheDoctor and not --crash to make the latter more useful and remove the
+ # need for this substitution.
+ config.substitutions.append( ("%expect_crash ", "not KillTheDoctor ") )
+else:
+ config.substitutions.append( ("%expect_crash ", "not --crash ") )
+
# Add supported compiler_rt architectures to a list of available features.
compiler_rt_arch = getattr(config, 'compiler_rt_arch', None)
if compiler_rt_arch: