# SJLJ - setjmp & longjmp for Rust
[](https://crates.io/crates/sjlj)
[](https://docs.rs/sjlj)
[](./LICENSE)
A small library that provides inline asm functions for the `setjmp` and `longjmp` functions. Also provides `sigsetjmp` and `siglongjmp` on Linux. This is for using them without requiring a `libc`. The functions are ported from [musl](http://git.musl-libc.org/cgit/musl/tree/src/setjmp).
For a great article on how `setjmp` and `longjmp` work check out Mark Mossberg's [blogpost](https://offlinemark.com/2016/02/09/lets-understand-setjmp-longjmp/) which walks through x86's assembly implementation.
Implemented Architectures:
* `x86_64`