Skip to content

Conversation

thurstond
Copy link
Contributor

Reverts #154428 due to buildbot breakages (e.g., https://lab.llvm.org/buildbot/#/builders/51/builds/22984)

@llvmbot
Copy link
Member

llvmbot commented Sep 6, 2025

@llvm/pr-subscribers-compiler-rt-sanitizer

Author: Thurston Dang (thurstond)

Changes

Reverts llvm/llvm-project#154428 due to buildbot breakages (e.g., https://lab.llvm.org/buildbot/#/builders/51/builds/22984)


Full diff: https://github.com/llvm/llvm-project/pull/157317.diff

3 Files Affected:

  • (modified) compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_memintrinsics.inc (-11)
  • (modified) compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h (+1-3)
  • (removed) compiler-rt/test/sanitizer_common/TestCases/Linux/memset_explicit.c (-13)
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_memintrinsics.inc b/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_memintrinsics.inc
index 5334b0ded17e8..0b6731c89950b 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_memintrinsics.inc
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_memintrinsics.inc
@@ -233,16 +233,6 @@ INTERCEPTOR(void *, bzero, void *block, usize size) {
 #define INIT_BZERO
 #endif  // SANITIZER_INTERCEPT_BZERO
 
-#if SANITIZER_INTERCEPT_MEMSET_EXPLICIT
-INTERCEPTOR(void *, memset_explicit, void *block, int c, usize size) {
-  void *ctx;
-  COMMON_INTERCEPTOR_MEMSET_IMPL(ctx, block, c, size);
-}
-#define INIT_MEMSET_EXPLICIT COMMON_INTERCEPT_FUNCTION(memset_explicit)
-#else
-#define INIT_MEMSET_EXPLICIT
-#endif
-
 namespace __sanitizer {
 // This does not need to be called if InitializeCommonInterceptors() is called.
 void InitializeMemintrinsicInterceptors() {
@@ -252,6 +242,5 @@ void InitializeMemintrinsicInterceptors() {
   INIT_AEABI_MEM;
   INIT___BZERO;
   INIT_BZERO;
-  INIT_MEMSET_EXPLICIT;
 }
 }  // namespace __sanitizer
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h b/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
index eee7af2069694..29987decdff45 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
@@ -663,17 +663,15 @@ SANITIZER_WEAK_IMPORT void *aligned_alloc(__sanitizer::usize __alignment,
 #define SANITIZER_INTERCEPT_GETSERVBYNAME_R SI_GLIBC
 #define SANITIZER_INTERCEPT_GETSERVBYPORT_R SI_GLIBC
 
-// Until free_sized, free_aligned_sized and memset_explicit are more generally available,
+// Until free_sized and free_aligned_sized are more generally available,
 // we can only unconditionally intercept on ELF-based platforms where it
 // is okay to have undefined weak symbols.
 #ifdef __ELF__
 #  define SANITIZER_INTERCEPT_FREE_SIZED 1
 #  define SANITIZER_INTERCEPT_FREE_ALIGNED_SIZED 1
-#  define SANITIZER_INTERCEPT_MEMSET_EXPLICIT 1
 #else
 #  define SANITIZER_INTERCEPT_FREE_SIZED 0
 #  define SANITIZER_INTERCEPT_FREE_ALIGNED_SIZED 0
-#  define SANITIZER_INTERCEPT_MEMSET_EXPLICIT 0
 #endif
 
 // This macro gives a way for downstream users to override the above
diff --git a/compiler-rt/test/sanitizer_common/TestCases/Linux/memset_explicit.c b/compiler-rt/test/sanitizer_common/TestCases/Linux/memset_explicit.c
deleted file mode 100644
index 4714ea51f25de..0000000000000
--- a/compiler-rt/test/sanitizer_common/TestCases/Linux/memset_explicit.c
+++ /dev/null
@@ -1,13 +0,0 @@
-// RUN: %clang -std=c23 -O0 %s -o %t && %run %t
-// UNSUPPORTED: asan, lsan, hwasan, ubsan
-
-#include <stddef.h>
-#include <stdlib.h>
-
-extern void *memset_explicit(void *p, int value, size_t size);
-
-int main() {
-  char secbuffer[64];
-  (void)memset_explicit(secbuffer, 0, sizeof(secbuffer));
-  return 0;
-}

@thurstond thurstond merged commit 69c777b into main Sep 6, 2025
12 checks passed
@thurstond thurstond deleted the revert-154428-memset_explicit_c23 branch September 6, 2025 21:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants