Marshall Lochbaum
db16b8fa6e
Fix dropped high bit in ⊣˝˘ due to signed rather than unsigned saturating pack
2024-11-06 14:52:18 -05:00
Marshall Lochbaum
67d3fe3f81
Missing SSSE3 requirement for some uninterleave implementations
2024-11-06 14:51:16 -05:00
Marshall Lochbaum
15df6afc7d
Implementation comments for transpose with short height/width
2024-11-05 22:04:23 -05:00
Marshall Lochbaum
e75b63831f
Clean up dispatching for the various transpose kernel methods
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
2d75c6c535
And manually vectorize uninterleave
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
32ad2e9953
Manually vectorized interleave function
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
980e4b2248
Short-height version of 16x16 i8 transpose kernel, using overlapped writes
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
abb96cb18a
Fixed-height transposes, more or less reverse of fixed-width
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
0ab2e485ca
Width-4 transpose with shuffles
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
8bc37098dc
Modular kernel transpose for odd*2 (so, just 6)
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
091f08c6cc
Extend modular permutation transpose to any element size
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
780bfdfa0b
Kernel transpose with overreading and skipped writes, for short rows
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
b6e418ed5b
Fix modular permutation example in comment
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
d7b508ff3b
Move select_cells_single (atom⊸⊏˘) to select.c and use for any singleton index
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
0bdc43cc0f
Even number handling for modular permutation ⊣˝˘
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
4c55eab740
Fast ⊣˝˘ for power-of-two widths, 4- and 8-byte elements
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
8d9d946ec5
Fast ⊣˝˘ with pack for power-of-two widths, 1- and 2-byte elements
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
aefd2a4abd
Fast 1-byte small odd width transpose with blends and modular permutation
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
5bdee886cc
Extend kernel transpose from AVX2 only to SSE2, NEON
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
6e4859e17f
Extend select_rows_byte to any architecture with (shuffle and) blend
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
4669418f1c
Extend modular permutation ⊣˝˘ to multi-byte element types
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
9997c52e4c
Initial 1-byte ⊣˝˘ with blends and modular permutation
2024-11-05 21:48:54 -05:00
Marshall Lochbaum
18f594e829
Update Singeli submodule
2024-11-05 21:48:25 -05:00
dzaima
0c6e32a24c
fix si_select_cells_bit_lt64 signature
2024-10-23 21:53:48 +03:00
dzaima
4c8b8519fa
Merge pull request #122 from mlochbaum/vec-select
...
Use Singeli's select includes
2024-10-23 21:51:22 +03:00
dzaima
bd6effe7ab
restore dropped comment
2024-10-23 21:37:56 +03:00
Marshall Lochbaum
7ac7297617
More simplifications to Singeli vector utilities
2024-10-21 21:44:21 -04:00
Marshall Lochbaum
8099945068
Use vec_select from Singeli select includes
2024-10-21 18:53:03 -04:00
Marshall Lochbaum
25724b6b3e
More NEON functionality moved to neon_intrin/select
2024-10-21 18:53:03 -04:00
Marshall Lochbaum
fa43ffd882
Alias vec_shuffle to shuf
2024-10-21 18:53:03 -04:00
Marshall Lochbaum
27af1c0558
Use Singeli select include for x86 blend, byteshift, zip
2024-10-21 18:53:03 -04:00
Marshall Lochbaum
6140290813
Use Singeli select includes for shuffling
2024-10-14 10:24:07 -04:00
dzaima
52f318e755
EACH_FILLS tests
2024-10-14 05:09:03 +03:00
dzaima
df1773712f
Merge pull request #121 from svmhdvn/gmake-fix
...
build: fix on systems with bmake as make impl
2024-10-14 05:07:45 +03:00
Siva Mahadevan
a18f547b44
build: fix on systems with bmake as make impl
...
For example, on FreeBSD, bmake is the default make implementation. Thus, to
build CBQN, we must use 'gmake' invocations. This patch fixes the hardcoded call
to 'make' in build/build.
2024-10-13 21:46:52 -04:00
dzaima
1e00aa71c9
atomEqualF & atomEEqual cleanup
2024-10-10 04:12:07 +03:00
dzaima
503bddced5
bring back atomEqualF fast path
2024-10-10 04:00:43 +03:00
dzaima
61e5ca2767
move function/modifier native ID into their respective structs
2024-10-10 03:46:47 +03:00
dzaima
4885ca1c62
fix rtwrap decompose
2024-10-10 03:46:47 +03:00
dzaima
82bf0d301c
more comparison tests
2024-10-10 03:46:47 +03:00
dzaima
5a6f3fd978
move comparison test section to beside total array comparison
2024-10-10 03:46:47 +03:00
dzaima
4e071cf170
disable |, ⌊, ⌈, <, > wrapping for RT_VERIFY
...
boring arith, and native versions have differences around NaNs
2024-10-10 03:46:47 +03:00
dzaima
6bd47b067e
split apart def_decompose
2024-10-10 02:38:17 +03:00
dzaima
c46182d070
more •Decompose tests
2024-10-10 02:38:17 +03:00
dzaima
b095811da5
remove dead TIi(t_funBI,visit) =
2024-10-10 02:38:17 +03:00
dzaima
3d4a31ae6f
access function/modifier runtime ID through macro
2024-10-10 02:38:17 +03:00
dzaima
d4b36b3017
access function/modifier native ID through macro
2024-10-10 02:38:17 +03:00
dzaima
ddb0e09d08
remove unused helper
2024-10-10 02:35:32 +03:00
dzaima
0f12b66fdb
move purity separation to the proper place
2024-10-10 02:35:32 +03:00
dzaima
398f541cec
make tests handle usz=64 differences
2024-10-10 01:33:17 +03:00