diff options
| author | bors <bors@rust-lang.org> | 2017-07-22 16:06:12 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2017-07-22 16:06:12 +0000 |
| commit | f8d485f53dbe87e0d7b4ad14904fd7b0447a8cbe (patch) | |
| tree | a6e779e47974583a31fb2394e78840ffac7f42e8 /src/liballoc | |
| parent | 35f64996ad5639173040097a0fe718e25d0dc29d (diff) | |
| parent | 53d8b1d0515f53d138f0b9c3067540d8c5708415 (diff) | |
| download | rust-f8d485f53dbe87e0d7b4ad14904fd7b0447a8cbe.tar.gz rust-f8d485f53dbe87e0d7b4ad14904fd7b0447a8cbe.zip | |
Auto merge of #43367 - alexcrichton:remove-inline-always, r=sfackler
std: Cut down #[inline] annotations where not necessary This PR cuts down on a large number of `#[inline(always)]` and `#[inline]` annotations in libcore for various core functions. The `#[inline(always)]` annotation is almost never needed and is detrimental to debug build times as it forces LLVM to perform inlining when it otherwise wouldn't need to in debug builds. Additionally `#[inline]` is an unnecessary annoation on almost all generic functions because the function will already be monomorphized into other codegen units and otherwise rarely needs the extra "help" from us to tell LLVM to inline something. Overall this PR cut the compile time of a [microbenchmark][1] by 30% from 1s to 0.7s. [1]: https://gist.github.com/alexcrichton/a7d70319a45aa60cf36a6a7bf540dd3a
Diffstat (limited to 'src/liballoc')
0 files changed, 0 insertions, 0 deletions
