git: eac62e18e83a - stable/15 - libc/arm: use __builtin_trap() instead of abort() in aeabi_unwind stubs

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Fri, 20 Feb 2026 16:46:29 UTC
The branch stable/15 has been updated by fuz:

URL: https://cgit.FreeBSD.org/src/commit/?id=eac62e18e83a15fa744b2683c3a7f1fcf659e8cc

commit eac62e18e83a15fa744b2683c3a7f1fcf659e8cc
Author:     Robert Clausecker <fuz@FreeBSD.org>
AuthorDate: 2026-02-11 18:50:18 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2026-02-20 16:44:55 +0000

    libc/arm: use __builtin_trap() instead of abort() in aeabi_unwind stubs
    
    This avoids a dependency on the abort symbol in libsys.
    
    PR:             292539
    Reviewed by:    mmel
    Approved by:    markj (mentor)
    MFC after:      1 week
    Differential Revision:  https://reviews.freebsd.org/D55255
    
    (cherry picked from commit 1782bc9a0a8da2d6aca31b7790981e1980c9e4b9)
---
 lib/libc/arm/aeabi/aeabi_unwind_cpp.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/lib/libc/arm/aeabi/aeabi_unwind_cpp.c b/lib/libc/arm/aeabi/aeabi_unwind_cpp.c
index efcace2c0675..3667b7d7e673 100644
--- a/lib/libc/arm/aeabi/aeabi_unwind_cpp.c
+++ b/lib/libc/arm/aeabi/aeabi_unwind_cpp.c
@@ -27,15 +27,15 @@
  *
  */
 
+#include <sys/param.h>
+
 /*
  * Provide an implementation of __aeabi_unwind_cpp_pr{0,1,2}. These are
  * required by libc but are implemented in libgcc_eh.a which we don't link
- * against. The libgcc_eh.a version will be called so we call abort to
+ * against. The libgcc_eh.a version will be called so we trap to
  * check this.
  */
 
-#include <stdlib.h>
-
 void __aeabi_unwind_cpp_pr0(void) __hidden;
 void __aeabi_unwind_cpp_pr1(void) __hidden;
 void __aeabi_unwind_cpp_pr2(void) __hidden;
@@ -43,18 +43,18 @@ void __aeabi_unwind_cpp_pr2(void) __hidden;
 void
 __aeabi_unwind_cpp_pr0(void)
 {
-	abort();
+	__builtin_trap();
 }
 
 void
 __aeabi_unwind_cpp_pr1(void)
 {
-	abort();
+	__builtin_trap();
 }
 
 void
 __aeabi_unwind_cpp_pr2(void)
 {
-	abort();
+	__builtin_trap();
 }