-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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 #125144
Rollup of 6 pull requests #125144
Conversation
In case the source is not in the same filesystem.
…t-inline, r=joboet Optimize character escaping. Allow optimization of panicking branch in `EscapeDebug`, see rust-lang#121805. r? `@joboet`
Use an helper to move the files In case the source is not in the same filesystem. See openwrt/packages@c1b3e04#commitcomment-141886468
…eyouxu Migrate `run-make/c-link-to-rust-staticlib` to `rmake` Part of rust-lang#121876. r? `@jieyouxu`
Invert comparison in `uN::checked_sub` After rust-lang#124114, LLVM no longer combines the comparison and subtraction in `uN::checked_sub` when either operand is a constant (demo: https://rust.godbolt.org/z/MaeoYbsP1). The difference is more pronounced when the expression is slightly more complex (https://rust.godbolt.org/z/4rPavsYdc). This is due to the use of `>=` here: https://github.com/rust-lang/rust/blob/ee97564e3a9f9ac8c65103abb37c6aa48d95bfa2/library/core/src/num/uint_macros.rs#L581-L593 For constant `C`, LLVM eagerly converts `a >= C` into `a > C - 1`, but the backend can only combine `a < C` with `a - C`, not `C - 1 < a` and `a - C`: https://github.com/llvm/llvm-project/blob/e586556e375fc5c4f7e76b5c299cb981f2016108/llvm/lib/CodeGen/CodeGenPrepare.cpp#L1697-L1742 This PR[^1] simply inverts the `>=` into `<` to restore the LLVM magic, and somewhat align this with the implementation of `uN::overflowing_sub` from rust-lang#103299. When the result is stored as an `Option` (rather than being branched/cmoved on), the discriminant is `self >= rhs`. This PR doesn't affect the codegen (and relevant tests) of that since LLVM will negate `self < rhs` to `self >= rhs` when necessary. [^1]: Note to `self`: My very first contribution to publicly-used code. Hopefully like what I should learn to always be, tiny and humble.
Migrate `run-make/no-cdylib-as-rdylib` to `rmake` Part of rust-lang#121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html). > "the test will fail if the cdylib is picked, because it doesn't export any rust symbols" Is that true? Is there a way to verify? I suggest maybe extending the test with: (after cleaning the directory) ```rust rustc() .input("bar.rs") .crate_type("cdylib") .run(); rustc() .input("foo.rs") .prefer_dynamic() .run(); fail(); ``` to make sure we're actually testing something here.
MIR operators: clarify Shl/Shr handling of negative offsets "made unsigned" was not fully clear (made unsigned how? by using `abs`? no), so let's say "re-interpreted as an unsigned value of the same size" instead. r? `@scottmcm`
@bors r+ rollup=never p=6 |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: 3cb0030fe9 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Finished benchmarking commit (ade234d): comparison URL. Overall result: ❌ regressions - ACTION NEEDEDNext Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)Results (primary 0.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.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeResults (primary -0.1%, secondary -0.1%)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: 679.399s -> 678.357s (-0.15%) |
Small binary size win, perhaps from #124307. Not sure where the small regression comes from though, looks genuine. @rust-timer build 8c4b3c7 |
This comment has been minimized.
This comment has been minimized.
Finished benchmarking commit (8c4b3c7): comparison URL. Overall result: ❌ regressions - ACTION NEEDEDInstruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)Results (primary 0.8%)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.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeResults (primary 0.0%, secondary -0.1%)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: 679.399s -> 678.68s (-0.11%) |
Update Rust toolchain from nightly-2024-05-15 to nightly-2024-05-16 without any other source changes. This is an automatically generated pull request. If any of the CI checks fail, manual intervention is required. In such a case, review the changes at https://github.com/rust-lang/rust from rust-lang@8387315 up to rust-lang@1871252. The log for this commit range is: rust-lang@1871252fc8 Auto merge of rust-lang#125164 - fmease:rollup-s5vwzlg, r=fmease rust-lang@734a109998 Rollup merge of rust-lang#125159 - fmease:allow-unauth-labels-l-pg-z, r=jieyouxu rust-lang@601e5d199f Rollup merge of rust-lang#125154 - FractalFir:fnabi_doc, r=compiler-errors rust-lang@09156291e5 Rollup merge of rust-lang#125146 - Oneirical:panic-impl, r=jieyouxu rust-lang@80f991e09b Rollup merge of rust-lang#125142 - GuillaumeGomez:migrate-rustdoc-themes, r=jieyouxu rust-lang@c5b17ec9d2 Rollup merge of rust-lang#125003 - RalfJung:aligned_alloc, r=cuviper rust-lang@257d222e4b Improved the documentation of the FnAbi struct rust-lang@72a48fc68c Allow unauthenticated users to modify `L-*`, `PG-*` and `-Z*` labels rust-lang@b21b74b5e6 Auto merge of rust-lang#125134 - compiler-errors:negative-traits-are-not-notable, r=fmease rust-lang@a7484d2e49 fix tidy rust-lang@cae17ff42b rewrite panic-impl-transitive rust-lang@ade234d574 Auto merge of rust-lang#125144 - fmease:rollup-4uft293, r=fmease rust-lang@8d38f2fb11 Rollup merge of rust-lang#125137 - RalfJung:mir-sh, r=scottmcm rust-lang@2659ff3882 Rollup merge of rust-lang#125104 - Oneirical:test6, r=jieyouxu rust-lang@4f7d9d4ad8 Rollup merge of rust-lang#125038 - ivan-shrimp:checked_sub, r=joboet rust-lang@2804d4223b Rollup merge of rust-lang#125027 - Oneirical:c-test-with-remove, r=jieyouxu rust-lang@2e70bea168 Rollup merge of rust-lang#124975 - lu-zero:move_file, r=clubby789 rust-lang@3873a74f8a Rollup merge of rust-lang#124307 - reitermarkus:escape-debug-size-hint-inline, r=joboet rust-lang@3cb0030fe9 Auto merge of rust-lang#123413 - petrochenkov:delegmulti2, r=fmease rust-lang@c765480efe Migrate `run-make/rustdoc-themes` to new rmake rust-lang@c87ae947eb Add new `htmldocck` function to `run-make-support` rust-lang@a71c3ffce9 Auto merge of rust-lang#125032 - compiler-errors:crash-dump-dir, r=onur-ozkan rust-lang@0afd50e852 MIR operators: clarify Shl/Shr handling of negative offsets rust-lang@44fa5fd39a Auto merge of rust-lang#125136 - matthiaskrgr:rollup-ljm15m3, r=matthiaskrgr rust-lang@5f1a120ee5 Rollup merge of rust-lang#125135 - chenyukang:yukang-fix-116502, r=compiler-errors rust-lang@f7c2934420 Rollup merge of rust-lang#125132 - mejrs:diag, r=compiler-errors rust-lang@a8ff937b07 Rollup merge of rust-lang#125108 - Zalathar:info-bitmap-bytes, r=nnethercote rust-lang@03ff673dcc Rollup merge of rust-lang#124990 - fmease:expand-weak-aliases-within-cts, r=compiler-errors rust-lang@75895f59b0 Fix the dedup error because of spans from suggestion rust-lang@9e7aff7945 Auto merge of rust-lang#125031 - Oneirical:dynamic-libs, r=jieyouxu rust-lang@8994840f7e rustdoc: Negative impls are not notable rust-lang@91a3f04a3f fix the test rust-lang@0160bff4b1 Auto merge of rust-lang#125084 - Jules-Bertholet:fix-125058, r=Nadrieril rust-lang@c30b41012d delegation: Implement list delegation rust-lang@18d7411719 Add `on_unimplemented" typo suggestions rust-lang@81f7e54962 Port issue-11908 to rmake rust-lang@1f61cc3078 port no-cdylib-as-rdylib test rust-lang@b1e5e5161a remove cxx_flags rust-lang@1f5837ae25 rewrite c-link-to-rust-staticlib rust-lang@5cc020d3df avoid using aligned_alloc; posix_memalign is better-behaved rust-lang@c81be68fb4 coverage: Remove confusing comments from `CoverageKind` rust-lang@bfadc3a9b9 coverage: `CoverageIdsInfo::mcdc_bitmap_bytes` is never needed rust-lang@fe8f66e4bc `rustc_hir_typeck`: Account for `skipped_ref_pats` in `expr_use_visitor` rust-lang@4db00fe229 Use an helper to move the files rust-lang@7fde7308bf reverse condition in `uN::checked_sub` rust-lang@848f3c2c6e Make crashes dump mir to build dir rust-lang@35a5be2833 Also expand weak alias tys inside consts inside `expand_weak_alias_tys` rust-lang@4edf12d33e Improve escape methods. rust-lang@16981ba406 Avoid panicking branch in `EscapeIterInner`. rust-lang@e3fc97be2b Inline `EscapeDebug::size_hint`. Co-authored-by: celinval <35149715+celinval@users.noreply.github.com> Co-authored-by: Zyad Hassan <88045115+zhassan-aws@users.noreply.github.com>
Successful merges:
run-make/c-link-to-rust-staticlib
tormake
#125027 (Migraterun-make/c-link-to-rust-staticlib
tormake
)uN::checked_sub
#125038 (Invert comparison inuN::checked_sub
)run-make/no-cdylib-as-rdylib
tormake
#125104 (Migraterun-make/no-cdylib-as-rdylib
tormake
)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup