1635 Commits

Author SHA1 Message Date
apostolos
89b123d003 Equal mask test fixed with random numbers 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
apostolos
32350cf9b1 SuperVector unit tests for AVX2 and AVX512 added 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
c44fa634d1 disable OPTIMISE by default 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
d04b899c29 fix truffle SIMD for S>16 as well 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
b42b187712 add AVX2 specializations 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
78e098661f tiny change in vector initialization 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
d453a612dc fix last failing Shufti/Truffle tests 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
0ed10082b1 fix rtruffle, was failing Lbr and a few ReverseTruffle tests 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
845e533b66 move firstMatch, lastMatch to own header in util 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
41ff0962c4 minor fixes 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
Konstantinos Margaritis
9685095379 handle GNUCC_ARCH on non-x86 properly 2021-10-12 11:51:34 +03:00
apostolos
1ce5e17ce9 Truffle simd vectorized 2021-10-12 11:51:34 +03:00
George Wort
d1009e8830 Fix error in initial noodle double final call.
Change-Id: Ie044988f183b47e0b2f1eed3b4bd23de75c3117d
2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
5297ed5038 syntax fixes 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
8b09ecfe48 nits 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
cceb599fc9 fix typo 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
e49fa3a97a fix unit tests, and resp. ARM SuperVector methods based on those unit tests, add print functions for SuperVector 2021-10-12 11:51:34 +03:00
apostolos
1e434a9b3d Supervector Unit Tests 2021-10-12 11:51:34 +03:00
George Wort
d6df8116a5 Add SVE2 support for noodle
Change-Id: Iacb7d1f164bdd0ba50e2e13d26fe548cf9b45a6a
2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
acca824dea add missing ARM SuperVector methods, some tests still fail, WIP 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
5d9d958e74 disable SuperVector unit tests for now, until ARM support is included 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
6fbd18183a rename arm impl.hpp to impl.cpp, add operator|() to SuperVector class 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
23b075cbd4 refactor shufti algorithm to use SuperVector class, WIP 2021-10-12 11:51:34 +03:00
George Wort
3ee7b75ee0 Add SVE, SVE2, and SVE2_BITPERM as targets
Change-Id: I5231e2eb0a31708a16c853dc83ea48db32e0b0a5
2021-10-12 11:51:34 +03:00
George Wort
b6c3ab723b Enable cross compilation to aarch64
Change-Id: Iafc8ac60926f5286990ce63a4ff4f8b6a7c46bef
2021-10-12 11:51:34 +03:00
apostolos
feb2d3ccf7 SuperVector unit tests 2021-10-12 11:51:34 +03:00
apostolos
096fb55faa unit tests for supervector 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
6526df81e4 add more functions, move defines here, enable inlining of template specializations only when running optimized code 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
d8b5eb5d17 fix compilation on C++ 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
273b9683ac simplify function 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
e215157a21 move definitions elsewhere 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
05c7c8e576 move SuperVector versions of noodleEngine scan functions to _simd.hpp file 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
6e63aafbea add arm support for the new SuperVector class 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
c6406bebde simplify scanSingleMain() and scanDoubleMain() 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
f77837130d delete separate implementations 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
e6c1fa04ce add C++ template SIMD library (WIP) 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
ede2b18564 add generic SIMD implementation 2021-10-12 11:51:34 +03:00