jasonmolenda wrote: Ah, so the problem is, ``` (lldb) bt * thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_INSTRUCTION (code=1, subcode=0xdead) * frame #0: 0x0000000100003f2c b.out`signal_generating_add + 4 at signal-in-leaf-function-aarch64.c:5 frame #1: 0x0000000100003f7c b.out`main + 44 at signal-in-leaf-function-aarch64.c:14 frame #2: 0x0000000185c76244 dyld`start + 2792 ```
The bad instruction in `signal_generating_add()`, is sent to the program master a EXC_BAD_INSTRUCTION mach exception, not a posix signal (or maybe it was received by lldb as a mach exception and if it had continued to the process it would be recieved as a signal). When I've done these kinds of test cases in the past, I usually add a signal handler and then send the signal to the inferior, e.g. `lldb/test/API/functionalities/unwind/sigtramp/main.c` -- this test is marked `@skipUnlessDarwin` with a comment of ``` # On different platforms the "_sigtramp" and "__kill" frames are likely to be different. # This test could probably be adapted to run on linux/*bsd easily enough. ``` (the test explicitly checks the stack for the function names that should appear above the signal handler) https://github.com/llvm/llvm-project/pull/91321 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits