]> git.lizzy.rs Git - rust.git/log
rust.git
2 years agoMerge pull request #142 from rust-lang/feature/traits
Jubilee [Sat, 24 Jul 2021 23:01:57 +0000 (16:01 -0700)]
Merge pull request #142 from rust-lang/feature/traits

Combine LanesAtMost32 and SimdArray into a single trait "Vector"

Attempts to fix some unresolved questions in #139 regarding `SimdArray` having a generic parameter.

In particular, this made it not appropriate for replacing `LanesAtMost32`.  Additionally, it made it impossible to use in a context where you otherwise don't know the lane count, e.g. `impl Vector`.

An unfortunate side effect of this change is that scatter/gather no longer work in the trait (nor does anything else that references the lane count in a type.  This requires the super-unstable `const_evaluatable_checked` feature).

I also threw in the change from `as_slice` to `as_array` as discussed in zulip, and fixes #51.

2 years agoAdd lane count marker type
Caleb Zulawski [Sat, 24 Jul 2021 02:54:19 +0000 (02:54 +0000)]
Add lane count marker type

2 years agoMove vector implementation
Caleb Zulawski [Tue, 29 Jun 2021 22:08:50 +0000 (22:08 +0000)]
Move vector implementation

2 years agoUse new module naming
Caleb Zulawski [Tue, 29 Jun 2021 21:48:54 +0000 (21:48 +0000)]
Use new module naming

2 years agoChange as_slice to as_array
Caleb Zulawski [Mon, 28 Jun 2021 00:41:21 +0000 (00:41 +0000)]
Change as_slice to as_array

2 years agoAdd as_slice/as_mut_slice to Vector
Caleb Zulawski [Sun, 27 Jun 2021 19:38:30 +0000 (19:38 +0000)]
Add as_slice/as_mut_slice to Vector

2 years agoRename SimdArray to Vector, remove its generic parameter, and remove LanesAtMost32
Caleb Zulawski [Fri, 25 Jun 2021 03:34:10 +0000 (03:34 +0000)]
Rename SimdArray to Vector, remove its generic parameter, and remove LanesAtMost32

