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 #161291 - ada4a:push-xqqtloltnvwu, r=oli-obk Rename `ProjectionPredicate` and `TraitPredicate` Part of #107250 This deviates from the plan I described in #107250 (comment). The reason is that I kept getting into the awkward situation where I would go into a function dealing with multiple predicate/clause kinds, and need to rename only the variables referring with the particular kind I was renaming. So now, the plan is to first rename only the types (this PR), and afterwards go into functions and rename all the variables in them at once. That would also allow splitting the work better, e.g. tackling one crate/subtree at a time. r? @oli-obk
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