Commit Graph

320622 Commits

Author SHA1 Message Date
Sayantan Chakraborty 1eafc19acd Merge pull request #2041 from ArunTamil21/add-alias-tests
Add missing runtime tests for SSE alias intrinsics
2026-03-25 18:19:10 +00:00
ArunTamil21 30573344b0 Mark alias test wrappers as const fn where supported and clean up skip list 2026-03-24 12:23:05 +00:00
ArunTamil21 2c76cb3479 Use const fn and remove unsafe from alias test wrappers 2026-03-22 19:50:07 +00:00
Sayantan Chakraborty 93c4d0ad6e Merge pull request #2064 from ferrocene/jyn/docs
Add more docs on how to run the generator
2026-03-21 17:56:41 +00:00
Jynn Nelson dc3ba83196 Add more docs on how to run the generator
- Note that working directory matters
- Note that stdarch-gen-arm uses nightly
- Fix missing directory. Without this, it would print to stdout in one
  giant merged file.
2026-03-19 13:43:40 +01:00
ArunTamil21 7da5fbcf42 Fix formatting 2026-03-17 22:18:40 +00:00
ArunTamil21 68a6acef71 Use macros for test body deduplication in SSE alias tests 2026-03-17 22:16:33 +00:00
Folkert de Vries a72aceea2b correct vpdpbusd asserts in miri
in https://github.com/rust-lang/rust/commit/a24022ad4e98bfc5adc47cc114db57b68c8511d2 we changed the argument types to be more accurate, and now the miri asserts on the simd type/size need to reflect that
2026-03-17 13:14:16 +01:00
Folkert de Vries 8155209828 enable the movrs target feature in core and std 2026-03-16 23:30:37 +01:00
Sayantan Chakraborty 3776c07842 Merge pull request #2050 from folkertdev/aarch64-rand
add ACLE random number generation intrinsics
2026-03-16 21:03:10 +00:00
Folkert de Vries 185a32931b Merge pull request #2062 from clado/github-action-checkout-v6
ci: update to actions/checkout@v6
2026-03-13 11:00:30 +00:00
Folkert de Vries ccf7d4e978 inline assert_instr tests 2026-03-13 11:09:47 +01:00
anonymous 30c24f4530 ci: update to actions/checkout@v6
ci is showing a lot of warnings (72) right now. apparently
actions/checkout@v4 uses Node.js 20, and all github actions are
scheduled to be force opted-in to Node.js 24 on 2026-06-02.
I don't anticipate bumping the checkout action to v6 / Node.js 24
to cause any issues (Node.js 24 drops support for ARM32 and macOS
versions <= 13.4, but this shouldn't matter because we use Docker
to test in those environments, not github runners natively) but if
it does cause issues it's probably better to find out now rather
than by surprise 3 months from now... :)
2026-03-12 16:05:20 -07:00
ArunTamil21 0eb04eb555 Fix formatting 2026-03-12 13:16:36 +00:00
ArunTamil21 ec448dd82a Merge upstream/main and resolve conflict in x86-intel.rs 2026-03-12 13:14:30 +00:00
ArunTamil21 58e5c0e879 Refactor alias tests using macros instead of meta functions 2026-03-12 13:01:57 +00:00
Folkert de Vries 4f10c640d1 remove cfg_attr on aarch64/arm64ec in the aarch64 module 2026-03-12 10:37:52 +01:00
Folkert de Vries b245493113 Merge pull request #2061 from RalfJung/f64-tests
s390x: add f64 tests for vec_min
2026-03-12 09:15:10 +00:00
Folkert de Vries ebd8272229 Merge pull request #2053 from folkertdev/aarch64-int-simd-reduce-min-max
aarch64: use `simd_reduce_{min, max}` on integers
2026-03-12 09:13:08 +00:00
Ralf Jung 80b869876a s390x: add f64 tests for vec_min 2026-03-11 18:33:14 +01:00
Folkert de Vries e6dc137a47 Merge pull request #2058 from RalfJung/s390x-minmax
s390x: use llvm intrinsics instead of simd_fmin/fmax
2026-03-11 12:31:46 +00:00
Ralf Jung a6687175c9 go back to portable LLVM intrinsic to avoid fallback trouble 2026-03-11 09:05:25 +01:00
Ralf Jung 47d82e245a add f32 min/max tests 2026-03-10 23:29:35 +01:00
Ralf Jung 752a87fb4b s390x: use llvm.s390 intrinsics instead of simd_fmin/fmax 2026-03-10 22:43:59 +01:00
Folkert de Vries f326a429fa Merge pull request #2051 from rust-lang/rustc-pull
Rustc pull update
2026-03-10 12:04:48 +00:00
Folkert de Vries 46bada398f aarch64: use simd_reduce_{min, max} on integers 2026-03-10 13:03:00 +01:00
Folkert de Vries d97cd54dfb Merge pull request #2052 from RalfJung/avoid-simd-minmax
Revert "Merge pull request #1871 from folkertdev/aarch64-float-min-max"
2026-03-10 11:44:24 +00:00
Ralf Jung f1bd647047 Revert "Merge pull request #1871 from folkertdev/aarch64-float-min-max"
This reverts commit 6a8a764262df5e65c06bc5d9180046a636a53ce9, reversing
changes made to a37563b5f8cec0c873864b786c33d00386189916.
2026-03-10 12:19:33 +01:00
The rustc-josh-sync Cronjob Bot 5cc969050b Merge ref 'eda4fc7733ee' from rust-lang/rust
Pull recent changes from https://github.com/rust-lang/rust via Josh.