2 years agoAdd fmt and clippy to CI (#147)
Caleb Zulawski [Sat, 24 Jul 2021 00:43:53 +0000 (20:43 -0400)]
Add fmt and clippy to CI (#147)

* Add fmt and clippy to CI
* Add rust components
* Fix formatting

2 years agoAdd portable_simd unstable feature gate (#141)
Caleb Zulawski [Mon, 19 Jul 2021 23:13:24 +0000 (19:13 -0400)]
Add portable_simd unstable feature gate (#141)

2 years agoAdd conversions between vendor intrinsics (#144)
Caleb Zulawski [Mon, 19 Jul 2021 22:01:28 +0000 (18:01 -0400)]
Add conversions between vendor intrinsics (#144)

* Add x86 vendor conversions
* Add wasm32 vendor types
* Add arm vendor types
* Add powerpc vendor types

2 years agoadd matrix_inversion example (#131)
Miguel Raz Guzmán Macedo [Mon, 19 Jul 2021 21:58:13 +0000 (16:58 -0500)]
add matrix_inversion example (#131)

* add matrix_inversion example

2 years agoAdd 32-bit SIMD types i/u16x2 and i/u8x4. (#145)
Adam Greig [Mon, 19 Jul 2021 21:18:29 +0000 (22:18 +0100)]
Add 32-bit SIMD types i/u16x2 and i/u8x4. (#145)

These types are useful for the "SIMD32" instructions available on ARMv6
(except M-class), ARMv7 (M-class with DSP), and ARMv8.

3 years agoFix typo. Closes #140
Caleb Zulawski [Sat, 26 Jun 2021 17:08:40 +0000 (17:08 +0000)]
Fix typo. Closes #140

3 years agoMerge pull request #139 from rust-lang/feat/gather
Jubilee [Thu, 24 Jun 2021 03:47:51 +0000 (20:47 -0700)]
Merge pull request #139 from rust-lang/feat/gather

Add SimdArray trait and safe gather/scatter API (rust-lang/stdsimd#139)
This PR has four parts, without which it doesn't make a lot of sense:
-    The introduction of the SimdArray trait for abstraction over vectors.
-    The implementation of private vector-of-pointers types.
-    Using these to allow constructing vectors with SimdArray::gather_{or, or_default, select}.
-    Using these to allow writing vectors using SimdArray::scatter{,_select}.

3 years agoMerge pull request #138 from rust-lang/feature/various-fns
Jubilee [Wed, 23 Jun 2021 21:19:08 +0000 (14:19 -0700)]
Merge pull request #138 from rust-lang/feature/various-fns

Add various fns
- Sum/Product traits
- recip/to_degrees/to_radians/min/max/clamp/signum/copysign; rust-lang/stdsimd#14
- mul_add: rust-lang/stdsimd#14, fixes rust-lang/stdsimd#102

3 years agoDocument and test doubled writes in scatter
Jubilee Young [Wed, 23 Jun 2021 19:13:10 +0000 (12:13 -0700)]
Document and test doubled writes in scatter

3 years agoAdd assoc const SimdArray::LANES
Jubilee Young [Tue, 22 Jun 2021 22:17:01 +0000 (15:17 -0700)]
Add assoc const SimdArray::LANES

3 years agoAdd SimdArray::scatter{,_select}
Jubilee Young [Tue, 22 Jun 2021 01:04:39 +0000 (18:04 -0700)]
Add SimdArray::scatter{,_select}

3 years agoAdd SimdArray::gather_{or,or_default,select}
Jubilee Young [Tue, 15 Jun 2021 21:38:34 +0000 (14:38 -0700)]
Add SimdArray::gather_{or,or_default,select}

3 years agoAdd pointer vectors: SimdConstPtr, SimdMutPtr
Jubilee Young [Tue, 15 Jun 2021 17:52:29 +0000 (10:52 -0700)]
Add pointer vectors: SimdConstPtr, SimdMutPtr

3 years agoIntroduce SimdArray trait
Jubilee Young [Tue, 15 Jun 2021 17:32:53 +0000 (10:32 -0700)]
Introduce SimdArray trait

This provides a general framework for describing relationships
between vector types and scalar types.

3 years agoExtract constant from scalar to_radians as well
Caleb Zulawski [Mon, 21 Jun 2021 21:11:37 +0000 (21:11 +0000)]
Extract constant from scalar to_radians as well

3 years agoRemove scalar Sum/Product over questionable order of operations
Caleb Zulawski [Mon, 21 Jun 2021 21:08:26 +0000 (21:08 +0000)]
Remove scalar Sum/Product over questionable order of operations

3 years agoAdd from_bitmask (#136)
Caleb Zulawski [Mon, 21 Jun 2021 21:05:43 +0000 (17:05 -0400)]
Add from_bitmask (#136)

* Add from_bitmask
* Add mips workaround

3 years agoFix test typo
Caleb Zulawski [Sun, 13 Jun 2021 20:11:01 +0000 (20:11 +0000)]
Fix test typo

3 years agoAdd mul_add
Caleb Zulawski [Sun, 13 Jun 2021 19:59:17 +0000 (19:59 +0000)]
Add mul_add

3 years agoAdd min/max/clamp
Caleb Zulawski [Sun, 13 Jun 2021 19:47:32 +0000 (19:47 +0000)]
Add min/max/clamp

3 years agoAdd various special functions (recip, signum, copysign)
Caleb Zulawski [Sun, 13 Jun 2021 18:45:45 +0000 (18:45 +0000)]
Add various special functions (recip, signum, copysign)

3 years agoImplement Sum/Product over references
Caleb Zulawski [Sun, 13 Jun 2021 18:00:47 +0000 (18:00 +0000)]
Implement Sum/Product over references

3 years agoImplement Sum/Product traits
Caleb Zulawski [Sun, 13 Jun 2021 17:52:44 +0000 (17:52 +0000)]
Implement Sum/Product traits

3 years agoadd doctests for shuffle (#130)
Miguel Raz Guzmán Macedo [Fri, 11 Jun 2021 22:48:44 +0000 (17:48 -0500)]
add doctests for shuffle (#130)

* add shuffle doctests/examples

3 years agoAdd mask width conversion (#127)
Caleb Zulawski [Fri, 11 Jun 2021 22:48:05 +0000 (18:48 -0400)]
Add mask width conversion (#127)

3 years agoadd helloworld to README (#134)
Miguel Raz Guzmán Macedo [Mon, 7 Jun 2021 17:56:15 +0000 (12:56 -0500)]
add helloworld to README (#134)

* add helloworld to README

3 years agoMerge pull request #122 from miguelraz/nbodyexample
Jubilee [Fri, 4 Jun 2021 16:43:48 +0000 (09:43 -0700)]
Merge pull request #122 from miguelraz/nbodyexample

nbody example

3 years agoclean code vis. Jubilee's comments
miguel raz [Fri, 4 Jun 2021 15:54:08 +0000 (10:54 -0500)]
clean code vis. Jubilee's comments

3 years agoUpdate crates/core_simd/examples/nbody.rs
Miguel Raz Guzmán Macedo [Fri, 4 Jun 2021 15:40:39 +0000 (10:40 -0500)]
Update crates/core_simd/examples/nbody.rs

Co-authored-by: Jubilee <46493976+workingjubilee@users.noreply.github.com>
3 years agoclean up code, fudge approx true
miguel raz [Wed, 2 Jun 2021 01:05:30 +0000 (20:05 -0500)]
clean up code, fudge approx true

3 years agoadd main to avoid CI crash
miguel raz [Wed, 2 Jun 2021 00:46:48 +0000 (19:46 -0500)]
add main to avoid CI crash

3 years agofinish nbody
miguel raz [Wed, 2 Jun 2021 00:31:34 +0000 (19:31 -0500)]
finish nbody

3 years agorewrite unaligned slice, fix output const array
miguel raz [Tue, 1 Jun 2021 20:25:56 +0000 (15:25 -0500)]
rewrite unaligned slice, fix output const array

3 years agocollapse run_k into run
miguel raz [Tue, 1 Jun 2021 17:26:29 +0000 (12:26 -0500)]
collapse run_k into run

3 years agodon't use turbofish on run
miguel raz [Tue, 1 Jun 2021 17:15:37 +0000 (12:15 -0500)]
don't use turbofish on run

3 years agodon't need clippy
miguel raz [Tue, 1 Jun 2021 17:09:11 +0000 (12:09 -0500)]
don't need clippy

3 years agoUpdate crates/core_simd/examples/nbody.rs
Miguel Raz Guzmán Macedo [Mon, 31 May 2021 23:03:55 +0000 (18:03 -0500)]
Update crates/core_simd/examples/nbody.rs

Co-authored-by: Jubilee <46493976+workingjubilee@users.noreply.github.com>
3 years agoMerge pull request #125 from rust-lang/remove-stable-feature
Jubilee [Sat, 29 May 2021 03:04:31 +0000 (20:04 -0700)]
Merge pull request #125 from rust-lang/remove-stable-feature

Remove extended_key_value_attributes feature

3 years agoRemove extended_key_value_attributes feature
Caleb Zulawski [Wed, 26 May 2021 14:27:16 +0000 (10:27 -0400)]
Remove extended_key_value_attributes feature

3 years agoreplace sum() with horizontal_sum()
miguel raz [Wed, 26 May 2021 02:25:42 +0000 (21:25 -0500)]
replace sum() with horizontal_sum()

3 years agoSimdf64 from attempt
miguel raz [Wed, 26 May 2021 01:10:55 +0000 (20:10 -0500)]
Simdf64 from attempt

3 years agofix imports
miguel raz [Wed, 26 May 2021 01:07:20 +0000 (20:07 -0500)]
fix imports

3 years agonbody example
miguel raz [Wed, 26 May 2021 01:00:01 +0000 (20:00 -0500)]
nbody example

3 years agoMerge pull request #120 from miguelraz/simd_fsqrt
Caleb Zulawski [Mon, 24 May 2021 23:07:12 +0000 (19:07 -0400)]
Merge pull request #120 from miguelraz/simd_fsqrt

add simd_fsqrt intrinsic

3 years agoAdd byte conversions
Caleb Zulawski [Mon, 24 May 2021 12:37:15 +0000 (08:37 -0400)]
Add byte conversions

3 years agoadd simd_fsqrt intrinsic
miguel raz [Tue, 18 May 2021 14:26:01 +0000 (09:26 -0500)]
add simd_fsqrt intrinsic

3 years agoMerge pull request #117 from rust-lang/feature/mask-select
Jubilee [Mon, 10 May 2021 20:55:18 +0000 (13:55 -0700)]
Merge pull request #117 from rust-lang/feature/mask-select

Implement select on masks

3 years agoClarify documentation
Caleb Zulawski [Sat, 8 May 2021 00:13:40 +0000 (00:13 +0000)]
Clarify documentation

3 years agoFix rustfmt
Caleb Zulawski [Sat, 8 May 2021 00:11:34 +0000 (00:11 +0000)]
Fix rustfmt

3 years agoAdd select for masks
Caleb Zulawski [Sat, 8 May 2021 00:07:07 +0000 (00:07 +0000)]
Add select for masks

3 years agoMerge pull request #103 from rust-lang/feature/select
Jubilee [Tue, 4 May 2021 20:35:10 +0000 (13:35 -0700)]
Merge pull request #103 from rust-lang/feature/select

Implement trait Select<Mask> and fn select

3 years agoAdd select function
Caleb Zulawski [Thu, 22 Apr 2021 04:09:56 +0000 (04:09 +0000)]
Add select function

3 years agoMerge pull request #99 from rust-lang/feature/simplify-masks
Jubilee [Sat, 1 May 2021 07:02:33 +0000 (00:02 -0700)]
Merge pull request #99 from rust-lang/feature/simplify-masks

Feature/simplify masks

3 years agoAttempt to workaround MIPS bug
Caleb Zulawski [Thu, 29 Apr 2021 03:34:28 +0000 (03:34 +0000)]
Attempt to workaround MIPS bug

3 years agoMake implementation more scalable by using a helper trait to determine bitmask size...
Caleb Zulawski [Thu, 29 Apr 2021 02:41:09 +0000 (02:41 +0000)]
Make implementation more scalable by using a helper trait to determine bitmask size.  Improve bitmask to int conversion.

3 years agoUpdate bitmask API
Caleb Zulawski [Mon, 19 Apr 2021 04:31:43 +0000 (04:31 +0000)]
Update bitmask API

3 years agoBegin reducing mask API
Caleb Zulawski [Sun, 18 Apr 2021 19:26:07 +0000 (19:26 +0000)]
Begin reducing mask API

3 years agoMerge pull request #107 from rust-lang/feat/simd-round
Jubilee [Mon, 26 Apr 2021 16:05:34 +0000 (09:05 -0700)]
Merge pull request #107 from rust-lang/feat/simd-round

Add SIMD rounding intrinsics

3 years agoMerge pull request #100 from rust-lang/fix-sat-math
Jubilee [Mon, 26 Apr 2021 07:12:51 +0000 (00:12 -0700)]
Merge pull request #100 from rust-lang/fix-sat-math

Fix sat math at the cost of Simd{U,I}128 for now

3 years agoAdd SIMD round, trunc, fract
Jubilee Young [Sun, 25 Apr 2021 22:03:17 +0000 (15:03 -0700)]
Add SIMD round, trunc, fract

3 years agoGive rounding intrinsics their own modules
Jubilee Young [Sun, 25 Apr 2021 22:01:05 +0000 (15:01 -0700)]
Give rounding intrinsics their own modules

3 years agoRemove Simd{U,I}128
Jubilee Young [Sun, 25 Apr 2021 23:40:35 +0000 (16:40 -0700)]
Remove Simd{U,I}128

3 years agoMove lanes_at_most_64 to _32
Jubilee Young [Sun, 25 Apr 2021 23:40:18 +0000 (16:40 -0700)]
Move lanes_at_most_64 to _32

3 years agoBranchless abs
Jubilee Young [Wed, 14 Apr 2021 04:15:20 +0000 (21:15 -0700)]
Branchless abs

3 years agoFinish fixing up abs docs
Jubilee Young [Wed, 14 Apr 2021 03:19:53 +0000 (20:19 -0700)]
Finish fixing up abs docs

3 years agoFix saturating math docs
Caleb Zulawski [Sun, 11 Apr 2021 15:42:29 +0000 (11:42 -0400)]
Fix saturating math docs

3 years agoMerge pull request #83 from rust-lang/feature/reductions
Jubilee [Thu, 22 Apr 2021 23:44:41 +0000 (16:44 -0700)]
Merge pull request #83 from rust-lang/feature/reductions

Add reductions

3 years agoRemove wrapping from sum/product fns
Caleb Zulawski [Thu, 22 Apr 2021 22:41:12 +0000 (22:41 +0000)]
Remove wrapping from sum/product fns

3 years agoMerge pull request #98 from rust-lang/feature/common-shuffles
Jubilee [Wed, 21 Apr 2021 06:33:01 +0000 (23:33 -0700)]
Merge pull request #98 from rust-lang/feature/common-shuffles

Add some common shuffles

3 years agoAttempt to clarify interleave/deinterleave
Caleb Zulawski [Tue, 20 Apr 2021 01:51:06 +0000 (01:51 +0000)]
Attempt to clarify interleave/deinterleave

3 years agoRename sum, product to horizontal_{sum,product}
Caleb Zulawski [Mon, 19 Apr 2021 23:41:11 +0000 (23:41 +0000)]
Rename sum, product to horizontal_{sum,product}

3 years agoMerge pull request #95 from rust-lang/intrinsic-fabs
Caleb Zulawski [Mon, 19 Apr 2021 05:46:52 +0000 (01:46 -0400)]
Merge pull request #95 from rust-lang/intrinsic-fabs

Use fabs intrinsic

3 years agoUse fabs intrinsic
Jubilee Young [Wed, 14 Apr 2021 02:24:20 +0000 (19:24 -0700)]
Use fabs intrinsic

3 years agoClarify concatenation order
Caleb Zulawski [Sat, 17 Apr 2021 19:21:25 +0000 (15:21 -0400)]
Clarify concatenation order

Co-authored-by: Jubilee <46493976+workingjubilee@users.noreply.github.com>
3 years agoAdd some common shuffles
Caleb Zulawski [Sat, 17 Apr 2021 17:00:14 +0000 (17:00 +0000)]
Add some common shuffles

3 years agoMerge pull request #89 from rust-lang/intrinsic-neg
Caleb Zulawski [Sat, 17 Apr 2021 01:35:11 +0000 (21:35 -0400)]
Merge pull request #89 from rust-lang/intrinsic-neg

Use neg intrinsics

3 years agoUpdate docs
Caleb Zulawski [Sat, 17 Apr 2021 01:32:45 +0000 (01:32 +0000)]
Update docs

3 years agoMerge pull request #96 from rust-lang/burning-chrome
Jubilee [Fri, 16 Apr 2021 23:21:39 +0000 (16:21 -0700)]
Merge pull request #96 from rust-lang/burning-chrome

Reduce wasm test suite

3 years agoUse neg intrinsics
Jubilee Young [Thu, 8 Apr 2021 22:11:20 +0000 (15:11 -0700)]
Use neg intrinsics

3 years agoDrop wasm SIMD tests
Jubilee Young [Fri, 16 Apr 2021 18:33:02 +0000 (11:33 -0700)]
Drop wasm SIMD tests

3 years agoBurn Chrome again
Jubilee Young [Fri, 16 Apr 2021 03:24:32 +0000 (20:24 -0700)]
Burn Chrome again

3 years agoSilence warnings
Jubilee Young [Thu, 15 Apr 2021 22:06:30 +0000 (15:06 -0700)]
Silence warnings

3 years agoImprove function names and docs
Caleb Zulawski [Sun, 11 Apr 2021 14:59:05 +0000 (10:59 -0400)]
Improve function names and docs

3 years agoEnable i586 workaround for both f32 and f64
Caleb Zulawski [Sat, 13 Mar 2021 01:31:30 +0000 (20:31 -0500)]
Enable i586 workaround for both f32 and f64

3 years agoFix test sum/product implementation
Caleb Zulawski [Sat, 13 Mar 2021 01:10:51 +0000 (20:10 -0500)]
Fix test sum/product implementation

3 years agoRevert "Revert i586 fix, fix test instead"
Caleb Zulawski [Sat, 13 Mar 2021 01:09:31 +0000 (20:09 -0500)]
Revert "Revert i586 fix, fix test instead"

This reverts commit 1ea2f128821339d8050ca936f24b71677352437e.

3 years agoRevert i586 fix, fix test instead
Caleb Zulawski [Fri, 12 Mar 2021 05:29:18 +0000 (00:29 -0500)]
Revert i586 fix, fix test instead

3 years agoFix i586 detection
Caleb Zulawski [Thu, 11 Mar 2021 06:02:47 +0000 (01:02 -0500)]
Fix i586 detection

3 years agoUpdate documentation and fix i586 inaccuracy
Caleb Zulawski [Thu, 11 Mar 2021 05:27:47 +0000 (00:27 -0500)]
Update documentation and fix i586 inaccuracy

3 years agoFix mask ops
Caleb Zulawski [Thu, 11 Mar 2021 05:05:20 +0000 (00:05 -0500)]
Fix mask ops

3 years agoEnable special handling of zero
Caleb Zulawski [Thu, 11 Mar 2021 04:47:43 +0000 (23:47 -0500)]
Enable special handling of zero

3 years agoAdd tests
Caleb Zulawski [Mon, 8 Mar 2021 05:48:18 +0000 (00:48 -0500)]
Add tests

3 years agoImplement reductions
Caleb Zulawski [Mon, 8 Mar 2021 02:15:56 +0000 (21:15 -0500)]
Implement reductions