Commit Graph

325866 Commits

Author SHA1 Message Date
sayantn 229d480cdc Change implementation of vext 2026-05-09 09:41:22 +05:30
sayantn a2e77970c2 replace uses of simd_extract with vget_lane 2026-05-08 16:11:44 +05:30
Folkert de Vries 0d76cbef9b Merge pull request #2107 from sayantn/gen-arm-improvements
gen-arm: Change definitions of some intrinsics
2026-05-08 10:25:19 +00:00
sayantn aa37c1b535 gen-arm: fix vfmlal and vfmlsl 2026-05-08 12:47:02 +05:30
sayantn a023ebf71f gen-arm: fix vmlal, vmlsl and vmull 2026-05-08 12:46:59 +05:30
Amanieu d'Antras 1964b04a31 Merge pull request #2100 from sayantn/gen-arm-ports
Porting some intrinsics to stdarch-gen-arm
2026-05-08 00:40:07 +00:00
Folkert de Vries 37473be4d0 Merge pull request #2093 from heiher/vbit-clr-rev-set
loongarch: Use `intrinsics::simd` for vbit{clr,rev,set}
2026-05-07 20:14:46 +00:00
Folkert de Vries 55c9debc59 Merge pull request #2105 from sayantn/gen-arm-improvements
Some more changes in stdarch-gen-arm
2026-05-07 20:14:02 +00:00
David Wood 6218201806 gen-arm: write vtbx{1,2,3,4} in terms of vqtbx
Writing these intrinsics in terms of the `vqtbx_$ty` functions rather
than the `vqtbx` helper function preserves the behaviour while making
them work in big endian.
2026-05-08 01:16:19 +05:30
David Wood a5073bcca9 gen-arm: write vtbl{1,2,3,4} in terms of vqtbl
Writing these intrinsics in terms of the `vqtbl_$ty` functions rather
than the `vqtbl` helper function preserves the behaviour while making
them work in big endian.
2026-05-08 01:16:18 +05:30
David Wood 1e13d52faf gen-arm: change defn of vabdl_high_u{8,16,32}
Changes the definition of `vabdl_high_u{8,16,32}` to match that of
`vabdl_high_s{8,16,32}` so that the `big_endian_inverse` transformation
can apply.
2026-05-08 01:16:18 +05:30
WANG Rui 11fd314918 loongarch: Use intrinsics::simd for vbit{clr,rev,set} 2026-05-07 22:34:29 +08:00
David Wood 1c2d423713 core_arch: remove redundant tests
Manually written tests for `vcopy_laneq`, `vget{,q}_{high,low,lane}`,
`vcombine` and `vaddw_high` don't account for the expected differences
in output for big endian intrinsics and given that they duplicate the
testing of `intrinsic-test`, can be removed.
2026-05-07 11:15:14 +01:00
David Wood 4661e734dc gen-arm: port vcombine_f64 to generator
This enables the `big_endian_inverse` transform to apply to this
intrinsic.
2026-05-07 11:15:13 +01:00
David Wood fe3e89d2d5 gen-arm: port vgetq_lane_f64 to generator
This enables the `big_endian_inverse` transform to apply to this
intrinsic.
2026-05-07 11:15:06 +01:00
David Wood 54b56a3d95 gen-arm: port vget_{high,low}_{p,f}64 to generator
This enables the `big_endian_inverse` transform to apply to these
intrinsics.
2026-05-07 11:14:54 +01:00
David Wood cf3ac4997a gen-arm: port vcopy_laneq_{f,u,s,p}64 to generator
This enables the `big_endian_inverse` transformation to apply to these
intrinsics.
2026-05-07 11:14:46 +01:00
David Wood 1d556c4405 gen-arm: port vcopy_lane_{s,u,p,f}64 to generator
This enables the `big_endian_inverse` transformation to apply to this
intrinsic.
2026-05-07 11:14:38 +01:00
Folkert de Vries 75fb1cb872 Merge pull request #2099 from sayantn/gen-arm-improvements
Some small overall improvements to stdarch-gen-arm
2026-05-06 20:03:36 +00:00
Folkert de Vries ea71582ec0 Merge pull request #2101 from sayantn/revert-passes
Revert changing number of passes depending on number of parameters
2026-05-06 20:01:48 +00:00
David Wood 3d5f588f83 gen-arm: skip assert_instr on big-endian
Some intrinsics optimise to different instructions on big endian which
leads to `assert_instr` failing
2026-05-07 00:38:15 +05:30
David Wood 51f8123fa7 gen-arm: use neon-stable anchor throughout
Instead of duplicating the stability attribute, re-use the `neon-stable`
anchor through
2026-05-07 00:37:41 +05:30
David Wood af754dcaf3 gen-arm: resolve outdated big_endian_inverse todo
Earlier patches added `big_endian_inverse` and used `transmute` instead
of using `vreinterpret` due to an LLVM bug that has since been resolved
2026-05-07 00:37:38 +05:30
Folkert de Vries f3773626f0 Merge pull request #2104 from Jamesbarford/remove-inline-always-target-feature
Remove inline always
2026-05-06 18:48:18 +00:00
James Barford-Evans 4c3bde6036 replace more instances of #[inline(always)] 2026-05-06 16:53:04 +01:00
James Barford-Evans a854325c91 remove target_feature_inline_always from lib.rs 2026-05-06 16:39:21 +01:00
James Barford-Evans 13979fcd88 Remove #[inline(always)] from loongarch intrinsic generator & re-generate intrinsics 2026-05-06 16:28:46 +01:00
James Barford-Evans 6169e94e9b Remove #[inline(always)] from hexagon intrinsic generator & re-generate intrinsics 2026-05-06 16:28:26 +01:00
James Barford-Evans 1d2b6ed86b Remove #[inline(always)] from Arm intrinsic generator & re-generate intrinsics 2026-05-06 16:27:55 +01:00
Amanieu d'Antras 47f942d729 Merge pull request #2096 from sayantn/fix-fixupimm
Fix `fixupimm`
2026-05-06 09:11:53 +00:00
sayantn cff9a882a9 some changes in argument loading in intrinsic-test
revert the offset loading, instead load in a wrapping fashion
2026-05-05 20:45:19 +05:30
Folkert de Vries d99adcbab3 Merge pull request #2094 from heiher/refine
loongarch: Refactor portable SIMD helper naming and intrinsic paths
2026-05-05 09:09:24 +00:00
Folkert de Vries 2f08046c35 Merge pull request #2102 from rust-lang/rustc-pull
Rustc pull update
2026-05-05 08:48:08 +00:00
Folkert de Vries 293492a249 Merge pull request #2095 from sayantn/stdarch-gen-arm-unsafe
Handle `Identifier` unsafety correctly in `stdarch-gen-arm`
2026-05-05 08:17:15 +00:00
The rustc-josh-sync Cronjob Bot 075e42d092 Merge ref '045b17737dab' from rust-lang/rust
Pull recent changes from https://github.com/rust-lang/rust via Josh.