Upstream ref: rust-lang/rust@eda4fc7733
Filtered ref: rust-lang/stdarch@3f3adc6031
Upstream diff: https://github.com/rust-lang/rust/compare/139651428df86cf88443295542c12ea617cbb587...eda4fc7733ee89e484d7120cafbd80dcb2fce66e

This merge was created using https://github.com/rust-lang/josh-sync.
2026-03-09 04:45:01 +00:00
The rustc-josh-sync Cronjob Bot 279c43e727 Prepare for merging from rust-lang/rust
This updates the rust-version file to eda4fc7733.
2026-03-09 04:42:45 +00:00
bors eda4fc7733 Auto merge of #153579 - JonathanBrouwer:rollup-DFWynbC, r=JonathanBrouwer
Rollup of 6 pull requests

Successful merges:

 - rust-lang/rust#152535 (std: use `OnceLock` for Xous environment variables)
 - rust-lang/rust#152646 (Update `UnsafeUnpin` impls involving extern types.)
 - rust-lang/rust#153559 (Inline and simplify some code for saving incremental data to disk)
 - rust-lang/rust#151900 (num: Separate public API from internal implementations)
 - rust-lang/rust#153520 (.mailmap: fix broken line with multiple emails)
 - rust-lang/rust#153573 (rustdoc-json: fix incorrect documentation for VariantKind::Struct)

Failed merges:

 - rust-lang/rust#153509 (Cleanup unused diagnostic emission methods - part 2)
2026-03-09 00:40:10 +00:00
Jonathan Brouwer 934afe30cd Rollup merge of #153573 - yshui-forks:rustdoc-types-doc, r=obi1kenobi,GuillaumeGomez
rustdoc-json: fix incorrect documentation for VariantKind::Struct

Seems to have been copy-and-pasted from `Enum::variants`, but `VariantKind::Struct::fields` is for struct variant fields, not enum variants.
2026-03-08 22:51:54 +01:00
Jonathan Brouwer 9b969739e9 Rollup merge of #153520 - DanielEScherzer:patch-4, r=lolbinarycat
.mailmap: fix broken line with multiple emails

