[libc-commits] [libc] 435e5c1 - [libc] restored original no_stack_protector syntax (#94005)

via libc-commits libc-commits at lists.llvm.org
Fri May 31 11:36:50 PDT 2024


Author: RoseZhang03
Date: 2024-05-31T11:36:46-07:00
New Revision: 435e5c10b0ea6cf2a9674760ef2f4977412386eb

URL: https://github.com/llvm/llvm-project/commit/435e5c10b0ea6cf2a9674760ef2f4977412386eb
DIFF: https://github.com/llvm/llvm-project/commit/435e5c10b0ea6cf2a9674760ef2f4977412386eb.diff

LOG: [libc] restored original no_stack_protector syntax (#94005)

forward fix for #93620

-GCC doesn't recognize [[clang:: ']] prefix, so restored the original
__attribute__ syntax

Added: 
    

Modified: 
    libc/src/__support/OSUtil/linux/exit.cpp

Removed: 
    


################################################################################
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