diff options
| author | bors <bors@rust-lang.org> | 2020-08-25 07:36:52 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2020-08-25 07:36:52 +0000 |
| commit | 3d6a3ed15823cce765d56952d954e1bd8166dfa7 (patch) | |
| tree | ef3e35a72345e28e38e2684d4d528dcc6e62956b /compiler/rustc_llvm/llvm-wrapper/ArchiveWrapper.cpp | |
| parent | c30341ddec0b99bb3bd8bb5fd8c8451778c78330 (diff) | |
| parent | b9b8b5c96b60789b6b7846a4036d3cbf2d393014 (diff) | |
| download | rust-3d6a3ed15823cce765d56952d954e1bd8166dfa7.tar.gz rust-3d6a3ed15823cce765d56952d954e1bd8166dfa7.zip | |
Auto merge of #75364 - rylev:libpanic-abort-failfast, r=alexcrichton
Call into fastfail on abort in libpanic_abort on Windows x86(_64) This partially resolves #73215 though this is only for x86 targets. This code is directly lifted from [libstd](https://github.com/rust-lang/rust/blob/13290e83a6e20f3b408d177a9d64d8cf98fe4615/library/std/src/sys/windows/mod.rs#L315). `__fastfail` is the preferred way to abort a process on Windows as it will hook into debugger toolchains. Other platforms expose a `_rust_abort` symbol which wraps `std::sys::abort_internal`. This would also work on Windows, but is a slightly largely change as we'd need to make sure that the symbol is properly exposed to the linker. I'm inlining the call to the `__fastfail`, but the indirection through `rust_abort` might be a cleaner approach. A different instruction must be used on ARM architectures. I'd like to verify this works first before tackling ARM.
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/ArchiveWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
