-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Rollup of 6 pull requests #139452
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 6 pull requests #139452
Conversation
Currently, `write` for stdout and stderr on Trusty is implemented with the semantics of `write_all`. Instead, call the underlying syscall only once in `write` and use the default implementation of `write_all` like other platforms. Also, implement `write_vectored` by adding support for `IoSlice`. Refactor stdin to reuse the unsupported type like rust-lang#136769.
Generates branchless code
This avoids generating extra instructions that needlessly modify the slice's pointer
Optimize slice {Chunks,Windows}::nth I've noticed that the `nth` functions on slice iters had non-optimized-out bounds checks. The new implementation even generates branchless code.
Trusty: Implement `write_vectored` for stdio Currently, `write` for stdout and stderr on Trusty is implemented with the semantics of `write_all`. Instead, call the underlying syscall only once in `write` and use the default implementation of `write_all` like other platforms. Also, implement `write_vectored` by adding support for `IoSlice`. Refactor stdin to reuse the unsupported type like rust-lang#136769. It requires rust-lang#138875 to fix the build for Trusty, though they do not conflict and can merge in either order. cc `@randomPoison`
…k-Simulacrum Add `slice::align_to_uninit_mut` Add new `slice::align_to_uninit_mut` method. Tracking issue: rust-lang#139062 ACP: rust-lang/libs-team#564
…r=Urgau Add `*_value` methods to proc_macro lib This is the (re-)implementation of rust-lang/libs-team#459. It allows to get the actual value (unescaped) of the different string literals. It was originally done in rust-lang#136355 but it broke the artifacts build so we decided to move the crate to crates.io to go around this limitation. Part of rust-lang#136652. Considering this is a copy-paste of the originally approved PR, no need to go through the whole process again. \o/ r? `@Urgau`
…-is-empty, r=jdonszelmann Check if merged attributes list is empty in expr Fixes rust-lang#139373 In the example code, an [`UnrecognizedReprHint`](https://github.com/rust-lang/rust/blob/6b5ccfc87f59ab017032e430d4d358b4989735da/compiler/rustc_attr_parsing/src/attributes/repr.rs#L155) error is output, and the list of merged attributes becomes empty. This causes a [panic](https://github.com/rust-lang/rust/blob/6b5ccfc87f59ab017032e430d4d358b4989735da/compiler/rustc_ast_lowering/src/lib.rs#L618) to occur. So, it's necessary to check if merged attributes list is empty as other functions do. ref: https://github.com/rust-lang/rust/blob/6b5ccfc87f59ab017032e430d4d358b4989735da/compiler/rustc_ast_lowering/src/lib.rs#L896
…rieril Fix typo in `RawList`'s documentation
@bors r+ rollup=never p=5 |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: 175dcc7773 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 175dcc7 (parent) -> fd4dc18 (this PR) Test differencesShow 33036 test diffsStage 1
Stage 2
(and 16422 additional test diffs) Additionally, 16514 doctest diffs were found. These are ignored, as they are noisy. Job group index
Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
Finished benchmarking commit (fd4dc18): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (secondary 4.7%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResults (secondary 4.2%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeResults (primary 0.5%, secondary 0.3%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Bootstrap: 776.533s -> 776.854s (0.04%) |
Successful merges:
write_vectored
for stdio #138876 (Trusty: Implementwrite_vectored
for stdio )slice::align_to_uninit_mut
#139072 (Addslice::align_to_uninit_mut
)*_value
methods to proc_macro lib #139367 (Add*_value
methods to proc_macro lib)RawList
's documentation #139414 (Fix typo inRawList
's documentation)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup