Rollup of 26 pull requests - #161396
Conversation
This patch implements Rust's equivalent of Clang's function pointer type discriminator computation used in pointer authentication. Compatibility with Clang is a primary goal. The discriminator produced for a given external "C" function type must match the value computed by Clang so that function pointers can be exchanged safely between Rust and C code while preserving pointer authentication semantics. The implementation mirrors Clang's behavior in `ASTContext::encodeTypeForFunctionPointerAuth`, ensuring that identical C-compatible function types produce identical discriminators. See: <https://clang.llvm.org/doxygen/ASTContext_8cpp.html#abb1375e068e807917527842d05cadea3>.
atomic volatile: add intrinsics Extend the atomic load/store intrinsics to also support volatile atomic load/store. Tracking issue: rust-lang#158947. Library APIs that use these intrinsics will be added inn a future PR. The GCC and cranelift implementations ignore the volatile flag, not sure how that should be implemented for them.
To `QuerySystem`, next to `query_vtables`. It's a better spot for it.
`MCOptions` is the name of the variable commonly used for instances of `MCTargetOptions`. Use the proper type name instead.
Rollup merge of #161293 - BoxyUwU:relnotes_1_98_0, r=cuviper add relnotes 1.98.0 r? @cuviper cc @rust-lang/release
Rollup merge of #161299 - oli-obk:push-srmnrmyyzylq, r=mejrs Remove a bunch of unnecessary explicit lifetimes Both rustdoc and hir ty lowering only process the HIR, they never store any of those nodes anywhere. The reason I did this is that I'm refactoring `hir::ItemKind::Use`, and for rustdoc's processing of it it is more convenient to create a bunch of values on the stack and reference them, but right now rustdoc was expecting `'tcx` lifetimes everywhere.
Rollup merge of #161307 - RalfJung:arm-maintainers, r=JohnTitor,davidtwco make ARM maintainers pingable #153720 added the suggestion to ping ARM maintainers via rustbot, but that doesn't actually work currently. I hope this is the right way to set up triagebot. Also, the target pages make it look like there is a `@rust-lang/arm-maintainers` GH team, which does not actually exist. Cc @davidtwco
Rollup merge of #161325 - cuviper:bump-stage0, r=Mark-Simulacrum Bump bootstrap to 1.99.0-beta.1 https://forge.rust-lang.org/release/process.html#default-branch-bootstrap-update-and-crater-tuesday
Rollup merge of #161344 - Kobzol:update-rustc-perf, r=lqd Update the `rustc-perf` submodule To bring in rust-lang/rustc-perf#2537, so that we unblock #160619. r? lcnr
Rollup merge of #161366 - bjorn3:sync_cg_clif-2026-08-19, r=bjorn3 Subtree sync for rustc_codegen_cranelift Syncing against despite it only being a couple of days ago to make the migration from git-subtree to josh-sync easier. r? @ghost @rustbot label +A-codegen +A-cranelift +T-compiler +subtree-sync
Rollup merge of #161367 - Urgau:triagebot-no-merges-upd, r=bjorn3 Reflect current PR title names for subtree syncs in triagebot no-merges Noticed that the current PR title names for subtree syncs seems to have changed (or at least for some) and is now "Subtree sync" (or it's lower-cased variant). Let's update the triagebot config so the merge commit handler don't for those expected cases. - #157533 (comment) - #155978 (comment)
Rollup merge of #161384 - Kobzol:remove-sccache, r=jieyouxu Bust sccache's cache Trying to unblock CI. Context: [#t-infra > GCC broken tests passed auto CI](https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/GCC.20broken.20tests.20passed.20auto.20CI/with/617614472)
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 f7d782a (parent) -> 8925ea3 (this PR) Test differencesShow 1032 test diffsStage 0
Stage 1
Stage 2
(and 55 additional test diffs) Additionally, 877 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 8925ea358a0f265ca61026aadc7ecc506c545cbe --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 (8925ea3): comparison URL. Overall result: ✅ improvements - no action needed@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 -0.9%, secondary -1.2%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary 5.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary 0.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 456.256s -> 456.865s (0.13%) |
|
📌 Perf builds for each rolled up PR:
parent commit: f7d782a3be In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Successful merges:
rustc-perfsubmodule #161344 (Update therustc-perfsubmodule)GlobalCtxt/Sessioncleanups #161332 (SomeGlobalCtxt/Sessioncleanups)#[repr(transparent)]if#[rustc_pub_transparent]is applied #150931 (rustdoc: Always document#[repr(transparent)]if#[rustc_pub_transparent]is applied)remove hidden_glob_reexports item breaks downstreamtest #160582 (Addremove hidden_glob_reexports item breaks downstreamtest)TargetOptions::llvm_abiname#161283 (Tighten the language used for documentingTargetOptions::llvm_abiname)ProjectionPredicateandTraitPredicate#161291 (RenameProjectionPredicateandTraitPredicate)r? @ghost
Create a similar rollup