Upstream ref: rust-lang/rust@045b17737d
Filtered ref: rust-lang/stdarch@65061a8597
Upstream diff: https://github.com/rust-lang/rust/compare/e22c616e4e87914135c1db261a03e0437255335e...045b17737dab5fcc28e4cbee0cfe2ce4ed363b32

This merge was created using https://github.com/rust-lang/josh-sync.
2026-05-04 05:13:00 +00:00
The rustc-josh-sync Cronjob Bot 753900705e Prepare for merging from rust-lang/rust
This updates the rust-version file to 045b17737d.
2026-05-04 05:12:53 +00:00
bors 045b17737d Auto merge of #156118 - RalfJung:miri, r=RalfJung
miri subtree update

Subtree update of `miri` to https://github.com/rust-lang/miri/commit/0853747bf78b8b6e314dcdf14ade9c83a6c54f3e.

Created using https://github.com/rust-lang/josh-sync.

r? @ghost
2026-05-03 22:28:16 +00:00
Ralf Jung 7bcb8c1bde Merge pull request #5001 from RalfJung/tid
tid handling: cleanup and unification
2026-05-03 18:04:39 +00:00
bors ad3a598ca4 Auto merge of #156113 - JonathanBrouwer:rollup-yXpNY1L, r=JonathanBrouwer
Rollup of 3 pull requests

Successful merges:

 - rust-lang/rust#153536 (Add `const_param_ty_unchecked` gate)
 - rust-lang/rust#155528 (const-stabilize `char::is_control()`)
 - rust-lang/rust#156086 (VaList::next_arg: track_caller for better Miri errors)
2026-05-03 17:54:12 +00:00
Ralf Jung 64ab20128c tid handling: cleanup and unification 2026-05-03 19:37:55 +02:00
Jonathan Brouwer 06354f4e17 Rollup merge of #156086 - RalfJung:next-arg-miri-errs, r=folkertdev
VaList::next_arg: track_caller for better Miri errors