Split binarycat's entry into multiple lines, one for each extra email
2026-03-08 22:51:53 +01:00
Jonathan Brouwer 83e6dbf9e1 Rollup merge of #151900 - tgross35:num-internal-imp, r=Mark-Simulacrum
num: Separate public API from internal implementations

Currently we have a single `core::num` module that contains both thin wrapper API and higher-complexity numeric routines. Restructure this by moving implementation details to a new `imp` module.

This results in a more clean separation of what is actually user-facing compared to items that have a stability attribute because they are public for testing.

The first commit does the actual change then the second moves a portion back.
2026-03-08 22:51:52 +01:00
Jonathan Brouwer 15a6976c86 Rollup merge of #153559 - Zalathar:persist, r=jackh726
Inline and simplify some code for saving incremental data to disk

Main changes:
- Inline `encode_query_cache` and `TyCtxt::serialize_query_result_cache`
- Pull value promotion out of `OnDiskCache::drop_serialized_data`
- Panic if `on_disk_cache` is None in an incremental-only path
2026-03-08 22:51:52 +01:00
Jonathan Brouwer e21a5df27e Rollup merge of #152646 - zachs18:unsafeunpin-marker-impls-pointee, r=Mark-Simulacrum
Update `UnsafeUnpin` impls involving extern types.

`UnsafeUnpin` tracking issue: https://github.com/rust-lang/rust/issues/125735

Relaxes from `T: ?Sized` (i.e. `T: MetaSized`) to `T: PointeeSized` for the `UnsafeUnpin` impls for pointers, references, and `PhantomData<T>`, and for the negative `UnsafeUnpin` impl for `UnsafePinned<T>`. (Compare to the impls for `Freeze` on lines 911-921.)

Both `UnsafeUnpin` and `extern type`s (the only way to have a `!MetaSized` type) are unstable, so this should have no effect on stable code.

Also updates the marker_impls macro docs to use PointeeSized bound, as most uses of the macro now do.

Concretely, this change means that the following types will newly implement `UnsafeUnpin`:

* pointers and references to `T` where `T` is an `extern type`
* `PhantomData<T>` where `T` is an extern type
* either of the above where `T` is a `struct` or tuple with `extern type` tail

Additionally, the negative `UnsafeUnpin` impl for `UnsafePinned<T>` is also relaxed to `T: PointeeSized` to align with the analogous negative `Freeze` impl for `UnsafeCell<T>`, even though both structs have `T: ?Sized` in their declaration (which probably should be relaxed, but that is a separate issue), so this part of the change doesn't actually *do* anything currently, but if `UnsafeCell` and `UnsafePinned` are later relaxed to `T: PointeeSized`, then the negative impl will apply to the newly possible instantiations. Also cc https://github.com/rust-lang/rust/issues/152645 that these impls compile at all.
2026-03-08 22:51:51 +01:00
Jonathan Brouwer 1ef29e7af6 Rollup merge of #152535 - joboet:xous_env_once_lock, r=Mark-Simulacrum
std: use `OnceLock` for Xous environment variables

There's no need for exposed-provenance-shenanigans here...

CC @xobs
2026-03-08 22:51:51 +01:00
bors b41f22de2a Auto merge of #153576 - JonathanBrouwer:rollup-oZYO7KY, r=JonathanBrouwer
Rollup of 4 pull requests

Successful merges:

 - rust-lang/rust#153464 (Use `&C::Key` less in queries.)
 - rust-lang/rust#153553 (Remove the `rustc_data_structures::assert_matches!` re-exports)
 - rust-lang/rust#153561 (Replace the `try_mark_green` hook with direct calls to `tcx.dep_graph`)
 - rust-lang/rust#153564 (rendering interpreter OOM as OOM instead of ICE)
2026-03-08 18:05:25 +00:00
Jonathan Brouwer f0defb0de1 Rollup merge of #153564 - RalfJung:oom-is-not-ice, r=oli-obk
rendering interpreter OOM as OOM instead of ICE

