0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-26 00:32:35 +01:00
Commit graph

77 commits

Author SHA1 Message Date
Jason Volk
05a3e505cc ircd::simd: Add horizontal adder template. 2021-03-17 18:55:56 -07:00
Jason Volk
c7fa7a07ee ircd::simd: Fix attribute ns. 2021-03-16 12:58:22 -07:00
Jason Volk
17f72c96c8 ircd::simd: Improve streaming tokens template. 2021-03-07 23:35:58 -08:00
Jason Volk
9058e203c0 ircd::simd: Add convenience debug print template direct to stdout. 2021-03-05 15:34:54 -08:00
Jason Volk
44683b01f3 ircd::simd: Add all-bit mask constexpr undef for floating point lanes. 2021-03-05 13:02:12 -08:00
Jason Volk
29b47e8890 ircd::simd: Add constexprs for some lane traits. 2021-03-05 13:02:12 -08:00
Jason Volk
cd2c6630bc ircd::simd: Additional distinguishing type trait constexpr. 2021-03-05 13:02:12 -08:00
Jason Volk
2be7c0ff6f ircd::simd: Improve lane size traits basis; fix conflicting templates. 2021-02-27 13:01:02 -08:00
Jason Volk
9d1316b412 ircd::simd: Use _Float16 / __fp16 for half-precision when available. 2021-02-26 14:55:15 -08:00
Jason Volk
394858ff91 ircd::simd: Start character string tools suite; add strlen(); add strcat(). 2021-02-26 14:52:33 -08:00
Jason Volk
ee904d9b33 ircd::simd: Add preliminary character print utils to suite. 2021-02-25 14:38:52 -08:00
Jason Volk
8509354ae6 ircd::simd: Add signed character types. 2021-02-25 14:38:52 -08:00
Jason Volk
75865b86ad ircd::simd: Add template for streaming tokenization. 2021-02-25 14:38:52 -08:00
Jason Volk
9523e3ca0a ircd::simd: Fix AVX512 devectorization on clang w/ uninitialized across loops. 2020-12-23 22:28:41 -08:00
Jason Volk
00ed83e380 ircd::simd: Add missing support::sse; add alignment constexpr. 2020-11-13 00:52:31 -08:00
Jason Volk
3b75b06bf1 ircd:Ⓜ️:room: Fix stale comment. [ci skip]
ircd::simd: Fix erroneous comment. [ci skip]
2020-10-29 03:00:48 -07:00
Jason Volk
cda10cc799 ircd::simd::support: Fix formatting; fix avx512f macro name; add vbmi/vbmi2. 2020-10-20 22:19:34 -07:00
Jason Volk
913ec123e3 ircd::simd: Rename lateral to reduce. 2020-10-11 10:10:50 -07:00
Jason Volk
c80dc79e36 ircd::simd: Minor fix indentation. 2020-10-11 10:10:50 -07:00
Jason Volk
019010336b ircd::simd: Add constexpr feature support suite. 2020-10-10 05:54:15 -07:00
Jason Volk
5e21435e1a ircd::simd: Add closure to stream interface; include in stack. 2020-10-10 02:47:53 -07:00
Jason Volk
d4de92c61f ircd::simd: Add various ircd::buffer convenience overloads to interface. 2020-10-10 01:16:39 -07:00
Jason Volk
c49e546be5 ircd::simd: Categorical interface renaming for stream related. 2020-10-10 00:43:59 -07:00
Jason Volk
de0650d3f7 ircd: Reorg simd.h / buffer.h interface dependency relationship. 2020-10-10 00:43:59 -07:00
Jason Volk
b63d88d195 ircd::simd: Relax assertion on unused lane. 2020-10-09 09:06:17 -07:00
Jason Volk
5b63366e5d ircd::simd: Add pointer cast template w/ alignment assertion. 2020-10-09 09:06:17 -07:00
Jason Volk
a88934f4e7 ircd::simd: Add ostream suite to interface. 2020-10-09 09:06:17 -07:00
Jason Volk
20f9301158 ircd::simd: Split and improve stream template util naming. 2020-10-09 03:50:24 -07:00
Jason Volk
28887b0dc0 ircd::simd: Additional block-aligned fixed-stride half-duplex stream template. 2020-10-07 01:27:49 -07:00
Jason Volk
638efbc0e9 ircd::simd: Make stream template into enable_if complex w/ closure deductions. 2020-10-07 01:07:51 -07:00
Jason Volk
ef715a637d ircd::simd: Add accumulate template. 2020-10-06 19:15:42 -07:00
Jason Volk
7f63dc07ef ircd::simd: Simplify stream template; deduce unaligned type. 2020-10-06 19:15:42 -07:00
Jason Volk
112151249b ircd::simd: Use template as basis for unaligned wrapper; simplify suite.
ircd::simd: Rename unaligned header.
2020-10-06 19:15:40 -07:00
Jason Volk
9cee52fff0 ircd::simd: Add all() template w/ efficient word specializations. 2020-09-28 00:27:30 -07:00
Jason Volk
38a52f76d5 ircd::simd: Add any() template w/ efficient word specializations. 2020-09-28 00:27:30 -07:00
Jason Volk
42fd88d169 ircd::simd: Add broad_cast template without required deduction argument. 2020-09-27 14:57:07 -07:00
Jason Volk
4168f2899f ircd::simd: Add scatter template. 2020-09-20 06:41:38 -07:00
Jason Volk
dc14f2f803 ircd::simd: Reorg existing mask related into header. 2020-09-20 06:41:38 -07:00
Jason Volk
972fbcc97d ircd::simd: Add rotate left/right template interfaces. 2020-09-20 06:41:38 -07:00
Jason Volk
13c2df9992 ircd::simd: Add missing non-intrinsic alternative templates at 128 bit shift.
ircd::simd: Split shift left and right suites into headers.
2020-09-20 06:41:38 -07:00
Jason Volk
818241db86 ircd::simd: Add vpgather achieving template. 2020-09-20 06:41:38 -07:00
Jason Volk
4a59ea5b4a ircd::simd: Add template typedef for lane type. 2020-09-20 05:15:50 -07:00
Jason Volk
13d267cefb ircd::simd: Ensure return counts are bound to max values. 2020-09-13 08:42:34 -07:00
Jason Volk
8ecb2d9653 ircd::simd: Fix comment. [ci skip] 2020-09-10 23:50:47 -07:00
Jason Volk
84564aee5f ircd::simd: Add a streaming transform boilerplate template for the common pattern.
ircd::simd: Add a streaming consumer boilerplate template for the common pattern.

ircd::json: Simplify w/ stream templates; update counter lane convention.
2020-09-09 04:47:27 -07:00
Jason Volk
c9156b0f99 ircd::simd: Add typedef for corresponding type in the unaligned wrapper. 2020-09-09 02:12:37 -07:00
Jason Volk
b738d95330 ircd::simd: Remove precocious 512-shift intrinsic templates. 2020-09-08 22:27:06 -07:00
Jason Volk
97248b2f44 ircd::simd: Refactor typedefs to not require external header. 2020-09-06 00:11:17 -07:00
Jason Volk
82308ee4b3 ircd::simd: Consolidate sum_ templates into lateral template template. 2020-09-05 14:34:48 -07:00
Jason Volk
0d586d6d0c ircd::simd: Add lower()/upper() templates for splitting. 2020-09-04 00:16:18 -07:00