The test diff should explain why this is better. :)

r? @folkertdev
2026-05-03 19:23:53 +02:00
Jonathan Brouwer b8c24b1d4f Rollup merge of #155528 - Jules-Bertholet:const-is-control, r=folkertdev
const-stabilize `char::is_control()`
2026-05-03 19:23:52 +02:00
Jonathan Brouwer 43fbdfd2f4 Rollup merge of #153536 - zedddie:const-param-ty-unchecked-gate, r=BoxyUwU
Add `const_param_ty_unchecked` gate

Add `const_param_ty_unchecked` internal feature gate to skip `ConstParamTy_` trait enforcement on type. Provides an escape hatch for writing tests and examples that use const generics without needing to ensure all fields implement `ConstParamTy_`.

r? BoxyUwU
2026-05-03 19:23:52 +02:00
bors 818811b3cd Auto merge of #156111 - JonathanBrouwer:rollup-8X18OBD, r=JonathanBrouwer
Rollup of 4 pull requests

Successful merges:

 - rust-lang/rust#156073 ([rustdoc] Fix `doc_cfg` feature on reexports)
 - rust-lang/rust#152216 (Fix 'assign to data in an index of' collection suggestions)
 - rust-lang/rust#155433 (Rip out rustc_layout_scalar_valid_range_* attribute support)
 - rust-lang/rust#156098 (Hand-implement `impl Debug for NumBuffer` to avoid constraining `T` or printing MaybeUninit)
2026-05-03 14:33:52 +00:00
Jonathan Brouwer 0d98c12aa5 Rollup merge of #156098 - joshtriplett:num-buffer-debug, r=GuillaumeGomez
Hand-implement `impl Debug for NumBuffer` to avoid constraining `T` or printing MaybeUninit

The derived implementation requires `T: Debug`, and doesn't need to.
2026-05-03 16:33:23 +02:00
Jonathan Brouwer 081e7c4481 Rollup merge of #155433 - oli-obk:bye-bye-long-attribute, r=RalfJung,ShoyuVanilla
Rip out rustc_layout_scalar_valid_range_* attribute support

And either removes tests for it or replaces the uses with pattern types.

primarily fixes rust-lang/rust#135996

fixes rust-lang/rust#147761
fixes rust-lang/rust#133652
2026-05-03 16:33:22 +02:00
Jonathan Brouwer 11610db252 Rollup merge of #152216 - GTimothy:map-diagnostics-fix, r=JonathanBrouwer
Fix 'assign to data in an index of' collection suggestions

fixes https://github.com/rust-lang/rust/issues/150001
fixes https://github.com/rust-lang/rust-analyzer/issues/16076
fixes https://github.com/rust-lang/rust/issues/134917

The issues are threefold and linked:
 1. Assigning data to a ~~collection~~BTreeMap/HashMap suggests 3 solutions all marked as `MachineApplicable`
 2. The suggestions are slightly wrong with regards to their borrowing needs.
 3. The suggestions are not guaranteed to produce code that is valid, and suggestion number two is equivalent to an update, not an insertion.

This PR:
 - splits the large triple suggestion into three
 - sets them to `MaybeIncorrect`
 - automatically determines the required borrowing to use.

 I think this solution may not be very elegant, expecially the key typechecking / borrowing part, but it works. I am however very open to any improvement/change :)

 edit: edited to replace 'collection' with  BTreeMap/HashMap'
2026-05-03 16:33:21 +02:00
Jonathan Brouwer bc6d9b1aa3 Rollup merge of #156073 - GuillaumeGomez:doc-cfg-reexports, r=Urgau
[rustdoc] Fix `doc_cfg` feature on reexports

Part of rust-lang/rust#150268.

I don't mark the issue as fixed as I need to check the third case described in the issue. First commit comes from https://github.com/rust-lang/rust/pull/156020, will need to rebase this PR once the original is merged.

r? @Urgau
2026-05-03 16:33:20 +02:00
bors 54f67d248b Auto merge of #155996 - flip1995:clippy-subtree-update, r=Manishearth
Clippy subtree update

r? Manishearth
2026-05-03 09:53:02 +00:00
Oli Scherer 11d88ee42b Rip out rustc_layout_scalar_valid_range_* attribute support 2026-05-03 10:59:52 +02:00