# std.debug: greatly expand target support for segfault handling/unwinding · gitcafe/zig

[View on GitCafe](https://git.cafe/gitcafe/zig/commit/f33d3a516631be2566116b16fa2f9d5774fa62cc)

Repository: [gitcafe/zig](https://git.cafe/gitcafe/zig)

Visibility: public

Requested revision: f33d3a516631be2566116b16fa2f9d5774fa62cc

Requested commit: f33d3a516631be2566116b16fa2f9d5774fa62cc

Commit: f33d3a516631be2566116b16fa2f9d5774fa62cc

Tree: 7e6c82d217bc8fdb51d14b3feab119952b7a7a87

Author: Alex Rønne Petersen

Committer: Alex Rønne Petersen

## Message

```
std.debug: greatly expand target support for segfault handling/unwinding

I made a couple of decisions for this based on the fact that we don't expose the
signal_ucontext_t type outside of the file:

* Adding all the floating point and vector state to every ucontext_t and
  mcontext_t variant was way, way too much work, especially when we don't even
  use the stuff. So I deleted all that and kept only the bare minimum needed to
  reach into general-purpose registers.
* There is no particularly compelling reason to stick to the naming and struct
  nesting used in the system headers. So we can actually unify the access
  patterns for almost all of these variants by taking some liberties here; as a
  result, fromPosixSignalContext() is now much nicer to read and extend.

```

## Parents

- [3f5e782357bbd89e604ff8ba214eb41fe56c8ff7](https://git.cafe/gitcafe/zig/commit/3f5e782357bbd89e604ff8ba214eb41fe56c8ff7?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zig/tree/f33d3a516631be2566116b16fa2f9d5774fa62cc?format=markdown)
