26 Commits

Author SHA1 Message Date
Konstantinos Margaritis
c3baf3d296 fix multiple/undefined symbols when using fat runtimes 2021-10-12 11:51:35 +03:00
Konstantinos Margaritis
577e03e0c7 rearrange method declarations 2021-10-12 11:51:35 +03:00
Konstantinos Margaritis
8b7ba89cb5 add x86 vsh* implementations 2021-10-12 11:51:35 +03:00
Konstantinos Margaritis
67e0674df8 Changes/Additions to SuperVector class * added ==,!=,>=,>,<=,< operators * reworked shift operators to be more uniform and orthogonal, like Arm ISA * Added Unroller class to allow handling of multiple cases but avoid code duplication * pshufb method can now emulate Intel or not (avoids one instruction). 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
e7161fdfec initial SSE/AVX2 implementation 2021-10-12 11:51:34 +03:00
apostolos
67fa6d2738 alignr methods for avx2 and avx512 added 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
603bc14cdd fix failing corner case, add pshufb_maskz() 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
f2d9784979 fix loadu_maskz, add {l,r}shift128_var(), tab fixes 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
f8ce0bb922 minor fixes, add 2 constructors from half size vectors 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
ebb1b84ae3 provide an {l,r}shift128_var() to fix immediate value build failure in loadu_maskz 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
825460856f fix arm loadu_maskz() 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
86accf41a3 add arm rshift128/rshift128 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
6c51f7f591 add {l,r}shift128()+tests, rename printv_u64() to print64() 2021-10-12 11:51:34 +03:00
apostolos
6f88ecac44 Supervector test fixes 2021-10-12 11:51:34 +03:00
apostolos
ae6bc52076 SuperVector AVX512 implementations 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
7ae636dfe9 really fix lshift for avx2 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
dede600637 lots of fixes to AVX2 implementation 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
c45e72775f convert print helper functions to class methods 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
ec3f108d71 fix arm SuperVector implementation 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
f425951b49 fix x86 debug alignr 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
6d8f3b9ff8 compilation fixes for debug mode 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
d7b247a949 fix arm implementation of alignr() 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
28b2949396 harmonise syntax of x86 SuperVector impl.cpp like arm, fix alignr, define printv_* functions when on debug mode only 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
9de3065e68 style fixes 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
e0a45a354d removed obsolete file 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
2753dbb3b0 rename supervector class header, use dup_*() functions names instead of set1_*(), minor fixes 2021-10-12 11:51:34 +03:00