Fixes https://github.com/rust-lang/rust/issues/149643.
Alternative to https://github.com/rust-lang/rust/pull/153481.
2026-03-08 19:04:37 +01:00
Jonathan Brouwer 35152ef343 Rollup merge of #153561 - Zalathar:try-mark-green, r=nnethercote
Replace the `try_mark_green` hook with direct calls to `tcx.dep_graph`

All of the existing call sites are directly touching `tcx.dep_graph` anyway, so the extra layer of indirection provides no real benefit.

There should be no change to compiler behaviour.

r? nnethercote (or compiler)
2026-03-08 19:04:37 +01:00
Jonathan Brouwer 11636013f9 Rollup merge of #153553 - Zalathar:assert-matches, r=lqd
Remove the `rustc_data_structures::assert_matches!` re-exports

- https://github.com/rust-lang/rust/pull/151359
- https://github.com/rust-lang/rust/pull/153462
---

Now that the bootstrap stage0 compiler has been bumped to 1.95, we can remove these temporary re-exports from `rustc_data_structures`, and once again import the `assert_matches!` macros directly from std.
2026-03-08 19:04:36 +01:00
Jonathan Brouwer 38108e1e0d Rollup merge of #153464 - nnethercote:less-ref-Key, r=Zalathar
Use `&C::Key` less in queries.

Currently we use a mix of `C::Key` and `&C::Key` parameters. The former is more common and a bit nicer, so convert some of the latter. This results in less converting between the two types, and fewer sigils.
2026-03-08 19:04:36 +01:00
Yuxuan Shui 43e3fd1944 rustdoc-json: fix incorrect documentation for VariantKind::Struct 2026-03-08 15:42:03 +00:00
Ralf Jung 4f48642d1d rendering interpreter OOM as OOM instead of ICE 2026-03-08 13:27:05 +01:00
Nicholas Nethercote face186874 Use &C::Key less in queries.
Currently we use a mix of `C::Key` and `&C::Key` parameters. The former
is more common and a bit nicer, so convert some of the latter. This
results in less converting between the two types, and fewer sigils.
2026-03-08 22:54:12 +11:00
Zalathar 985b41d387 Remove the rustc_data_structures::assert_matches! re-exports 2026-03-08 22:02:23 +11:00
Zalathar 0a369a799f Replace the try_mark_green hook with direct calls to tcx.dep_graph
All of the existing call sites are directly touching `tcx.dep_graph` anyway, so
the extra layer of indirection provides no real benefit.
2026-03-08 21:53:13 +11:00
Zalathar d7490855d5 Inline and simplify some code for saving incremental data to disk
Main changes:
- Inline `encode_query_cache` and `TyCtxt::serialize_query_result_cache`
- Pull value promotion out of `OnDiskCache::drop_serialized_data`
- Panic if `on_disk_cache` is None in an incremental-only path
2026-03-08 21:27:50 +11:00
bors c7b206bba4 Auto merge of #153383 - nnethercote:overhaul-ensure_ok, r=Zalathar
Overhaul `ensure_ok`

The interaction of `ensure_ok` and the `return_result_from_ensure_ok` query modifier is weird and hacky. This PR cleans it up. Details in the individual commits.

r? @Zalathar
2026-03-08 07:03:35 +00:00
bors c3d014032f Auto merge of #153552 - Zalathar:rollup-MALCpPD, r=Zalathar
Rollup of 4 pull requests

Successful merges:

 - rust-lang/rust#153202 ([win] Fix truncated unwinds for Arm64 Windows)
 - rust-lang/rust#153437 (coretest in miri: fix using unstable libtest features)
 - rust-lang/rust#153446 (Always use the ThinLTO pipeline for pre-link optimizations)
 - rust-lang/rust#153548 (add test for closure precedence in `TokenStream`s)
2026-03-08 03:45:00 +00:00