Differences From Artifact [98da1df5a9]:
- File
src/runtime/exception.m
— part of check-in
[fa0f45f5f8]
at
2024-11-02 23:32:40
on branch trunk
— Fix minor space errors and typos
Found during review of the diff between last and current release. (user: js, size: 19955) [annotate] [blame] [check-ins using]
To Artifact [4a8fb62c93]:
- File src/runtime/exception.m — part of check-in [691290ca0f] at 2024-11-03 23:52:36 on branch trunk — runtime: Fix handling C++ exceptions (user: js, size: 19963) [annotate] [blame] [check-ins using]
︙ | ︙ | |||
233 234 235 236 237 238 239 | _Unwind_SetIP(struct _Unwind_Context *ctx, uintptr_t value) { uintptr_t thumb = _Unwind_GetGR(ctx, 15) & 1; _Unwind_SetGR(ctx, 15, (value | thumb)); } #endif | | | 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 | _Unwind_SetIP(struct _Unwind_Context *ctx, uintptr_t value) { uintptr_t thumb = _Unwind_GetGR(ctx, 15) & 1; _Unwind_SetGR(ctx, 15, (value | thumb)); } #endif #ifdef CXX_PERSONALITY_STR static PERSONALITY_FUNC(cxx_personality) OF_WEAK_REF(CXX_PERSONALITY_STR); #endif #ifdef __SEH__ extern EXCEPTION_DISPOSITION _GCC_specific_handler(PEXCEPTION_RECORD, void *, PCONTEXT, PDISPATCHER_CONTEXT, _Unwind_Reason_Code (*)(int, int, uint64_t, struct _Unwind_Exception *, struct _Unwind_Context *)); |
︙ | ︙ | |||
611 612 613 614 615 616 617 | struct LSDA LSDA; uintptr_t landingpad = 0; uint8_t found = 0; intptr_t filter = 0; if (foreign) { switch (exClass) { | | | 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 | struct LSDA LSDA; uintptr_t landingpad = 0; uint8_t found = 0; intptr_t filter = 0; if (foreign) { switch (exClass) { #ifdef CXX_PERSONALITY_STR case GNUCCXX0_EXCEPTION_CLASS: case CLNGCXX0_EXCEPTION_CLASS: if (cxx_personality != NULL) return CALL_PERSONALITY(cxx_personality); break; #endif } |
︙ | ︙ |