config.substitutions.append(
    ("%device_asan_flags", "-Xarch_device -fsanitize=address")
)
config.substitutions.append(
    ("%device_asan_aot_flags", "-Xarch_device -fsanitize=address %if cpu %{ -fsycl-targets=spir64_x86_64 %} %if gpu %{ -fsycl-targets=spir64_gen -Xsycl-target-backend=spir64_gen %gpu_aot_target_opts %}")
)
config.substitutions.append(
    ("%force_device_asan_rt", "env UR_ENABLE_LAYERS=UR_LAYER_ASAN")
)

if "-fsanitize=memory" in config.cxx_flags:
    config.unsupported=True

# AddressSanitizer is not currently supported for non-spir triples
config.unsupported_features  += ['target-nvidia', 'target-amd']

# https://github.com/intel/llvm/issues/15953
config.unsupported_features += ['gpu-intel-gen12']

# CMPLRLLVM-64052
config.unsupported_features += ['spirv-backend']

# https://github.com/intel/llvm/issues/16920
config.unsupported_features += ['arch-intel_gpu_bmg_g21']
