Files
clang-p2996/mlir/test/Integration/Dialect/SparseTensor/CPU/lit.local.cfg
Zhaoshi Zheng fe55c34d19 [MLIR][test] Run SVE and SME Integration tests using qemu-aarch64 (#101568)
To run integration tests using qemu-aarch64 on x64 host, below flags are
added to the cmake command when building mlir/llvm:

      -DMLIR_INCLUDE_INTEGRATION_TESTS=ON \
      -DMLIR_RUN_ARM_SVE_TESTS=ON \
      -DMLIR_RUN_ARM_SME_TESTS=ON \
      -DARM_EMULATOR_EXECUTABLE="<...>/qemu-aarch64" \
      -DARM_EMULATOR_OPTIONS="-L /usr/aarch64-linux-gnu" \

-DARM_EMULATOR_MLIR_CPU_RUNNER_EXECUTABLE="<llvm_arm64_build_top>/bin/mlir-cpu-runner-arm64"
\
      -DARM_EMULATOR_LLI_EXECUTABLE="<llvm_arm64_build_top>/bin/lli" \
      -DARM_EMULATOR_UTILS_LIB_DIR="<llvm_arm64_build_top>/lib"

The last three above are prebuilt on, or cross-built for, an aarch64
host.

This patch introduced substittutions of "%native_mlir_runner_utils" etc. and use
them in SVE/SME integration tests. When configured to run using qemu-aarch64,
mlir runtime util libs will be loaded from ARM_EMULATOR_UTILS_LIB_DIR, if set.

Some tests marked with 'UNSUPPORTED: target=aarch64{{.*}}' are still run
when configured with ARM_EMULATOR_EXECUTABLE and the default target is
not aarch64.
A lit config feature 'mlir_arm_emulator' is added in
mlir/test/lit.site.cfg.py.in and to UNSUPPORTED list of such tests.
2024-08-15 21:37:51 -07:00

17 lines
497 B
INI

import sys
from lit.llvm import llvm_config
# No JIT on win32.
if sys.platform == "win32":
config.unsupported = True
# ArmSVE tests must be enabled via build flag.
if config.mlir_run_arm_sve_tests:
config.substitutions.append(("%ENABLE_VLA", "true"))
config.substitutions.append(
("%VLA_ARCH_ATTR_OPTIONS", '--march=aarch64 --mattr="+sve"')
)
else:
config.substitutions.append(("%ENABLE_VLA", "false"))
config.substitutions.append(("%VLA_ARCH_ATTR_OPTIONS", ""))