# -*- Python -*- # Configuration file for 'lit' test runner. # This file contains common config setup rules for unit tests in various # compiler-rt testsuites. import os import lit.formats # Setup test format llvm_build_mode = getattr(config, "llvm_build_mode", "Debug") config.test_format = lit.formats.GoogleTest(llvm_build_mode, "Test") # Setup test suffixes. config.suffixes = [] # Tweak PATH to include llvm tools dir. llvm_tools_dir = getattr(config, 'llvm_tools_dir', None) if (not llvm_tools_dir) or (not os.path.exists(llvm_tools_dir)): lit_config.fatal("Invalid llvm_tools_dir config attribute: %r" % llvm_tools_dir) path = os.path.pathsep.join((llvm_tools_dir, config.environment['PATH'])) config.environment['PATH'] = path # Propagate the temp directory. Windows requires this because it uses \Windows\ # if none of these are present. if 'TMP' in os.environ: config.environment['TMP'] = os.environ['TMP'] if 'TEMP' in os.environ: config.environment['TEMP'] = os.environ['TEMP'] if config.host_os == 'Darwin': # Only run up to 3 64-bit sanitized processes simultaneously on Darwin. # Using more scales badly and hogs the system due to inefficient handling # of large mmap'd regions (terabytes) by the kernel. lit_config.parallelism_groups["darwin-64bit-sanitizer"] = 3 def darwin_sanitizer_parallelism_group_func(test): return "darwin-64bit-sanitizer" if "x86_64" in test.file_path else "" config.darwin_sanitizer_parallelism_group_func = darwin_sanitizer_parallelism_group_func