[compiler-rt] 5c1aabd - [LSAN] Make sure HWASAN tests are linked with lld

Kirill Stoimenov via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 22 11:41:09 PST 2023


Author: Kirill Stoimenov
Date: 2023-02-22T19:40:59Z
New Revision: 5c1aabde675849498e5f3620aef1e8750ed58036

URL: https://github.com/llvm/llvm-project/commit/5c1aabde675849498e5f3620aef1e8750ed58036
DIFF: https://github.com/llvm/llvm-project/commit/5c1aabde675849498e5f3620aef1e8750ed58036.diff

LOG: [LSAN] Make sure HWASAN tests are linked with lld

Reviewed By: vitalybuka

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

Added: 
    

Modified: 
    compiler-rt/test/lsan/lit.common.cfg.py

Removed: 
    


################################################################################
diff  --git a/compiler-rt/test/lsan/lit.common.cfg.py b/compiler-rt/test/lsan/lit.common.cfg.py
index 92f6f6be5bbd7..c3df68f368001 100644
--- a/compiler-rt/test/lsan/lit.common.cfg.py
+++ b/compiler-rt/test/lsan/lit.common.cfg.py
@@ -34,7 +34,7 @@ def get_required_attr(config, attr_name):
     config.substitutions.insert(0, ('%run', config.netbsd_noaslr_prefix))
 elif lsan_lit_test_mode == "HWAddressSanitizer":
   config.name = "LeakSanitizer-HWAddressSanitizer"
-  lsan_cflags = ["-fsanitize=hwaddress"]
+  lsan_cflags = ["-fsanitize=hwaddress", "-fuse-ld=lld"]
   if target_arch == "x86_64":
     lsan_cflags = lsan_cflags + [ '-fsanitize-hwaddress-experimental-aliasing']
   config.available_features.add('hwasan')
@@ -98,4 +98,9 @@ def build_invocation(compile_flags):
 if re.search('mthumb', config.target_cflags) is not None:
   config.unsupported = True
 
+# HWASAN tests require lld because without D65857, ld.bfd and ld.gold would
+# generate a corrupted binary. Mark them unsupported if lld is not available.
+if 'hwasan' in config.available_features and not config.has_lld:
+  config.unsupported = True
+
 config.suffixes = ['.c', '.cpp', '.mm']


        


More information about the llvm-commits mailing list