[lsan] Reenable lsan tests on ARM bots
authorMaxim Ostapenko <chefmax7@gmail.com>
Thu, 13 Apr 2017 12:00:56 +0000 (12:00 +0000)
committerMaxim Ostapenko <chefmax7@gmail.com>
Thu, 13 Apr 2017 12:00:56 +0000 (12:00 +0000)
This patch addresses pr32636. Enable lsan tests on ARM bots filtering out Thumb targets.
Tested locally on ARM Arndale board in two configurations:

1) CFLAGS="-march=armv7-a"
Testing Time: 37.57s
Expected Passes    : 69
Unsupported Tests  : 7

2) CFLAGS="-march=armv7-a -mthumb"
Testing Time: 0.16s
Unsupported Tests  : 76

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

llvm-svn: 300194

compiler-rt/test/asan/lit.cfg
compiler-rt/test/lsan/lit.common.cfg

index 9093b44..7d684a1 100644 (file)
@@ -213,7 +213,7 @@ if config.target_arch != 'arm' and config.target_arch != 'armhf' and config.targ
   config.available_features.add('stable-runtime')
 
 # Fast unwinder doesn't work with Thumb
-if not re.match('-mthumb', config.target_cflags):
+if re.search('mthumb', config.target_cflags) is not None:
   config.available_features.add('fast-unwinder-works')
 
 # Turn on leak detection on 64-bit Linux.
index 202620c..b90c7ef 100644 (file)
@@ -53,12 +53,11 @@ config.substitutions.append( ("%clang_lsan ", build_invocation(clang_lsan_cflags
 config.substitutions.append( ("%clangxx_lsan ", build_invocation(clang_lsan_cxxflags)) )
 
 # LeakSanitizer tests are currently supported on x86-64 Linux, arm Linux and mips64 Linux only.
-# LSAN breaks on Thumb, so disabling from all ARM targets until we sort this out. PR32636.
-if config.host_os not in ['Linux'] or config.host_arch not in ['x86_64', 'mips64']:
+if config.host_os not in ['Linux'] or config.host_arch not in ['x86_64', 'mips64', 'arm', 'armhf', 'armv7l']:
   config.unsupported = True
 
 # Don't support Thumb due to broken fast unwinder
-if re.match('-mthumb', config.target_cflags):
+if re.search('mthumb', config.target_cflags) is not None:
   config.unsupported = True
 
 config.suffixes = ['.c', '.cc', '.cpp']