dzaima
|
6d79ce9fb1
|
use arch-independent names for things suppported on both x86-64 & NEON
|
2022-12-24 15:26:05 +02:00 |
|
dzaima
|
d38316e670
|
BQN-based build system
|
2022-12-23 23:09:55 +02:00 |
|
dzaima
|
d05621f8f4
|
generic vector width calculation for NEON-supported files
|
2022-12-20 00:02:46 +02:00 |
|
dzaima
|
b91e72567d
|
update Singeli submodule, conditional NEON includes
|
2022-12-19 23:31:44 +02:00 |
|
dzaima
|
30a6de0a31
|
add unrolling to aarch64 cmp.singeli
|
2022-12-18 22:45:42 +02:00 |
|
dzaima
|
f9c919d5ce
|
getmask → homMask/topMask
|
2022-12-18 22:27:42 +02:00 |
|
dzaima
|
a07b94b889
|
more general equal.singeli, remove trailing semicolons
|
2022-12-18 21:55:20 +02:00 |
|
dzaima
|
2a32f52f8d
|
blend renaming
|
2022-12-18 02:49:42 +02:00 |
|
dzaima
|
09b3279958
|
unified Singeli including mechanism
|
2022-12-18 01:54:07 +02:00 |
|
dzaima
|
9768526ddc
|
move last bit of equal.singeli to loadBatch
|
2022-12-18 01:53:56 +02:00 |
|
dzaima
|
40f36fa366
|
Singeli-generated table for bits.singeli
|
2022-12-17 17:51:56 +02:00 |
|
dzaima
|
2c73199ed4
|
use Singeli-generated function tables for comparison
|
2022-12-16 19:04:58 +02:00 |
|
dzaima
|
f49dd5e8cf
|
move cmp.singeli NaN check outside for non-x86_64
|
2022-12-16 17:39:51 +02:00 |
|
dzaima
|
6e3cb9a425
|
andIsZero→andAllZero; NEON andnz, blendF, sel, bitops.singeli
|
2022-12-16 00:44:32 +02:00 |
|
dzaima
|
cbd891b768
|
NEON widen, narrow, undefPromote; make undefPromote more restrictive
|
2022-12-15 23:19:00 +02:00 |
|
dzaima
|
6fac426f90
|
add v_dbl & v_half, NEON half{x,n}
|
2022-12-15 21:57:34 +02:00 |
|
dzaima
|
791e7d122f
|
ucvt→narrow
|
2022-12-15 21:44:48 +02:00 |
|
dzaima
|
2b7291dbfb
|
cvt{E,T,v} → widen{T,to_el{E,v}}
|
2022-12-15 20:31:00 +02:00 |
|
dzaima
|
9a9fade18a
|
NEON loadLow, storeLow, andIsZero, maskstore, pack
|
2022-12-15 16:14:00 +02:00 |
|
dzaima
|
6f2d6bfb0b
|
remove offset argument from maskstore; don't use w256 in mask.singeli
|
2022-12-15 16:13:45 +02:00 |
|
dzaima
|
77edc734e8
|
move storeLow & loadLow to sse3 & avx; fix NEON __not
|
2022-12-15 00:39:44 +02:00 |
|
dzaima
|
9fea5f1e13
|
neg(Any|All) → top(Any|All), msk(Any|All) → hom(Any|All)
|
2022-12-13 21:46:50 +02:00 |
|
dzaima
|
336da996b3
|
any/all vector check renaming
|
2022-12-13 02:03:17 +02:00 |
|
dzaima
|
7e13bf7f45
|
more neon.singeli
|
2022-12-12 02:59:11 +02:00 |
|
dzaima
|
444268f051
|
width{eltype{T}} → elwidth{T}
|
2022-12-12 00:07:50 +02:00 |
|
dzaima
|
2a1611ac81
|
start of neon.singeli
|
2022-12-11 23:59:07 +02:00 |
|
dzaima
|
3a3f213a92
|
assign broadcast{T,v} to T**v
|
2022-12-07 23:53:19 +02:00 |
|
dzaima
|
ce45d487a3
|
use mutating assignment
|
2022-12-07 23:24:26 +02:00 |
|
dzaima
|
07d4567a52
|
use spread arguments
|
2022-12-07 23:10:17 +02:00 |
|
dzaima
|
bf71fdb4f8
|
singeli now formats generators itself
or, well, has for a long time
|
2022-12-07 22:41:17 +02:00 |
|
dzaima
|
6ca5050f4d
|
reduce gcc warnings
|
2022-12-03 23:56:03 +02:00 |
|
Marshall Lochbaum
|
534c92f38a
|
Select from <=128 booleans with shuffles
|
2022-11-29 22:14:57 -05:00 |
|
Marshall Lochbaum
|
fdfeb67e8f
|
2-register permutevar8x32
|
2022-11-29 20:27:45 -05:00 |
|
Marshall Lochbaum
|
41f464795f
|
Selection with permutevar8x32
|
2022-11-29 18:45:22 -05:00 |
|
Marshall Lochbaum
|
dc6e49b289
|
Shuffle selection using >1 data register
|
2022-11-28 21:51:36 -05:00 |
|
Marshall Lochbaum
|
b651ca73d3
|
Move base{} utility to base.singeli
|
2022-11-28 13:55:19 -05:00 |
|
Marshall Lochbaum
|
43fba7cd78
|
Extend shuffle selection to >1 byte data
|
2022-11-28 13:55:19 -05:00 |
|
Marshall Lochbaum
|
6639c17b81
|
1-byte select with <=16 elements using shuffle
|
2022-11-27 21:03:58 -05:00 |
|
Marshall Lochbaum
|
e09d555eba
|
Refactoring and renaming in select.singeli
|
2022-11-27 09:18:21 -05:00 |
|
Marshall Lochbaum
|
7cb8cf5772
|
Enable selection with AVX2 gather for i8 to i32 indices and 1- to 8-byte values
|
2022-11-27 09:18:21 -05:00 |
|
dzaima
|
c0e06833c0
|
move B squeeze non-integer case out of twice-generated generator
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
b0fcc017ce
|
clean up squeeze.singeli
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
0f3f91105e
|
use anynePositive for squeeze.singeli
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
15f6dd5d48
|
simplify 16-bit anynePositive
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
5f85305f43
|
GPR mask testing
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
efd79881cb
|
use single mask array for all type widths
|
2022-11-27 15:45:33 +02:00 |
|
dzaima
|
cf5ce07f51
|
simplify singeli xor/and/or definitions
|
2022-11-24 00:21:19 +02:00 |
|
Marshall Lochbaum
|
7715cbc158
|
Add •math.Sum with Singeli f64 implementation
|
2022-11-23 16:51:30 -05:00 |
|
Marshall Lochbaum
|
52608ba6ce
|
Singeli min/max-fold
|
2022-11-21 11:47:50 -05:00 |
|
dzaima
|
24195780df
|
reorder headers to allow OpenBSD hack to function
|
2022-11-20 18:22:51 +02:00 |
|