Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Rollup merge of rust-lang#50407 - nnethercote:inline-BytePos, r=micha…
…elwoerister Always inline simple BytePos and CharPos methods. Because they are (a) trivial, and (b) super hot. This change speeds up most rustc-perf benchmarks, the best by 5%. Full measurements: ``` coercions-check avg: -3.0% min: -5.4% max: -1.3% helloworld-check avg: -3.9% min: -4.1% max: -3.6% unify-linearly-check avg: -3.1% min: -3.7% max: -2.5% deeply-nested-check avg: -2.6% min: -3.6% max: -2.1% coercions-opt avg: -2.1% min: -3.6% max: -1.3% coercions avg: -2.0% min: -3.5% max: -1.0% issue-46449-check avg: -2.8% min: -3.1% max: -2.6% parser-check avg: -2.6% min: -3.1% max: -2.0% deeply-nested-opt avg: -1.5% min: -3.0% max: -0.8% deeply-nested avg: -1.8% min: -2.9% max: -1.1% issue-46449 avg: -1.4% min: -2.7% max: -1.1% issue-46449-opt avg: -1.0% min: -2.7% max: -0.5% regression-31157-check avg: -1.7% min: -2.3% max: -1.1% tuple-stress-opt avg: -1.0% min: -2.2% max: -0.5% tokio-webpush-simple-check avg: -1.6% min: -2.1% max: -1.2% tuple-stress-check avg: -1.2% min: -2.1% max: -0.8% unused-warnings-check avg: -1.6% min: -2.0% max: -1.4% encoding-check avg: -1.4% min: -1.8% max: -1.0% tuple-stress avg: -1.0% min: -1.7% max: -0.6% encoding-opt avg: -0.9% min: -1.6% max: -0.3% unused-warnings avg: -1.3% min: -1.6% max: -1.2% unused-warnings-opt avg: -1.3% min: -1.5% max: -1.2% encoding avg: -1.0% min: -1.5% max: -0.4% html5ever-opt avg: -0.7% min: -1.5% max: -0.3% futures avg: -1.0% min: -1.5% max: -0.5% futures-check avg: -1.0% min: -1.5% max: -0.5% futures-opt avg: -0.8% min: -1.4% max: -0.3% regression-31157-opt avg: -0.5% min: -1.4% max: -0.0% unify-linearly-opt avg: -1.2% min: -1.4% max: -1.0% parser-opt avg: -1.2% min: -1.4% max: -1.0% helloworld avg: -1.3% min: -1.4% max: -1.3% helloworld-opt avg: -1.3% min: -1.3% max: -1.3% parser avg: -1.2% min: -1.3% max: -1.0% regex-check avg: -1.1% min: -1.3% max: -0.7% unify-linearly avg: -1.1% min: -1.3% max: -1.0% syn-check avg: -0.8% min: -1.3% max: -0.3% piston-image-check avg: -0.7% min: -1.2% max: -0.4% regex-opt avg: -0.5% min: -1.2% max: -0.0% syn avg: -0.6% min: -1.2% max: -0.3% hyper avg: -0.8% min: -1.2% max: -0.4% syn-opt avg: -0.5% min: -1.2% max: -0.1% regex avg: -0.7% min: -1.2% max: -0.3% regression-31157 avg: -0.7% min: -1.2% max: -0.3% clap-rs-check avg: -0.6% min: -1.1% max: -0.2% hyper-check avg: -0.8% min: -1.1% max: -0.5% piston-image-opt avg: -0.4% min: -1.1% max: -0.0% hyper-opt avg: -0.6% min: -1.0% max: 0.0% inflate avg: -0.4% min: -1.0% max: -0.2% html5ever avg: -0.5% min: -1.0% max: -0.2% inflate-opt avg: -0.3% min: -1.0% max: 0.3% deep-vector-check avg: -0.6% min: -1.0% max: -0.3% style-servo-check avg: -0.7% min: -1.0% max: -0.5% tokio-webpush-simple-opt avg: -0.3% min: -0.9% max: 0.0% inflate-check avg: -0.3% min: -0.9% max: -0.1% piston-image avg: -0.4% min: -0.8% max: -0.2% deep-vector avg: -0.4% min: -0.8% max: -0.1% clap-rs avg: -0.4% min: -0.7% max: -0.2% deep-vector-opt avg: -0.2% min: -0.7% max: 0.2% style-servo avg: -0.3% min: -0.7% max: 0.1% crates.io avg: -0.4% min: -0.6% max: -0.2% crates.io-opt avg: -0.3% min: -0.6% max: -0.1% tokio-webpush-simple avg: -0.4% min: -0.6% max: -0.3% crates.io-check avg: -0.4% min: -0.6% max: -0.3% html5ever-check avg: -0.4% min: -0.6% max: -0.2% serde avg: -0.1% min: -0.6% max: 0.2% serde-check avg: -0.1% min: -0.5% max: 0.4% serde-opt avg: -0.2% min: -0.5% max: -0.1% style-servo-opt avg: -0.2% min: -0.4% max: -0.0% clap-rs-opt avg: -0.1% min: -0.3% max: 0.0%
- Loading branch information