Commit Graph

543 Commits

Author SHA1 Message Date
Jubilee Young
f2f9bd7eb1 Disable MIPS jobs in CI 2023-07-07 03:47:53 -07:00
Jubilee
2b55e03436
Merge pull request #353 from rust-lang/sync-upstream-2023-06-07
Sync upstream
2023-07-07 03:21:10 -07:00
Caleb Zulawski
eb0041d154 Format 2023-06-07 23:46:06 -04:00
Caleb Zulawski
0368a8c778 Merge branch 'master' into sync-upstream-2023-06-07 2023-06-07 23:41:55 -04:00
Caleb Zulawski
73d7eb5f73
Merge pull request #344 from rust-lang/prelude
Add a prelude
2023-05-31 20:01:28 -04:00
Caleb Zulawski
d975d8fad4
Merge pull request #348 from taiki-e/arm-big
Fix build error on big endian arm/aarch64
2023-05-31 20:00:26 -04:00
Caleb Zulawski
5161f2ecd0
Merge pull request #350 from rust-lang/cast
Remove cast_ptr in favor of cast which acts like pointer::cast (and adjust integer casts)
2023-05-31 19:58:55 -04:00
Weihang Lo
ed2ee7ace1 Explicit set workspace.resolver = "1"
rust-lang/cargo#10910 starts emitting warning if resolver is not set
for 2021 edition package. We want to surpress the warning for now.
2023-05-31 00:08:11 +01:00
Taiki Endo
1af32f0a3a Fix build error on big endian arm/aarch64 2023-05-30 23:10:05 +09:00
Caleb Zulawski
cd3c67b7e5
Merge pull request #347 from thomcc/attrs
Add `#[inline]` to functions which were missing it, and `#[track_caller]` to ones with runtime panics from user input
2023-05-21 14:13:58 -04:00
Caleb Zulawski
0315db3cc1 Re-add missing #[must_use] 2023-05-21 14:10:27 -04:00
Thom Chiovoloni
c0b7df522f Add #[inline] to functions which were missing it, and #[track_caller] to ones with runtime panics from user input 2023-05-21 14:10:22 -04:00
Caleb Zulawski
f4ee1ab711 Simplify to_int_unchecked 2023-05-20 17:28:05 -04:00
Caleb Zulawski
6626cd8249 Remove cast_ptr in favor of cast which acts like pointer::cast. Move number casts to number traits. 2023-05-20 17:17:56 -04:00
David Tolnay
048264e0a3 Hide repr attribute from doc of types without guaranteed repr 2023-05-16 10:00:52 -07:00
Caleb Zulawski
c55e19cb00 Add Simd, Mask, simd_swizzle to prelude
Co-authored-by: Jacob Lifshay <programmerjake@gmail.com>
2023-05-12 09:16:43 -04:00
Caleb Zulawski
9e818d62b3 Ignore doctest 2023-05-12 09:16:43 -04:00
Caleb Zulawski
b3b5cfca66 Add a prelude 2023-05-12 09:16:43 -04:00
Jubilee Young
c7f6aae79c Correct swizzle_dyn cfg for armv7 neon 2023-05-11 17:22:00 -07:00
Jubilee Young
a978408be9 Sync portable-simd to 2023 May 10
Sync up to rust-lang/portable-simd@852762563a
2023-05-11 12:13:00 -07:00
Jubilee Young
852762563a Temp fix for swizzle_dyn
- disable the AVX512 variant for now (flaky)
- tell Clippy to knock it off
2023-05-10 06:49:00 -07:00
Jubilee Young
d361e4335f Drop const_ptr_read feature gate 2023-05-10 06:49:00 -07:00
Jubilee Young
8f50a17c37 Fixups for sync
- Fix LANES over-replace
- Bring in traits
- Use less inference-heavy types
2023-05-10 06:49:00 -07:00
Caleb Zulawski
50416fcc2c
Merge pull request #345 from Sp00ph/from_to_slice
Use the new `load`/`store` functions in `{from,to}_slice`
2023-05-07 08:16:26 -04:00
Caleb Zulawski
45413e468d
Merge pull request #346 from Sp00ph/update_safety
Fix inaccurate safety comments
2023-05-07 08:16:05 -04:00
Markus Everling
b246e45438 Fix inaccurate safety comments 2023-05-07 00:15:18 +00:00
Markus Everling
4967f25f6b Use the new load/store functions in {from,to}_slice 2023-05-07 00:11:56 +00:00
Ralf Jung
1ff41d320c Merge from rustc 2023-04-30 22:35:29 +02:00
Michael Goulet
a2cdcd53bf Make sure that signatures aren't accidental refinements 2023-04-28 17:36:49 +00:00
Caleb Zulawski
195d4cad50
Merge pull request #342 from rust-lang/load-store
Fix {to,from}_array UB when repr(simd) produces padding
2023-04-27 19:40:09 -04:00
Ralf Jung
a0d853c13e Merge from rustc 2023-04-26 09:51:54 +02:00
Caleb Zulawski
c504f01abe Use cast and improve comments 2023-04-25 21:37:04 -04:00
Caleb Zulawski
394a8845c6 Fix {to,from}_array UB when repr(simd) produces padding 2023-04-23 14:52:38 -04:00
Jubilee
ad8afa8c81
lane -> element for core::simd::Simd (rust-lang/portable-simd#338) 2023-04-22 19:07:46 -07:00
Jubilee
4f0d8225fa
Implement dynamic byte-swizzle prototype (rust-lang/portable-simd#334)
This is meant to be an example that is used to test
a Rust intrinsic against, which will replace it.
The interface is fairly direct and doesn't address
more nuanced or interesting permutations one can do,
nevermind on types other than bytes.

The ultimate goal is for direct LLVM support for this.
2023-04-22 18:27:52 -07:00
Jubilee Young
2b32732d0f Do not construct Simd 2023-04-22 18:22:04 -07:00
Jubilee Young
4064678daf Explain why to use Simd early 2023-04-22 17:58:54 -07:00
Jubilee
92259a4a6c Clarify elementwise cmp reduces
Saying "elementwise (non-)equal" may suggest it returns a vector.
The comments should be clear that it instead reduces to a scalar.

Co-authored-by: Jacob Lifshay <programmerjake@gmail.com>
2023-04-22 17:58:54 -07:00
Jubilee Young
71d4c36850 lane -> element for core::simd::Simd
A while ago we began saying T, N instead of T, LANES in reference to Simd.
At some point that leaked in to us checking in code with const N: usize.
After a while, we had a discussion and agreed that "lanes", while common,
is unnecessary jargon for Rust learners who aren't familiar with SIMD, and
is fully interchangeable with terms for arrays like element and index.

But we never acted on that. Let's update the main type's docs, at least.
The example tweaks also enable removing a slated-for-removal nightly fn.
2023-04-22 17:58:51 -07:00
Jubilee
f916add75d
Don't use direct field access in Simd functions (rust-lang/portable-simd#339)
Also see: https://rust-lang.zulipchat.com/#narrow/stream/257879-project-portable-simd/topic/splat.20no.20longer.20compiles.20for.20release.20builds
2023-04-22 17:55:38 -07:00
Markus Everling
f1b86baf84 Use pointer reads for better codegen in debug mode 2023-04-22 23:29:23 +00:00
Markus Everling
52833ccbe8 Add notes to avoid direct field accesses 2023-04-22 23:08:55 +00:00
Markus Everling
afad9c3f64 Don't use direct field access in Simd functions 2023-04-22 21:40:36 +00:00
Oli Scherer
92a6d25f91 Merge from rustc 2023-04-17 09:14:45 +00:00
KaDiWa
280657066a remove some unneeded imports 2023-04-12 19:27:18 +02:00
Jubilee
ceb2611592
Remove formats [T; N] does not impl (rust-lang/portable-simd#337)
Remove these extra formatting traits, as they are
inconsistent with how arrays and slices format,
and it can cause unnecessary code bloat in binaries.
We can revisit this if people ever agree on doing these
formatters for the other slice-y types.

Prefer to dispatch to the `impl `fmt::Debug for [T]`,
to reduce the chances of monomorphizing twice.
Inlining it seems like a good idea for similar reasons?
2023-04-09 21:26:40 -07:00
Caleb Zulawski
90f2af774a Fix lint 2023-03-26 16:11:05 -04:00
Caleb Zulawski
e6bbf49ba9
Merge pull request #336 from bjorn3/faster_tests
Skip building wasm-bindgen-test on non-wasm targets
2023-03-26 09:33:53 -04:00
bjorn3
65b5210bdb Skip building wasm-bindgen-test on non-wasm targets
This reduces compilation time
2023-03-26 12:56:35 +02:00
Caleb Zulawski
8dcb4d5ef7
Merge pull request #331 from rust-lang/to_slice
Add copy_to_slice
2023-03-11 12:02:15 -05:00