Improve into_slice_range inlining and add #[track_caller] - #157947
Conversation
|
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Try to improve into_slice_range inlining
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (6a83d7f): comparison URL. Overall result: no relevant changes - no action neededBenchmarking means the PR may be perf-sensitive. Consider adding rollup=never if this change is not fit for rolling up. @rustbot label: -S-waiting-on-perf -perf-regression Instruction countThis perf run didn't have relevant results for this metric. Max RSS (memory usage)Results (primary 2.7%, secondary -2.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 2.4%, secondary -15.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary 0.2%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 519.231s -> 519.196s (-0.01%) |
a70f4e1 to
517c036
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Improve into_slice_range inlining and add #[track_caller]
|
rustbot has assigned @dingxiangfei2009. Use Why was this reviewer chosen?The reviewer was selected based on:
|
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (3550044): comparison URL. Overall result: no relevant changes - no action neededBenchmarking means the PR may be perf-sensitive. Consider adding rollup=never if this change is not fit for rolling up. @rustbot label: -S-waiting-on-perf -perf-regression Instruction countThis perf run didn't have relevant results for this metric. Max RSS (memory usage)Results (primary 1.7%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary -4.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary 0.2%, secondary 0.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 521.352s -> 522.424s (0.21%) |
This comment has been minimized.
This comment has been minimized.
d454cb4 to
f10ebdf
Compare
This comment has been minimized.
This comment has been minimized.
|
r=me Sorry for the delay, for I had to grab some context. What do you think about the caller tracking on the other impls? |
|
Unknown command "d+". Run |
|
@bors delegate+ 😓 |
|
✌️ @saethlin, you can now approve this pull request! If @dingxiangfei2009 told you to " |
f10ebdf to
81e7f00
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
@bors r=dingxiangfei2009 |
Rollup merge of #157947 - saethlin:into_slice_range, r=dingxiangfei2009 Improve into_slice_range inlining and add #[track_caller] This is a solution to #157909. I think the root problem is that LLVM sees the many non-inlinable calls to `slice_index_fail` and decides that the function must be a bad inlining candidate. So I've shunted all the logic for reporting the right error into a single cold function and improved `try_into_slice_range` so that we only have to write all these checks once.
View all comments
This is a solution to #157909. I think the root problem is that LLVM sees the many non-inlinable calls to
slice_index_failand decides that the function must be a bad inlining candidate. So I've shunted all the logic for reporting the right error into a single cold function and improvedtry_into_slice_rangeso that we only have to write all these checks once.