about summary refs log tree commit diff
path: root/compiler/rustc_codegen_llvm/src/errors.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2024-05-19 17:35:20 +0000
committerbors <bors@rust-lang.org>2024-05-19 17:35:20 +0000
commit85ed056888c50b6c6a47cc3af398170a8508db96 (patch)
tree194d9b2601da64f35256e5edba6c9802b201a85a /compiler/rustc_codegen_llvm/src/errors.rs
parenta32423c28e71be370203e256b7b06b62e624a0aa (diff)
parent5e41ff516fad8f2984cc0c290948c458970e4a86 (diff)
downloadrust-85ed056888c50b6c6a47cc3af398170a8508db96.tar.gz
rust-85ed056888c50b6c6a47cc3af398170a8508db96.zip
Auto merge of #3319 - bjorn3:some_more_shims, r=RalfJung
Directly implement native exception raise methods in miri

This implements the `_Unwind_RaiseException` function used on pretty much every unix system for starting unwinding. This allows removing the miri special case from libpanic_unwind for unix.

Windows still needs `miri_start_unwind` as SEH unwinding isn't supported by miri. Unlike DWARF unwinding, SEH preserves all stack frames until right after the do_catch function has executed. Because of this panic_unwind stack allocates the exception object. Miri can't currently model unwinding without destroying stack frames and as such will report a use-after-free of the exception object.
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/errors.rs')
0 files changed, 0 insertions, 0 deletions