X-Git-Url: http://plrg.eecs.uci.edu/git/?p=oota-llvm.git;a=blobdiff_plain;f=test%2Flit.cfg;h=e06c10f64212b029ff6e3489c4aabc2e23ea6f55;hp=82799589ab4994f3c8b416e2c5b54264bff6647d;hb=777479f80202057f041683129d4fd9e574ffea79;hpb=36caf0659ff104da732ed4a58f212111bafed52a diff --git a/test/lit.cfg b/test/lit.cfg index 82799589ab4..e06c10f6421 100644 --- a/test/lit.cfg +++ b/test/lit.cfg @@ -194,6 +194,7 @@ config.substitutions.append( ('%llvmshlibdir', config.llvm_shlib_dir) ) config.substitutions.append( ('%shlibext', config.llvm_shlib_ext) ) config.substitutions.append( ('%exeext', config.llvm_exe_ext) ) config.substitutions.append( ('%python', config.python_executable) ) +config.substitutions.append( ('%host_cc', config.host_cc) ) # OCaml substitutions. # Support tests for both native and bytecode builds. @@ -236,10 +237,14 @@ def find_tool_substitution(pattern): tool_path = lit_config.params.get(tool_name) if tool_path is None: tool_path = lit.util.which(tool_name, llvm_tools_dir) + if tool_path is None: + return tool_name, tool_path, tool_pipe if (tool_name == "llc" and 'LLVM_ENABLE_MACHINE_VERIFIER' in os.environ and os.environ['LLVM_ENABLE_MACHINE_VERIFIER'] == "1"): tool_path += " -verify-machineinstrs" + if (tool_name == "llvm-go"): + tool_path += " go=" + config.go_executable return tool_name, tool_path, tool_pipe @@ -272,9 +277,11 @@ for pattern in [r"\bbugpoint\b(?!-)", r"\bllvm-split\b", r"\bllvm-tblgen\b", r"\bllvm-c-test\b", + NOJUNK + r"\bllvm-symbolizer\b", NOJUNK + r"\bopt\b", r"\bFileCheck\b", r"\bobj2yaml\b", + NOJUNK + r"\bsancov\b", r"\byaml2obj\b", r"\byaml-bench\b", r"\bverify-uselistorder\b", @@ -335,6 +342,8 @@ if config.llvm_use_sanitizer == "Address": if (config.llvm_use_sanitizer == "Memory" or config.llvm_use_sanitizer == "MemoryWithOrigins"): config.available_features.add("msan") +else: + config.available_features.add("not_msan") if config.llvm_use_sanitizer == "Undefined": config.available_features.add("ubsan") else: @@ -345,8 +354,7 @@ if lit_config.params.get("run_long_tests", None) == "true": config.available_features.add("long_tests") # Direct object generation -# Suppress x86_64-mingw32 while investigating since r219108. -if not 'hexagon' in config.target_triple and not re.match(r'^x86_64.*-(mingw32|windows-gnu|win32)', config.target_triple): +if not 'hexagon' in config.target_triple: config.available_features.add("object-emission") if config.have_zlib == "1": @@ -358,6 +366,8 @@ else: # Some tests are "generic" and require a valid default triple if config.target_triple: config.available_features.add("default_triple") + if re.match(r'^x86_64.*-linux', config.target_triple): + config.available_features.add("x86_64-linux") # Native compilation: host arch == default triple arch # FIXME: Consider cases that target can be executed @@ -443,6 +453,10 @@ if 'darwin' == sys.platform: config.available_features.add('fma3') sysctl_cmd.wait() +if platform.system() in ['Windows'] and re.match(r'.*-win32$', config.target_triple): + # For tests that require Windows to run. + config.available_features.add('system-windows') + # .debug_frame is not emitted for targeting Windows x64. if not re.match(r'^x86_64.*-(mingw32|windows-gnu|win32)', config.target_triple): config.available_features.add('debug_frame')