We are getting many crash reports from users that just updated to Sonoma 14.3 on arm64 macs. We can reproduce these types of crashes on arm64 14.3 machines only (not Intel 14.3, other versions of macOS, etc).
A typical crash report:
Code Type: arm64
Parent Process: launchd [1]
Date/Time: 2024-01-27T15:51:54.999Z
Launch Time: 2024-01-27T15:51:43Z
OS Version: Mac OS X 14.3.0 (23D56)
Report Version: 104
Exception Type: SIGILL
Exception Codes: ILL_NOOP at 0x2e23fc03
Crashed Thread: 9
Thread 9 Crashed:
0 QuartzCore 0x0000000188923428 CA::OGL::PathRenderer::PathRenderer(CA::OGL::Context&, CA::Mat2 const&, CA::Bounds const&, bool, bool, bool) + 268
1 QuartzCore 0x0000000188922d90 CA::OGL::PathFiller::PathFiller(CA::OGL::Context&, CA::Mat2 const&, CA::Bounds const&, CA::OGL::PathCubic*, int, CA::OGL::PathRect*, int, CA::OGL::PathFiller::ScanlinePoint*, int, bool, bool) + 48
2 QuartzCore 0x000000018885db28 CA::CG::fill_path(CA::CG::Renderer&, CGPath const*, CA::CG::StrokeParameters const*, CA::Rect const*, CA::ScanConverter::FillRule, CA::Mat2 const&, bool) + 2724
3 QuartzCore 0x00000001887ffe7c CA::CG::DrawOp::render(CA::CG::Renderer&) const + 1520
4 QuartzCore 0x00000001887fce5c CA::CG::Queue::render_callback(void*) + 1472
5 libdispatch.dylib 0x0000000180448910 _dispatch_client_callout + 16
6 libdispatch.dylib 0x000000018044ff74 _dispatch_lane_serial_drain + 952
7 libdispatch.dylib 0x00000001804509d4 _dispatch_lane_invoke + 376
8 libdispatch.dylib 0x000000018045b61c _dispatch_root_queue_drain_deferred_wlh + 284
9 libdispatch.dylib 0x000000018045ae90 _dispatch_workloop_worker_thread + 400
10 libsystem_pthread.dylib 0x00000001805f6114 _pthread_wqthread + 284
11 libsystem_pthread.dylib 0x00000001805f4e30 start_wqthread + 4
Thread 0:
0 libsystem_kernel.dylib 0x00000001805bb5a8 kevent_id + 8
1 libdispatch.dylib 0x000000018046bff4 _dispatch_event_loop_wait_for_ownership + 432
2 libdispatch.dylib 0x0000000180457f94 DISPATCH_WAIT_FOR_QUEUE + 336
3 libdispatch.dylib 0x0000000180457b5c _dispatch_sync_f_slow + 144
4 QuartzCore 0x00000001887e36a0 CABackingStoreGetFrontTexture(CABackingStore*, CGColorSpace*) + 184
5 QuartzCore 0x00000001887d374c -[NSObject(CARenderValue) CA_prepareRenderValue] + 228
6 QuartzCore 0x0000000188a2545c CA::Layer::prepare_contents(CALayer*, CA::Transaction*) + 188
7 QuartzCore 0x00000001887d0798 CA::Layer::prepare_commit(CA::Transaction*) + 276
8 QuartzCore 0x0000000188950e4c CA::Context::commit_transaction(CA::Transaction*, double, double*) + 676
9 QuartzCore 0x00000001887ae8f0 CA::Transaction::commit() + 644
10 AppKit 0x0000000183fdcb18 __62+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayLink]_block_invoke + 268
11 AppKit 0x0000000184992f04 ___NSRunLoopObserverCreateWithHandler_block_invoke + 60
12 CoreFoundation 0x00000001806d6d80 CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION + 32
13 CoreFoundation 0x00000001806d6c6c __CFRunLoopDoObservers + 528
14 CoreFoundation 0x00000001806d629c CFRunLoopRun + 772
15 CoreFoundation 0x00000001806d593c CFRunLoopRunSpecific + 604
16 HIToolbox 0x000000018ac9e448 RunCurrentEventLoopInMode + 288
17 HIToolbox 0x000000018ac9e0d8 ReceiveNextEventCommon + 216
18 HIToolbox 0x000000018ac9dfdc _BlockUntilNextEventMatchingListInModeWithFilter + 72
19 AppKit 0x0000000183eb4ed0 DPSNextEvent + 656
20 AppKit 0x000000018469feec -[NSApplication(NSEventRouting) nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 712
21 AppKit 0x0000000183ea837c -[NSApplication run] + 472
22 acord 0x0000000100c45290 P110TARGETAPP$$TTARGETAPPLICATION$$$_EVENTLOOP (p110TargetApp.pas:5781)
23 acord 0x0000000100bc82e8 PASCALMAIN (Accord.pas:154)
24 acord 0x000000010159ab40 FPC_SysEntry + 28
25 acord 0x000000010156f770 FPC_SYSTEMMAIN + 76
26 acord 0x0000000100bc814c main + 8
27 ??? 0x00000001802790e0 0x0 + 0
{....}
Thread 14:
0 ??? 0x0000000000000000 0x0 + 0
Thread 9 crashed with arm64 Thread State:
x21: 0x000000016f7bb270 x2: 0x0000000169a00658 x16: 0x00000001887fef60 x3: 0x000000016f7b6a20
x22: 0x000000016f7b6a20 x4: 0x0000000000000000 x17: 0x00000001887feeb0 cpsr: 0x0000000060001000
x5: 0x0000000000000000 x23: 0x0000000000000000 x6: 0x0000000000000001 x18: 0x0000000000000000
x10: 0x0000000188af7000 lr: 0x0000000188922d90 x7: 0x0000000000000000 x24: 0x0000000169a00658
x11: 0x0000000000000000 x8: 0x0000000000000007 x19: 0x000000016f7b6a70 x25: 0x0000000188b0d968
x9: 0x0000000000000001 x12: 0x0000000000000008 fp: 0x000000016f7b6960 x26: 0x000000016f7ca270
x13: 0x0000000000000009 pc: 0x0000000188923428 x27: 0x0000000000000001 x14: 0x0000000000000001
x20: 0x000000016f7b8a70 x0: 0x000000016f7ca270 sp: 0x000000016f7b6940 x28: 0x0000000000000000
x15: 0x0000000000000012 x1: 0x0000000144808e00
In Xcode we might see a divide by zero like:
0x189247428 <+268>: fdiv EXC_BAD_INSTRUCTION (code=1, subcode=0x2e23fc03)
Any help with interpreting/debugging this type of crash would be appreciated.