[compiler-rt] [NFC][CFI] Fix test from #137245 (PR #137420)

Vitaly Buka via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 25 16:46:38 PDT 2025


https://github.com/vitalybuka updated https://github.com/llvm/llvm-project/pull/137420

>From ec4306c83bdc406029dfdb26902d0f8932a539e3 Mon Sep 17 00:00:00 2001
From: Vitaly Buka <vitalybuka at google.com>
Date: Fri, 25 Apr 2025 16:45:00 -0700
Subject: [PATCH 1/2] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?=
 =?UTF-8?q?itial=20version?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Created using spr 1.3.4
---
 compiler-rt/test/ubsan_minimal/CMakeLists.txt     | 6 +++++-
 compiler-rt/test/ubsan_minimal/TestCases/icall.c  | 2 +-
 compiler-rt/test/ubsan_minimal/lit.common.cfg.py  | 3 +++
 compiler-rt/test/ubsan_minimal/lit.site.cfg.py.in | 1 +
 4 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/compiler-rt/test/ubsan_minimal/CMakeLists.txt b/compiler-rt/test/ubsan_minimal/CMakeLists.txt
index dea0b4f2c07f4..69521cc3ed885 100644
--- a/compiler-rt/test/ubsan_minimal/CMakeLists.txt
+++ b/compiler-rt/test/ubsan_minimal/CMakeLists.txt
@@ -10,9 +10,13 @@ set(UBSAN_TEST_DEPS ${SANITIZER_COMMON_LIT_TEST_DEPS})
 list(APPEND UBSAN_TEST_DEPS ubsan-minimal)
 
 foreach(arch ${UBSAN_TEST_ARCH})
+  set(CONFIG_NAME ${arch})
   string(TOLOWER "-${arch}-${OS_NAME}" UBSAN_TEST_CONFIG_SUFFIX)
   get_test_cc_for_arch(${arch} UBSAN_TEST_TARGET_CC UBSAN_TEST_TARGET_CFLAGS)
-  set(CONFIG_NAME ${arch})
+
+  set(UBSAN_TEST_HAS_CFI ${arch} IN_LIST CFI_SUPPORTED_ARCH)
+  pythonize_bool(UBSAN_TEST_HAS_CFI)
+
   configure_lit_site_cfg(
     ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.py.in
     ${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/lit.site.cfg.py)
diff --git a/compiler-rt/test/ubsan_minimal/TestCases/icall.c b/compiler-rt/test/ubsan_minimal/TestCases/icall.c
index 25ef3180bf4bd..6948057663a20 100644
--- a/compiler-rt/test/ubsan_minimal/TestCases/icall.c
+++ b/compiler-rt/test/ubsan_minimal/TestCases/icall.c
@@ -1,7 +1,7 @@
 // RUN: %clang -fsanitize=cfi-icall -fno-sanitize-trap=cfi-icall                              -fuse-ld=lld -flto -fvisibility=hidden %s -o %t && not --crash %run %t 2>&1 | FileCheck %s
 // RUN: %clang -fsanitize=cfi-icall -fno-sanitize-trap=cfi-icall -fsanitize-recover=cfi-icall -fuse-ld=lld -flto -fvisibility=hidden %s -o %t &&             %run %t 2>&1 | FileCheck %s
 
-// REQUIRES: lld-available
+// REQUIRES: lld-available, cfi
 
 void f() {}
 
diff --git a/compiler-rt/test/ubsan_minimal/lit.common.cfg.py b/compiler-rt/test/ubsan_minimal/lit.common.cfg.py
index 115bd244b1dd8..714241a580f9d 100644
--- a/compiler-rt/test/ubsan_minimal/lit.common.cfg.py
+++ b/compiler-rt/test/ubsan_minimal/lit.common.cfg.py
@@ -45,6 +45,9 @@ def build_invocation(compile_flags):
 ]:  # TODO: Windows
     config.unsupported = True
 
+if config.test_cfi:
+    config.available_features.add("cfi")
+
 # Don't target x86_64h if the test machine can't execute x86_64h binaries.
 if "-arch x86_64h" in target_cflags and "x86_64h" not in config.available_features:
     config.unsupported = True
diff --git a/compiler-rt/test/ubsan_minimal/lit.site.cfg.py.in b/compiler-rt/test/ubsan_minimal/lit.site.cfg.py.in
index 83a28246d75af..457ddff867b84 100644
--- a/compiler-rt/test/ubsan_minimal/lit.site.cfg.py.in
+++ b/compiler-rt/test/ubsan_minimal/lit.site.cfg.py.in
@@ -5,6 +5,7 @@ config.name_suffix = "@UBSAN_TEST_CONFIG_SUFFIX@"
 # Tool-specific config options.
 config.target_cflags = "@UBSAN_TEST_TARGET_CFLAGS@"
 config.target_arch = "@UBSAN_TEST_TARGET_ARCH@"
+config.test_cfi = "@UBSAN_TEST_HAS_CFI_PYBOOL@"
 
 # Load common config for all compiler-rt lit tests.
 lit_config.load_config(config, "@COMPILER_RT_BINARY_DIR@/test/lit.common.configured")

>From 9a344badb8067e36d35648ef64864cf238d543b8 Mon Sep 17 00:00:00 2001
From: Vitaly Buka <vitalybuka at google.com>
Date: Fri, 25 Apr 2025 16:46:29 -0700
Subject: [PATCH 2/2] undo unrelated changes

Created using spr 1.3.4
---
 compiler-rt/test/ubsan_minimal/CMakeLists.txt | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/compiler-rt/test/ubsan_minimal/CMakeLists.txt b/compiler-rt/test/ubsan_minimal/CMakeLists.txt
index 69521cc3ed885..819428c6e80d9 100644
--- a/compiler-rt/test/ubsan_minimal/CMakeLists.txt
+++ b/compiler-rt/test/ubsan_minimal/CMakeLists.txt
@@ -10,13 +10,11 @@ set(UBSAN_TEST_DEPS ${SANITIZER_COMMON_LIT_TEST_DEPS})
 list(APPEND UBSAN_TEST_DEPS ubsan-minimal)
 
 foreach(arch ${UBSAN_TEST_ARCH})
-  set(CONFIG_NAME ${arch})
   string(TOLOWER "-${arch}-${OS_NAME}" UBSAN_TEST_CONFIG_SUFFIX)
   get_test_cc_for_arch(${arch} UBSAN_TEST_TARGET_CC UBSAN_TEST_TARGET_CFLAGS)
-
+  set(CONFIG_NAME ${arch})
   set(UBSAN_TEST_HAS_CFI ${arch} IN_LIST CFI_SUPPORTED_ARCH)
   pythonize_bool(UBSAN_TEST_HAS_CFI)
-
   configure_lit_site_cfg(
     ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.py.in
     ${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/lit.site.cfg.py)



More information about the llvm-commits mailing list