# excludes: A list of directories to exclude from the testsuite. The 'Inputs' # subdirectories contain auxiliary inputs for various tests in their parent # directories. config.excludes = ['Inputs', 'CMakeLists.txt', 'README.txt', 'LICENSE.txt'] # test_source_root: The root path where tests are located. config.test_source_root = os.path.dirname(__file__) # test_exec_root: The root path where tests should be run. config.test_exec_root = os.path.join(config.lldb_obj_root, 'test') # Propagate environment vars. llvm_config.with_system_environment([ 'FREEBSD_LEGACY_PLUGIN', 'HOME', 'LLDB_CAPTURE_REPRODUCER', 'TEMP', 'TMP', 'XDG_CACHE_HOME', ]) # Support running the test suite under the lldb-repro wrapper. This makes it # possible to capture a test suite run and then rerun all the test from the # just captured reproducer. lldb_repro_mode = lit_config.params.get('lldb-run-with-repro', None) if lldb_repro_mode: config.available_features.add('lldb-repro') lit_config.note("Running Shell tests in {} mode.".format(lldb_repro_mode)) toolchain.use_lldb_repro_substitutions(config, lldb_repro_mode) llvm_config.use_default_substitutions() toolchain.use_lldb_substitutions(config)
# subdirectories contain auxiliary inputs for various tests in their parent # directories. config.excludes = ['Inputs', 'CMakeLists.txt', 'README.txt', 'LICENSE.txt', 'debuginfo-tests'] # test_source_root: The root path where tests are located. config.test_source_root = os.path.dirname(__file__) # test_exec_root: The root path where tests should be run. config.test_exec_root = os.path.join(config.clang_obj_root, 'test') llvm_config.use_default_substitutions() llvm_config.use_clang() # Propagate path to symbolizer for ASan/MSan. llvm_config.with_system_environment( ['ASAN_SYMBOLIZER_PATH', 'MSAN_SYMBOLIZER_PATH']) config.substitutions.append(('%PATH%', config.environment['PATH'])) # For each occurrence of a clang tool name, replace it with the full path to # the build directory holding that tool. We explicitly specify the directories # to search to ensure that we get the tools just built and not some random # tools that might happen to be in the user's PATH. tool_dirs = [config.clang_tools_dir, config.llvm_tools_dir] tools = [ 'c-index-test', 'clang-check', 'clang-diff', 'clang-format', 'clang-tblgen', 'opt', ToolSubst('%clang_func_map', command=FindTool( 'clang-func-mapping'), unresolved='ignore'),
# test_source_root: The root path where tests are located. config.test_source_root = os.path.dirname(__file__) # test_exec_root: The root path where tests should be run. config.test_exec_root = os.path.join(config.clang_obj_root, 'test') llvm_config.use_default_substitutions() llvm_config.use_clang() config.substitutions.append( ('%src_include_dir', config.clang_src_dir + '/include')) # Propagate path to symbolizer for ASan/MSan. llvm_config.with_system_environment( ['ASAN_SYMBOLIZER_PATH', 'MSAN_SYMBOLIZER_PATH']) config.substitutions.append(('%PATH%', config.environment['PATH'])) # For each occurrence of a clang tool name, replace it with the full path to # the build directory holding that tool. We explicitly specify the directories # to search to ensure that we get the tools just built and not some random # tools that might happen to be in the user's PATH. tool_dirs = [config.clang_tools_dir, config.llvm_tools_dir] tools = [ 'c-index-test', 'clang-diff', 'clang-format', 'clang-tblgen', 'opt',
]) llvm_config.add_tool_substitutions(tools, tool_dirs) using_spirv_tools = False if config.spirv_tools_have_spirv_as: llvm_config.add_tool_substitutions(['spirv-as'], [config.spirv_tools_bin_dir]) config.available_features.add('spirv-as') using_spirv_tools = True if config.spirv_tools_have_spirv_link: llvm_config.add_tool_substitutions(['spirv-link'], [config.spirv_tools_bin_dir]) config.available_features.add('spirv-link') using_spirv_tools = True if config.spirv_tools_have_spirv_val: llvm_config.add_tool_substitutions(['spirv-val'], [config.spirv_tools_bin_dir]) using_spirv_tools = True else: config.substitutions.append(('spirv-val', ':')) if using_spirv_tools: llvm_config.with_system_environment('LD_LIBRARY_PATH') llvm_config.with_environment('LD_LIBRARY_PATH', config.spirv_tools_lib_dir, append_path=True)
"No attribute %r in test configuration! You may need to run " "tests from your build directory or add this attribute " "to lit.site.cfg " % attr_name) return attr_value # If this is an MSVC environment, the tests at the root of the tree are # unsupported. The local win_cdb test suite, however, is supported. is_msvc = get_required_attr(config, "is_msvc") if is_msvc: config.available_features.add('msvc') # FIXME: We should add some llvm lit utility code to find the Windows SDK # and set up the environment appopriately. win_sdk = 'C:/Program Files (x86)/Windows Kits/10/' arch = 'x64' llvm_config.with_system_environment(['LIB', 'LIBPATH', 'INCLUDE']) # Clear _NT_SYMBOL_PATH to prevent cdb from attempting to load symbols from # the network. llvm_config.with_environment('_NT_SYMBOL_PATH', '') tools.append( ToolSubst('%cdb', '"%s"' % os.path.join(win_sdk, 'Debuggers', arch, 'cdb.exe'))) # clang_src_dir is not used by these tests, but is required by # use_clang(), so set it to "". if not hasattr(config, 'clang_src_dir'): config.clang_src_dir = "" llvm_config.use_clang() if config.llvm_use_sanitizer: # Propagate path to symbolizer for ASan/MSan.
if config.lldb_enable_python: config.available_features.add('python') if config.lldb_enable_lua: config.available_features.add('lua') if config.lldb_enable_lzma: config.available_features.add('lzma') if find_executable('xz') != None: config.available_features.add('xz') # NetBSD permits setting dbregs either if one is root # or if user_set_dbregs is enabled can_set_dbregs = True if platform.system() == 'NetBSD' and os.geteuid() != 0: try: output = subprocess.check_output([ "/sbin/sysctl", "-n", "security.models.extensions.user_set_dbregs" ]).decode().strip() if output != "1": can_set_dbregs = False except subprocess.CalledProcessError: can_set_dbregs = False if can_set_dbregs: config.available_features.add('dbregs-set') # pass control variable through llvm_config.with_system_environment('FREEBSD_REMOTE_PLUGIN')
# excludes: A list of directories to exclude from the testsuite. The 'Inputs' # subdirectories contain auxiliary inputs for various tests in their parent # directories. config.excludes = ['Inputs', 'CMakeLists.txt', 'README.txt', 'LICENSE.txt'] # test_source_root: The root path where tests are located. config.test_source_root = os.path.dirname(__file__) # test_exec_root: The root path where tests should be run. config.test_exec_root = os.path.join(config.llvm_obj_root, 'test') # Tweak the PATH to include the tools dir. llvm_config.with_environment('PATH', config.llvm_tools_dir, append_path=True) # Propagate some variables from the host environment. llvm_config.with_system_environment( ['HOME', 'INCLUDE', 'LIB', 'TMP', 'TEMP', 'ASAN_SYMBOLIZER_PATH', 'MSAN_SYMBOLIZER_PATH']) # Set up OCAMLPATH to include newly built OCaml libraries. top_ocaml_lib = os.path.join(config.llvm_lib_dir, 'ocaml') llvm_ocaml_lib = os.path.join(top_ocaml_lib, 'llvm') llvm_config.with_system_environment('OCAMLPATH') llvm_config.with_environment('OCAMLPATH', top_ocaml_lib, append_path=True) llvm_config.with_environment('OCAMLPATH', llvm_ocaml_lib, append_path=True) llvm_config.with_system_environment('CAML_LD_LIBRARY_PATH') llvm_config.with_environment( 'CAML_LD_LIBRARY_PATH', llvm_ocaml_lib, append_path=True) # Set up OCAMLRUNPARAM to enable backtraces in OCaml tests.
'OBJC_INCLUDE_PATH', 'OBJCPLUS_INCLUDE_PATH', 'LIBCLANG_TIMING', 'LIBCLANG_OBJTRACKING', 'LIBCLANG_LOGGING', 'LIBCLANG_BGPRIO_INDEX', 'LIBCLANG_BGPRIO_EDIT', 'LIBCLANG_NOTHREADS', 'LIBCLANG_RESOURCE_USAGE', 'LIBCLANG_CODE_COMPLETION_LOGGING' ] # Clang/Win32 may refer to %INCLUDE%. vsvarsall.bat sets it. if platform.system() != 'Windows': possibly_dangerous_env_vars.append('INCLUDE') for name in possibly_dangerous_env_vars: if name in llvm_config.config.environment: del llvm_config.config.environment[name] # Propagate some variables from the host environment. llvm_config.with_system_environment([ 'PATH', 'OCL_ICD_FILENAMES', 'CL_CONFIG_DEVICES', 'SYCL_DEVICE_ALLOWLIST', 'SYCL_CONFIG_FILE_NAME' ]) llvm_config.with_environment('PATH', config.lit_tools_dir, append_path=True) # Configure LD_LIBRARY_PATH or corresponding os-specific alternatives if platform.system() == "Linux": config.available_features.add('linux') llvm_config.with_system_environment( ['LD_LIBRARY_PATH', 'LIBRARY_PATH', 'CPATH']) llvm_config.with_environment('LD_LIBRARY_PATH', config.sycl_libs_dir, append_path=True) elif platform.system() == "Windows": config.available_features.add('windows')
# -*- Python -*- # Configuration file for the 'lit' test runner. import os import sys import lit.formats from lit.llvm import llvm_config # name: The name of this test suite. config.name = 'lldb-Unit' # suffixes: A list of file extensions to treat as test files. config.suffixes = [] # test_source_root: The root path where unit test binaries are located. # test_exec_root: The root path where tests should be run. config.test_source_root = os.path.join(config.lldb_obj_root, 'unittests') config.test_exec_root = config.test_source_root # One of our unit tests dynamically links against python.dll, and on Windows # it needs to be able to find it at runtime. This is fine if Python is on your # system PATH, but if it's not, then this unit test executable will fail to run. # We can solve this by forcing the Python directory onto the system path here. llvm_config.with_system_environment('PATH') llvm_config.with_environment('PATH', os.path.dirname(sys.executable), append_path=True) # testFormat: The test format to use to interpret tests. config.test_format = lit.formats.GoogleTest(config.llvm_build_mode, 'Tests')
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception import os import sys import tempfile import lit.formats import lit.util import lit.llvm # Configuration file for the 'lit' test runner. lit.llvm.initialize(lit_config, config) from lit.llvm import llvm_config llvm_config.with_system_environment("PYTHONPATH") llvm_config.with_system_environment("VK_ICD_FILENAMES") # Put execution artifacts in the temp dir. config.test_exec_root = (os.environ.get("TEST_UNDECLARED_OUTPUTS_DIR") or os.environ.get("TEST_TMPDIR") or os.path.join(tempfile.gettempdir(), "lit")) # name: The name of this test suite. config.name = "TENSORFLOW_TESTS" config.test_format = lit.formats.ShTest() # suffixes: A list of file extensions to treat as test files. config.suffixes = [".run"]
# Begin Swift mod. # Swift's libReflection builds without ASAN, which causes a known # false positive in std::vector. We also want to support testing a sanitized # lldb using unsanitized llvm, clang, and swift libraries. config.environment['ASAN_OPTIONS'] = 'detect_container_overflow=0' # End Swift mod. # test_source_root: The root path where unit test binaries are located. # test_exec_root: The root path where tests should be run. config.test_source_root = os.path.join(config.lldb_obj_root, 'unittests') config.test_exec_root = config.test_source_root # One of our unit tests dynamically links against python.dll, and on Windows # it needs to be able to find it at runtime. This is fine if Python is on your # system PATH, but if it's not, then this unit test executable will fail to run. # We can solve this by forcing the Python directory onto the system path here. llvm_config.with_system_environment([ 'HOME', 'PATH', 'TEMP', 'TMP', 'XDG_CACHE_HOME', ]) llvm_config.with_environment('PATH', os.path.dirname(sys.executable), append_path=True) # testFormat: The test format to use to interpret tests. config.test_format = lit.formats.GoogleTest(config.llvm_build_mode, 'Tests')
config.test_format = lit.formats.ShTest(not llvm_config.use_lit_shell) # suffixes: A list of file extensions to treat as test files. config.suffixes = [".mlir", ".py"] # test_source_root: The root path where tests are located. config.test_source_root = os.path.dirname(__file__) # test_exec_root: The root path where tests should be run. config.test_exec_root = os.path.join(config.oneflow_obj_root, "test") config.substitutions.append(("%PATH%", config.environment["PATH"])) config.substitutions.append(("%shlibext", config.llvm_shlib_ext)) llvm_config.with_system_environment(["HOME", "INCLUDE", "LIB", "TMP", "TEMP"]) llvm_config.use_default_substitutions() # excludes: A list of directories to exclude from the testsuite. The 'Inputs' # subdirectories contain auxiliary inputs for various tests in their parent # directories. config.excludes = [ "Inputs", "Examples", "CMakeLists.txt", "README.txt", "LICENSE.txt", "networks", "test_fuse_cast_scale.mlir.py", "test_util.py",
# testFormat: The test format to use to interpret tests. config.test_format = lit.formats.ShTest(not llvm_config.use_lit_shell) # suffixes: A list of file extensions to treat as test files. This is overridden # by individual lit.local.cfg files in the test subdirectories. config.suffixes = ['.amber'] # excludes: A list of directories to exclude from the testsuite. The 'Inputs' # subdirectories contain auxiliary inputs for various tests in their parent # directories. config.excludes = [] # test_source_root: The root path where tests are located. config.test_source_root = os.path.dirname(__file__) # test_exec_root: The root path where tests should be run. config.test_exec_root = os.path.join(config.llvm_obj_root, 'test') # Set features for available gpu hardware. They can be queried with REQUIRES, etc. for gfxip in query_gfxips(): config.available_features.add(gfxip) # Tweak the PATH to include the tools dir. llvm_config.with_environment('PATH', config.llvm_tools_dir, append_path=True) llvm_config.with_environment('PATH', config.test_source_root, append_path=True) # Contains the path for vulkan validation layers llvm_config.with_system_environment('XDG_DATA_DIRS') llvm_config.use_default_substitutions()
if config.lldb_enable_python: config.available_features.add('python') if config.lldb_enable_lua: config.available_features.add('lua') if config.lldb_enable_lzma: config.available_features.add('lzma') if find_executable('xz') != None: config.available_features.add('xz') # NetBSD permits setting dbregs either if one is root # or if user_set_dbregs is enabled can_set_dbregs = True if platform.system() == 'NetBSD' and os.geteuid() != 0: try: output = subprocess.check_output([ "/sbin/sysctl", "-n", "security.models.extensions.user_set_dbregs" ]).decode().strip() if output != "1": can_set_dbregs = False except subprocess.CalledProcessError: can_set_dbregs = False if can_set_dbregs: config.available_features.add('dbregs-set') # pass control variable through llvm_config.with_system_environment('FREEBSD_LEGACY_PLUGIN')
# test_source_root: The root path where tests are located. config.test_source_root = os.path.dirname(__file__) # test_exec_root: The root path where tests should be run. config.test_exec_root = os.path.join(config.circt_obj_root, 'test') config.substitutions.append(('%PATH%', config.environment['PATH'])) config.substitutions.append(('%shlibext', config.llvm_shlib_ext)) config.substitutions.append(('%shlibdir', config.circt_shlib_dir)) config.substitutions.append(('%INC%', config.circt_include_dir)) config.substitutions.append(('%PYTHON%', config.python_executable)) config.substitutions.append( ('%TCL_PATH%', config.circt_src_root + '/build/lib/Bindings/Tcl/')) config.substitutions.append(('%CIRCT_SOURCE%', config.circt_src_root)) llvm_config.with_system_environment(['HOME', 'INCLUDE', 'LIB', 'TMP', 'TEMP']) llvm_config.use_default_substitutions() # Set the timeout, if requested. if config.timeout is not None and config.timeout != "": lit_config.maxIndividualTestTime = int(config.timeout) # excludes: A list of directories to exclude from the testsuite. The 'Inputs' # subdirectories contain auxiliary inputs for various tests in their parent # directories. config.excludes = [ 'Inputs', 'CMakeLists.txt', 'README.txt', 'LICENSE.txt', 'lit.cfg.py', 'lit.local.cfg.py' ]
# excludes: A list of directories to exclude from the testsuite. The 'Inputs' # subdirectories contain auxiliary inputs for various tests in their parent # directories. config.excludes = ['Inputs', 'CMakeLists.txt', 'README.txt', 'LICENSE.txt'] # test_source_root: The root path where tests are located. config.test_source_root = os.path.dirname(__file__) # test_exec_root: The root path where tests should be run. config.test_exec_root = os.path.join(config.lldb_obj_root, 'test', 'Shell') # Propagate environment vars. llvm_config.with_system_environment([ 'FREEBSD_LEGACY_PLUGIN', 'HOME', 'TEMP', 'TMP', 'XDG_CACHE_HOME', ]) # Support running the test suite under the lldb-repro wrapper. This makes it # possible to capture a test suite run and then rerun all the test from the # just captured reproducer. lldb_repro_mode = lit_config.params.get('lldb-run-with-repro', None) if lldb_repro_mode: config.available_features.add('lldb-repro') lit_config.note("Running Shell tests in {} mode.".format(lldb_repro_mode)) toolchain.use_lldb_repro_substitutions(config, lldb_repro_mode) llvm_config.use_default_substitutions() toolchain.use_lldb_substitutions(config)
# subdirectories contain auxiliary inputs for various tests in their parent # directories. config.excludes = ['Inputs', 'CMakeLists.txt', 'README.txt', 'LICENSE.txt'] # test_source_root: The root path where tests are located. config.test_source_root = os.path.dirname(__file__) # test_exec_root: The root path where tests should be run. config.test_exec_root = os.path.join(config.llvm_obj_root, 'test') # Tweak the PATH to include the tools dir. llvm_config.with_environment('PATH', config.llvm_tools_dir, append_path=True) # Propagate some variables from the host environment. llvm_config.with_system_environment([ 'HOME', 'INCLUDE', 'LIB', 'TMP', 'TEMP', 'ASAN_SYMBOLIZER_PATH', 'MSAN_SYMBOLIZER_PATH' ]) # Set up OCAMLPATH to include newly built OCaml libraries. top_ocaml_lib = os.path.join(config.llvm_lib_dir, 'ocaml') llvm_ocaml_lib = os.path.join(top_ocaml_lib, 'llvm') llvm_config.with_system_environment('OCAMLPATH') llvm_config.with_environment('OCAMLPATH', top_ocaml_lib, append_path=True) llvm_config.with_environment('OCAMLPATH', llvm_ocaml_lib, append_path=True) llvm_config.with_system_environment('CAML_LD_LIBRARY_PATH') llvm_config.with_environment('CAML_LD_LIBRARY_PATH', llvm_ocaml_lib, append_path=True)
"No attribute %r in test configuration! You may need to run " "tests from your build directory or add this attribute " "to lit.site.cfg " % attr_name) return attr_value # If this is an MSVC environment, the tests at the root of the tree are # unsupported. The local win_cdb test suite, however, is supported. is_msvc = get_required_attr(config, "is_msvc") if is_msvc: config.available_features.add('msvc') # FIXME: We should add some llvm lit utility code to find the Windows SDK # and set up the environment appopriately. win_sdk = 'C:/Program Files (x86)/Windows Kits/10/' arch = 'x64' llvm_config.with_system_environment(['LIB', 'LIBPATH', 'INCLUDE']) # Clear _NT_SYMBOL_PATH to prevent cdb from attempting to load symbols from # the network. llvm_config.with_environment('_NT_SYMBOL_PATH', '') tools.append( ToolSubst('%cdb', '"%s"' % os.path.join(win_sdk, 'Debuggers', arch, 'cdb.exe'))) # clang_src_dir and lld_src_dir are not used by these tests, but are required by # use_clang() and use_lld() respectively, so set them to "", if needed. if not hasattr(config, 'clang_src_dir'): config.clang_src_dir = "" llvm_config.use_clang(required=('clang' in config.llvm_enabled_projects)) if not hasattr(config, 'lld_src_dir'): config.lld_src_dir = ""