[libc-commits] [libc] [libc] add SIG_HOLD for linux/gpu (PR #165007)

Connector Switch via libc-commits libc-commits at lists.llvm.org
Fri Oct 24 09:09:11 PDT 2025


https://github.com/c8ef created https://github.com/llvm/llvm-project/pull/165007

None

>From 5dbd97dbd10c9c10cfe53dde792b5d992a47fb1c Mon Sep 17 00:00:00 2001
From: c8ef <c8ef at outlook.com>
Date: Sat, 25 Oct 2025 00:08:18 +0800
Subject: [PATCH] [libc] add SIG_HOLD for linux/gpu

---
 libc/include/llvm-libc-macros/gpu/signal-macros.h   | 7 ++++---
 libc/include/llvm-libc-macros/linux/signal-macros.h | 7 ++++---
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/libc/include/llvm-libc-macros/gpu/signal-macros.h b/libc/include/llvm-libc-macros/gpu/signal-macros.h
index f0d49ea34fe0e..4c458b7c2000e 100644
--- a/libc/include/llvm-libc-macros/gpu/signal-macros.h
+++ b/libc/include/llvm-libc-macros/gpu/signal-macros.h
@@ -16,9 +16,10 @@
 #define SIGSEGV 11
 #define SIGTERM 15
 
-#define SIG_DFL ((void (*)(int))(0))
-#define SIG_IGN ((void (*)(int))(1))
-#define SIG_ERR ((void (*)(int))(-1))
+#define SIG_ERR __LLVM_LIBC_CAST(reinterpret_cast, (void (*)(int)), -1)
+#define SIG_DFL __LLVM_LIBC_CAST(reinterpret_cast, (void (*)(int)), 0)
+#define SIG_IGN __LLVM_LIBC_CAST(reinterpret_cast, (void (*)(int)), 1)
+#define SIG_HOLD __LLVM_LIBC_CAST(reinterpret_cast, (void (*)(int)), 2)
 
 // Max signal number
 #define NSIG 64
diff --git a/libc/include/llvm-libc-macros/linux/signal-macros.h b/libc/include/llvm-libc-macros/linux/signal-macros.h
index d220241a38206..a010adef272d4 100644
--- a/libc/include/llvm-libc-macros/linux/signal-macros.h
+++ b/libc/include/llvm-libc-macros/linux/signal-macros.h
@@ -86,9 +86,10 @@
 #error "Signal stack sizes not defined for your platform."
 #endif
 
-#define SIG_DFL ((void (*)(int))0)
-#define SIG_IGN ((void (*)(int))1)
-#define SIG_ERR ((void (*)(int))(-1))
+#define SIG_ERR __LLVM_LIBC_CAST(reinterpret_cast, (void (*)(int)), -1)
+#define SIG_DFL __LLVM_LIBC_CAST(reinterpret_cast, (void (*)(int)), 0)
+#define SIG_IGN __LLVM_LIBC_CAST(reinterpret_cast, (void (*)(int)), 1)
+#define SIG_HOLD __LLVM_LIBC_CAST(reinterpret_cast, (void (*)(int)), 2)
 
 // SIGCHLD si_codes
 #define CLD_EXITED 1    // child has exited



More information about the libc-commits mailing list