summary refs log tree commit diff
path: root/src/libstd/sys_common/backtrace.rs
AgeCommit message (Collapse)AuthorLines
2018-04-13std: Minimize size of panicking on wasmAlex Crichton-7/+6
This commit applies a few code size optimizations for the wasm target to the standard library, namely around panics. We notably know that in most configurations it's impossible for us to print anything in wasm32-unknown-unknown so we can skip larger portions of panicking that are otherwise simply informative. This allows us to get quite a nice size reduction. Finally we can also tweak where the allocation happens for the `Box<Any>` that we panic with. By only allocating once unwinding starts we can reduce the size of a panicking wasm module from 44k to 350 bytes.
2018-02-17fix more typos found by codespell.Matthias Krüger-1/+1
2018-01-26Print inlined functions on WindowsJohn Kåre Alsaker-0/+3
2017-12-26Change name of `lang_start_real` to `lang_start_internal`Bastian Köcher-1/+1
Also remove `'static` from `__rust_begin_short_backtrace`
2017-11-30rustc: Prepare to enable ThinLTO by defaultAlex Crichton-2/+20
This commit prepares to enable ThinLTO and multiple codegen units in release mode by default. We've still got a debuginfo bug or two to sort out before actually turning it on by default.
2017-11-09std: Avoid use of `libc` in portable modulesAlex Crichton-5/+6
This commit removes usage of the `libc` crate in "portable" modules like those at the top level and `sys_common`. Instead common types like `*mut u8` or `u32` are used instead of `*mut c_void` or `c_int` as well as switching to platform-specific functions like `sys::strlen` instead of `libc::strlen`.
2017-10-05Remove nacl from libstdest31-2/+0
2017-05-09Don't show the std frames before user code on unwinding.Yamakaky-4/+40
When `RUST_BACKTRACE=1`, remove all frames after `__rust_maybe_catch_panic`. Tested on `main`, threads, tests and benches. Cleaning of the top of the stacktrace is let to a future PR. Fixes #40201 See #41815
2017-04-18std: Back out backtrace pruning logicAlex Crichton-80/+4
It was discovered #40264 that this backtrace pruning logic is a little too aggressive, so while we figure how out to handle #40264 this commit backs out the changes to prune frames. Note that other cosmetic changes, such as better path printing and such remain.
2017-03-30Replace hardcoded forward slash with path::MAIN_SEPARATORThomas Jespersen-2/+2
Fixes #40149
2017-02-26Also ignore std::panicYamakaky-0/+3
2017-02-26Fix tests on Windows in Debug configuration (#4)Vadim Petrochenkov-0/+6
2017-02-25Fix tests on ARM Linux (#3)Vadim Petrochenkov-0/+1
2017-02-23rposition() -> rev().position() (#2)Vadim Petrochenkov-1/+1
2017-02-23Fix tests on Windows (#1)Vadim Petrochenkov-40/+56
2017-02-15Improve backtrace formating while panicking.Yamakaky-26/+227
- `RUST_BACKTRACE=full` prints all the informations (old behaviour) - `RUST_BACKTRACE=(0|no)` disables the backtrace. - `RUST_BACKTRACE=<everything else>` (including `1`) shows a simplified backtrace, without the function addresses and with cleaned filenames and symbols. Also removes some unneded frames at the beginning and the end. Fixes #37783. PR is #38165.
2016-11-01std: Move sys_common to libstd/sys_commonBrian Anderson-0/+257
Make the directory structure reflect the module structure. I've always found the existing structure confusing.