diff options
| author | Michael Dusan <michael.dusan@gmail.com> | 2020-01-12 16:10:17 -0500 |
|---|---|---|
| committer | Michael Dusan <michael.dusan@gmail.com> | 2020-01-12 16:41:11 -0500 |
| commit | 25b1ae0a5faf5e5632d9e9103840da6d9c5e80cb (patch) | |
| tree | b763b38c6de4b97b6775b8df20ce76285d36425e /src/codegen.cpp | |
| parent | c96131f30caaf6d7cd1d202891a28ee0df8b577e (diff) | |
| download | zig-25b1ae0a5faf5e5632d9e9103840da6d9c5e80cb.tar.gz zig-25b1ae0a5faf5e5632d9e9103840da6d9c5e80cb.zip | |
prefer C++ compiler builtins for BREAKPOINT
Fix breakpoints on macOS to trap EXC_BREAKPOINT with correct
source location when using lldb. Old behavior with `raise(SIGTRAP)`
traps SIGTRAP and incorrect source location.
Fix breakpoints on archlinux to trap SIGILL with correct source
location when using gdb. Old behavior with `raise(SIGTRAP)`
traps SIGTRAP and (sometimes) incorrect source location with
very shallow (break in main) stack.
when building stage1:
- w/ clang, use `__builtin_debugtrap()`
- w/ gcc, use `__builtin_trap()`
- else use `raise(SIGTRAP)`
Diffstat (limited to 'src/codegen.cpp')
0 files changed, 0 insertions, 0 deletions
