Björn
Blog posts and open-source work
About
Björn
- Systems engineer
- bjorn@tweedegolf.com
Björn is a systems engineer with a degree in Computer Sciences and nearly a decade of experience in Rust.
He specializes in low level engineering and has contributed to several open-source projects, most notably the Rust compiler itself. He is also the author and maintainer of Rustc_codegen_cranelift.
Blog posts
See all posts by BjörnException handling in rustc_codegen_cranelift
Panics in Rust by default unwind to run Drop implementations for all values on the stack. Rust's stack unwinding is implemented using the same mechanism as C++ exceptions on most platforms. Recently the Cranelift code generator got support for "landingpad" style exceptions as detailed in the corresponding Cranelift RFC allowing me to add support for unwinding on panics to rustc_codegen_cranelift (cg_clif) for Unix systems.
In this article, I'll show you how exception handling works in cg_clif by walking you through several layers of the compilation process all the way to the runtime behavior.
Open-source work
Show allTags
Languages
Contributors
openleadr-rs
Openleadr-rs is an opinionated, open-source Rust implementation of the OpenADR 3.0 protocol that's ready for real-world pilots. OpenADR is a protocol for automatic demand-response in electricity grids, used, for example, for dynamic pricing or load shedding.
openleadr-rs was initiated by us as openadr-rs, but is now part of the OpenLEADR project, governed by the Linux Energy Foundation.