[libc-commits] [libc] [libc] restored original no_stack_protector syntax (PR #94005)
via libc-commits
libc-commits at lists.llvm.org
Fri May 31 11:36:14 PDT 2024
https://github.com/RoseZhang03 created https://github.com/llvm/llvm-project/pull/94005
forward fix for #93620
-GCC doesn't recognize [[clang:: ']] prefix, so restored the original
__attribute__ syntax
>From 56fd3a723776505462400138b537d0e6baa76147 Mon Sep 17 00:00:00 2001
From: Rose Zhang <rosezhang at google.com>
Date: Fri, 31 May 2024 18:32:51 +0000
Subject: [PATCH] restored original no_stack_protector syntax
forward fix for #93620
-GCC doesn't recognize [[clang:: ']] prefix, so restored the original
__attribute__ syntax
---
libc/src/__support/OSUtil/linux/exit.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libc/src/__support/OSUtil/linux/exit.cpp b/libc/src/__support/OSUtil/linux/exit.cpp
index ee904155c537d..4a1d56a172a1a 100644
--- a/libc/src/__support/OSUtil/linux/exit.cpp
+++ b/libc/src/__support/OSUtil/linux/exit.cpp
@@ -15,9 +15,9 @@ namespace LIBC_NAMESPACE::internal {
// mark as no_stack_protector for x86 since TLS can be torn down before calling
// exit so that the stack protector canary cannot be loaded.
#ifdef LIBC_TARGET_ARCH_IS_X86
-[[clang::no_stack_protector]]
+__attribute__((no_stack_protector))
#endif
-[[noreturn]] void
+__attribute__((noreturn)) void
exit(int status) {
for (;;) {
LIBC_NAMESPACE::syscall_impl<long>(SYS_exit_group, status);
More information about the libc-commits
mailing list