Caleb Zulawski
7145dc5a41
Merge pull request #299 from rust-lang/interleave-one
...
Fix interleave/deinterleave for vectors with only one lane
2022-08-03 23:23:19 -04:00
Caleb Zulawski
5f7066430b
Simplify expression
2022-08-01 19:57:41 -04:00
Caleb Zulawski
d030301161
Remove special case for length-1 vectors
2022-08-01 19:52:35 -04:00
Caleb Zulawski
c739af3908
Hide rustc unstable feature from docs
2022-08-01 00:38:29 -04:00
Caleb Zulawski
6bf5128235
Simplify interleave/deinterleave and fix for odd-length vectors.
2022-08-01 00:34:58 -04:00
Caleb Zulawski
3183afb6b5
Fix interleave/deinterleave for vectors with only one lane
2022-07-29 11:57:05 -04:00
Ralf Jung
ddede9fb9b
make some Miri backtraces more pretty
2022-07-22 09:39:23 -04:00
Thom Chiovoloni
b5f9d43ff1
rust-lang/portable-simd#289 : Strengthen warnings about relying on Mask layout
...
This makes it more clear that you can't rely on the layout of these,
which seems worth doing given that the names vaguely suggest that you can
(and the docs only clarify that you can't on Mask but not the maskNxM aliases).
2022-07-21 14:53:07 -07:00
The Atelier
2e081db92a
Fix doctest imports using as_crate feature
...
Within core, `use self::` does not work to import these items.
And because core is not core_simd, neither does the existing `use`.
So, use this quirky hack instead, switching the import on a feature.
2022-07-20 17:55:47 -07:00
Mark Rousskov
bbf31f9c78
Finish bumping stage0
...
It looks like the last time had left some remaining cfg's -- which made me think
that the stage0 bump was actually successful. This brings us to a released 1.62
beta though.
2022-07-19 16:37:34 -07:00
Ralf Jung
64bef2910b
portable-simd: use simd_arith_offset to avoid ptr-int transmutation
2022-07-19 16:37:34 -07:00
Caleb Zulawski
ed8092e96b
Clarify comment
2022-06-21 20:52:43 -04:00
Caleb Zulawski
0f6399b166
Merge pull request #284 from programmerjake/fix_splat
...
Change `Simd::splat` to not generate a loop
2022-06-21 20:50:11 -04:00
Jacob Lifshay
f7412ad7b9
add workaround comment in Simd::splat
2022-06-06 12:43:29 -07:00
Jacob Lifshay
c9636158d9
Change Simd::splat
to not generate a loop
...
This fixes poor codegen in some circumstances for `u16x8::splat` on x86_64
https://rust-lang.zulipchat.com/#narrow/stream/257879-project-portable-simd/topic/Very.20bad.20.60u16x8.3A.3Asplat.60.20codegen.20on.20x86_64
2022-06-06 12:16:17 -07:00
Caleb Zulawski
5562b02ff0
Deduplicate to_int_unchecked
2022-06-02 10:19:20 -04:00
Caleb Zulawski
05c92c73c1
Document remaining internal unsafety, and deny undocumented unsafety
2022-05-31 14:44:23 -04:00
Caleb Zulawski
5e320046ec
Merge pull request #246 from rust-lang/feature/bitmask_array
...
Add bitmask array
2022-05-31 14:42:34 -04:00
Caleb Zulawski
c44a608f5f
Merge pull request #278 from rust-lang/feature/simd-traits
...
Move element-specific functions to traits
2022-05-31 14:26:30 -04:00
Caleb Zulawski
bca8dec404
Remove incorrect comment
2022-05-22 01:20:28 -04:00
Caleb Zulawski
1cee9304b3
Fix generic_const_exprs feature
2022-05-21 20:08:38 -04:00
Caleb Zulawski
b7fea94c96
Generically implement ToBitMaskArray
2022-05-21 20:02:31 -04:00
Caleb Zulawski
c9f4e0ef98
Use Mask::cast in From impl
2022-05-21 16:49:03 -04:00
Caleb Zulawski
aa11959f19
Add mask cast tests
2022-05-21 16:34:27 -04:00
Jubilee Young
98cd636d58
Add Mask::cast
2022-05-21 15:13:33 -04:00
Caleb Zulawski
af53b5de24
rust-lang/portable-simd#279 : Silence clippy false alarms
2022-04-25 13:32:56 -07:00
Caleb Zulawski
62d3b2e39c
Add Copy bound to SIMD traits
2022-04-16 16:17:43 -04:00
Caleb Zulawski
528bc8593a
Improve copysign documentation
2022-04-15 13:47:43 -04:00
Caleb Zulawski
04be48ff97
Add float trait, and seal traits.
2022-04-15 02:11:16 -04:00
Caleb Zulawski
376957ad8c
Move integer functions to traits.
2022-04-15 02:00:50 -04:00
Sean Stangl
fcc5ca0f93
rust-lang/portable-simd#273 : Documentation update for reduce functions, swizzle
...
Working through giving example documentation to every Simd function.
The major change in this patch is using doc macros to generate
type-specific examples for each function, using a visually-apparent type
constructor. This makes it feel nicer to have twelve separate
documentation entries for reduce_product(), for example.
2022-04-10 23:08:34 -07:00
Sean Stangl
7136841cbd
rust-lang/portable-simd#274 : Use SIMD equality for PartialEq on SIMD vectors
2022-04-10 23:05:14 -07:00
Jubilee
1ec010db2a
rust-lang/portable-simd#265 : Move comparisons to traits
...
A simpler variant of rust-lang/portable-simd#206 .
* Comparisons are moved to `SimdPartialEq`, `SimdPartialOrd`, and `SimdOrd`. The function names are prefixed with `simd_` to disambiguate from the regular `PartialEq` etc functions. With the functions on traits instead of `Simd` directly, shadowing the function names doesn't work very well.
* Floating point `Ord`-like functions are put into a `SimdFloat` trait. The intention is that eventually (some time after this PR) all floating point functions will be moved from `Simd` to `SimdFloat`, and the same goes for future `SimdInt`/`SimdUint` traits.
2022-04-04 10:19:20 -07:00
Sean Stangl
8cd9325e20
Add a *small* blurb to Mask that is likely unobjectionable
2022-04-03 16:22:31 -06:00
Sean Stangl
21b070ce43
Correct the Mask docs, and get them to fit in search results
2022-04-03 16:15:27 -06:00
Sean Stangl
c73f1fbdde
Update crates/core_simd/src/masks.rs
...
Co-authored-by: Jacob Lifshay <programmerjake@gmail.com>
2022-04-03 15:59:22 -06:00
Sean Stangl
4e14017f3d
Standardize documentation for SIMD vector and mask types
2022-04-03 15:20:00 -06:00
Jubilee
0711e11593
rust-lang/portable-simd#267 : fix big-endian bitmasks smaller than a byte
2022-03-21 00:05:38 -07:00
Ralf Jung
35e16a1e06
rust-lang/portable-simd#266 : reduce Miri test count in round.rs
2022-03-20 16:17:33 -07:00
Ralf Jung
60555b57f1
fix big-endian bitmasks smaller than a byte
2022-03-17 10:42:39 -04:00
Ralf Jung
50fbfa4eba
add bitmask roundtrip test for vector length below 8
2022-03-16 20:28:18 -04:00
Caleb Zulawski
60486e08ed
SimdPartialOrd implies SimdPartialEq
2022-03-15 00:17:14 +00:00
Caleb Zulawski
2a02c4d9cb
Create SimdFloat trait
2022-03-13 19:57:06 +00:00
Caleb Zulawski
80469c66d6
Move comparisons to SimdPartialOrd and SimdOrd traits
2022-03-13 19:07:36 +00:00
Jubilee
72df4c4505
portable-simd#261: Rename horizontal_* to reduce_*
2022-03-12 15:34:58 -08:00
Ralf Jung
49043f4434
rust-lang/portable-simd#262 : also implement clamp for integer vectors
...
* add test from issue rust-lang/portable-simd#253
2022-03-12 15:32:28 -08:00
Jacob Lifshay
c196b8abaa
replace horizontal_* with reduce_*
2022-03-11 14:49:06 -08:00
Jorge Leitao
86b9f69622
rust-lang/portable-simd#260 : Add .min
and .max
for integers
2022-03-10 15:12:40 -08:00
Ralf Jung
adbd47973e
reduce number of tests being run under Miri
2022-03-09 07:54:49 -05:00
Jubilee Young
2d13059ae9
Clean up use of cargo feature "std"
2022-03-08 13:36:29 -08:00