-
-
Notifications
You must be signed in to change notification settings - Fork 14.3k
Rollup of 8 pull requests #150469
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 8 pull requests #150469
Conversation
- Add path field to uefi file since this will also be required in implementing Debug for rust File. - Tested on OVMF. Signed-off-by: Ayush Singh <[email protected]>
This fixes the ICE reported by rejecting `const` blocks in pattern position during AST lowering. Previously, `ExprKind::ConstBlock` could reach HIR as `PatExprKind::ConstBlock`, allowing invalid patterns to be type-checked and triggering an ICE. This patch removes the lowering path for const blocks in patterns and emits a proper diagnostic instead. A new UI test is added to ensure the compiler reports a regular error and to prevent regressions.
Replace unicode-xid with unicode-ident which is 6 times faster
Add a compile time check in rustc_lexer and rustc_parse ensuring that unicode-related dependencies within the crate use the same unicode version. These checks are inspired by the examples privided by @clarfonthey.
parser/lexer: bump to Unicode 17, use faster unicode-ident Hello, Bump the unicode version used by lexer/parser to 17.0.0 by updating: - `unicode-normalization` to 0.1.25 - `unicode-properties` to 0.1.4 - `unicode-width` to 0.2.2 and by replacing `unicode-xid` with `unicode-ident` which is also 6 times faster. I think it might be worth to run the benchmarks to double check. (`unicode-ident` is already in `src/tools/tidy/src/deps.rs`) Thanks!
…Simulacrum std: sys: fs: uefi: Implement readdir - Tested on OVMF. - Add path field to uefi file since this will also be required in implementing Debug for rust File. ``@rustbot`` label +O-UEFI
…on, r=Mark-Simulacrum
Implement `Duration::div_duration_{floor,ceil}`
… r=Mark-Simulacrum
Optimized implementation for uN::{gather,scatter}_bits
Feature gate: #![feature(uint_gather_scatter_bits)]
Tracking issue: rust-lang#149069
Accepted ACP: rust-lang/libs-team#695
Implements the methods using the parallel suffix strategy mentioned in the ACP discussion. The referenced source material provides C implementations, though this PR makes improvements over those, cutting the instruction count by a third:
https://rust.godbolt.org/z/rn5naYnK4 (this PR)
https://c.godbolt.org/z/WzYd5WbsY (Hacker's delight)
This was initially based on the code for `gather_bits` that ``@okaneco`` provided in rust-lang/libs-team#695 (comment) . I wanted to understand how it worked, and later on noticed some opportunities for improvement, which eventually led to this PR.
…8, r=dianne Fix ICE by rejecting const blocks in patterns during AST lowering (closes rust-lang#148138) This PR fixes the ICE reported in rust-lang#148138. The root cause is that `const` blocks aren’t allowed in pattern position, but the AST lowering logic still attempted to create `PatExprKind::ConstBlock`, allowing invalid HIR to reach type checking and trigger a `span_bug!`. Following the discussion in the issue, this patch removes the `ConstBlock` lowering path from `lower_expr_within_pat`. Any `ExprKind::ConstBlock` inside a pattern is now handled consistently with other invalid pattern expressions. A new UI test is included to ensure the compiler reports a proper error and to prevent regressions. Closes rust-lang#148138.
add several older crashtests Includes rust-lang#114880, rust-lang#119940, rust-lang#138274, rust-lang#138660. Since their issue numbers are all smaller than 140000, this has no conflicts with rust-lang#147857.
…, r=Mark-Simulacrum Add more `unbounded_sh[lr]` examples Inspired by rust-lang#149837, which added more stuff to `wrapping_sh[lr]`, including a cross-reference to these methods.
refactor `destructure_const` r? BoxyUwU as you suggested yesterday (will add more context like links when it stops being a draft) tried to split this into some meaningful commits hope it help ^^
|
@bors r+ rollup=never p=5 |
|
☀️ Test successful - checks-actions |
|
📌 Perf builds for each rolled up PR:
previous master: 21cf7fb3ff 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 21cf7fb (parent) -> 7fefa09 (this PR) Test differencesShow 5845 test diffsStage 1
Stage 2
Additionally, 5830 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 7fefa09b90ca57b8a0e0e4717d672d38a0ae58b5 --output-dir test-dashboardAnd then open 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 (7fefa09): comparison URL. Overall result: ❌ regressions - please read the text belowOur benchmarks found a performance regression caused by this PR. Next Steps:
@rustbot label: +perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 2.2%, secondary 1.8%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary -2.7%, secondary 2.9%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 485.211s -> 490.488s (1.09%) |
|
@rust-timer build 0b2c87f |
This comment has been minimized.
This comment has been minimized.
|
(Only one benchmark can run in parallel on the same PR. I usually start the runs on the individual PRs themselves, rather than on the rollup). |
|
Finished benchmarking commit (0b2c87f): comparison URL. Overall result: ❌ regressions - please read the text belowInstruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)This benchmark run did not return any relevant results for this metric. CyclesResults (primary -2.6%, secondary 1.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 485.211s -> 484.762s (-0.09%) |
Successful merges:
Duration::div_duration_{floor,ceil}#149582 (ImplementDuration::div_duration_{floor,ceil})adjust mode unimplemented for ConstBlock#148138))unbounded_sh[lr]examples #150011 (Add moreunbounded_sh[lr]examples)destructure_const#150411 (refactordestructure_const)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup