Skip to content

Commit e4fceb3

Browse files
authored
Disable NORETURN annotation on PROCAbort for Arm (#99587)
* Disable NORETURN annotation on PROCAbort for Arm Contributes to #86273 * Fix build break
1 parent b181ed5 commit e4fceb3

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

src/coreclr/pal/src/include/pal/process.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,10 @@ BOOL PROCAbortInitialize();
155155
156156
Does not return
157157
--*/
158+
#if !defined(HOST_ARM) // PAL_NORETURN produces broken unwinding information for this method
159+
// making crash dumps impossible to analyze
158160
PAL_NORETURN
161+
#endif
159162
VOID PROCAbort(int signal = SIGABRT, siginfo_t* siginfo = nullptr);
160163

161164
/*++

src/coreclr/pal/src/thread/process.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1271,7 +1271,7 @@ RaiseFailFastException(
12711271
ENTRY("RaiseFailFastException");
12721272

12731273
TerminateCurrentProcessNoExit(TRUE);
1274-
PROCAbort();
1274+
for (;;) PROCAbort();
12751275

12761276
LOGEXIT("RaiseFailFastException");
12771277
PERF_EXIT(RaiseFailFastException);
@@ -2541,7 +2541,9 @@ PROCCreateCrashDumpIfEnabled(int signal, siginfo_t* siginfo, bool serialize)
25412541
25422542
Does not return
25432543
--*/
2544+
#if !defined(HOST_ARM)
25442545
PAL_NORETURN
2546+
#endif
25452547
VOID
25462548
PROCAbort(int signal, siginfo_t* siginfo)
25472549
{

0 commit comments

Comments
 (0)