Caleb Zulawski
16904ebfc7
Add missing type bounds
2021-02-13 00:49:51 -05:00
Caleb Zulawski
6362540f11
Limit all types to 64 lanes
2021-02-09 22:13:27 -05:00
Caleb Zulawski
26061b4e84
Fix wasm tests
2021-02-09 19:14:46 -05:00
Caleb Zulawski
9e96c8a2a8
Add missing From implementation, add simple mask API tests
2021-02-09 19:14:46 -05:00
Caleb Zulawski
92293aff9d
Add bitmask that supports up to 64 lanes. Simplify mask op API.
2021-02-09 19:14:46 -05:00
Ashley Mannix
1b0c231948
Merge pull request #62 from rust-lang/feature/shuffle-self
...
Add SIMD shuffles for SimdType{2,4,8,16,32,64}
2021-02-09 13:16:17 +10:00
Jubilee Young
5424140b66
Add SIMD shuffles for SimdType{2,4,8,16,32,64}
...
This const generic implementation for certain lane sizes represents
a more limited interface than what LLVM's shufflevector instruction
can handle, as normally the length of U can be different from the
length of T, but offers an interface that it is expected to be able
to expand the capabilities of in the future.
2021-02-05 23:28:12 -08:00
miguel raz
8bea63425e
AsRef -> as_slices()
2021-02-03 17:46:08 -06:00
Jubilee
98015403c5
Merge pull request #55 from miguelraz/min-panics
...
implement guards in rem and div unsound cases
2021-02-02 17:21:09 -08:00
miguel raz
c67fc2e4c5
Add guards/tests for div,rem overflow cases
2021-02-02 18:59:22 -06:00
Jubilee Young
cb036b534d
min_const_generics ride the train to stable
2021-01-26 21:46:10 -08:00
Caleb Zulawski
59947717c5
Add workaround for rust-lang/rust#80108
2020-12-17 01:19:39 -05:00
Caleb Zulawski
9b8cb18c9f
Remove obsolete files
2020-12-14 00:40:59 -05:00
Caleb Zulawski
62d98e3a11
Remove obsolete macros
2020-12-14 00:34:32 -05:00
Caleb Zulawski
2720ccc5a7
Fix masks
2020-12-14 00:27:20 -05:00
Caleb Zulawski
0ddf7acc89
Reenable rounding ops
2020-12-14 00:07:36 -05:00
Caleb Zulawski
9cc3deaa92
Finish refactoring vector types
2020-12-14 00:00:02 -05:00
Caleb Zulawski
25c7640fb3
Reenable ops and fix tests
2020-12-14 00:00:02 -05:00
Caleb Zulawski
22576bb6e0
Implement additional functions
2020-12-14 00:00:02 -05:00
Caleb Zulawski
27e944231c
Begin changing vectors to const generics
2020-12-14 00:00:02 -05:00
Caleb Zulawski
35b9ab9f5c
Simplify some formatting
2020-12-14 00:00:02 -05:00
Caleb Zulawski
78a8d615b5
Implement missing traits on opaque masks, fix tests
2020-12-14 00:00:02 -05:00
Caleb Zulawski
5bc5d7f0d1
Add comparison ops
2020-12-14 00:00:02 -05:00
Caleb Zulawski
cebc2ca707
Add opaque masks
2020-12-13 23:59:07 -05:00
Jubilee Young
3d9bbf9b86
Use simd_{floor,ceil} intrinsics for round.rs
2020-11-30 19:31:08 -08:00
Jubilee Young
e9cc3066a8
Remove round, trunc tests
...
There are no platform intrinsics in the rustc for these functions yet,
so this removes them as a distinct commit for later reversion.
2020-11-30 19:26:53 -08:00
Caleb Zulawski
3870633828
Add rounding mode test
2020-10-12 20:48:05 -04:00
Caleb Zulawski
dc85c13ff3
Account for sign bit
2020-10-11 21:41:26 -04:00
Caleb Zulawski
c27c76182b
Fix UB in test (really this time)
2020-10-11 21:28:50 -04:00
Caleb Zulawski
6e07982c4c
Fix UB in test
2020-10-11 19:08:25 -04:00
Caleb Zulawski
5805c7a051
Fix comment
2020-10-11 14:34:57 -04:00
Caleb Zulawski
3d8721b053
Fix casts, add tests
2020-10-11 14:32:46 -04:00
Caleb Zulawski
75fdacde1c
Add rounding to integers
2020-10-11 13:22:26 -04:00
Caleb Zulawski
ffedbe5b15
Add rounding functions
2020-10-10 00:22:36 -04:00
Thom Chiovoloni
ffd562f218
Add comment about fneg to the bitxor in float neg
2020-10-07 13:24:21 -07:00
Thom Chiovoloni
873639d6fd
Use bitxor to implement Neg for floats
2020-10-07 11:51:54 -07:00
Thom Chiovoloni
8d3d616b13
Apply review feedback
2020-10-06 13:40:39 -07:00
Thom Chiovoloni
541369c38e
use NEG_INFINITY and NAN constants instead computing them
2020-10-06 12:30:19 -07:00
Thom Chiovoloni
866971adf5
Implement abs, to_bits, and from_bits for float vectors
2020-10-06 11:33:29 -07:00
Ashley Mannix
0fbf64bae8
Add CI for wasm targets using wasm-bindgen ( #20 )
2020-10-03 16:36:51 +10:00
Caleb Zulawski
e7f133ead0
Add licenses and update Cargo.toml
2020-10-01 23:42:10 -04:00
Caleb Zulawski
43dabd1aea
Implement core::ops
( #10 )
...
* Add vector-vector arithmetic ops
* Add operators and integer conversions for masks
* Add unary traits
* Implement Index and IndexMut
* Implement by-ref ops for masks
* Document intrinsics
* Implement format traits for masks
* Add floating point ops tests
* Add integer tests
* Add mask tests
2020-10-01 19:50:15 -07:00
Caleb Zulawski
cfda50a82a
Remove vectors under 64-bit width
2020-09-26 19:31:14 -04:00
Caleb Zulawski
88bfbb001e
Mark trait methods inline
2020-09-26 14:41:01 -04:00
Caleb Zulawski
b9bf9ef3c2
Remove remaining derived traits
2020-09-26 14:30:00 -04:00
Caleb Zulawski
d817b56f1d
Manually implement some traits, instead of derive
2020-09-26 14:12:30 -04:00
Caleb Zulawski
167c3c8100
Change doc attributes to comments
2020-09-25 23:23:02 -04:00
Caleb Zulawski
992768709f
Remove pointer vectors
2020-09-25 21:45:09 -04:00
Caleb Zulawski
2178409df5
Remove some obsolete macros
2020-09-25 00:52:32 -04:00
Caleb Zulawski
b7d1f3e797
Improve Debug implementation, add additional formatting traits
2020-09-25 00:44:48 -04:00
Caleb Zulawski
613f242088
Add pointer vectors and implement a few more traits
2020-09-24 21:15:31 -04:00
Caleb Zulawski
3df72fddc2
Add masks
2020-09-24 19:48:18 -04:00
Caleb Zulawski
872e8f62d6
Simplify transmutes
2020-09-23 10:42:12 -04:00
Caleb Zulawski
543bcd37e9
Combine vector definition modules by scalar type
2020-09-23 10:21:19 -04:00
Caleb Zulawski
c74eec7e25
Apply suggestions from code review
...
Co-authored-by: Lokathor <zefria@gmail.com>
2020-09-23 08:11:43 -04:00
Caleb Zulawski
0f837a9147
Add docs
2020-09-22 20:26:25 -04:00
Caleb Zulawski
011aafea16
Add initial type implementations
2020-09-22 19:41:42 -04:00