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).

This commit is contained in:
Konstantinos Margaritis
2021-10-03 10:43:13 +00:00
parent e7161fdfec
commit 67e0674df8
3 changed files with 329 additions and 184 deletions

View File

@@ -284,7 +284,7 @@ TEST(SuperVectorUtilsTest,pshufb128c) {
}
auto SP1 = SuperVector<16>::loadu(vec);
auto SP2 = SuperVector<16>::loadu(vec2);
auto SResult = SP1.pshufb(SP2);
auto SResult = SP1.template pshufb<true>(SP2);
for (int i=0; i<16; i++) {
ASSERT_EQ(vec[vec2[i]],SResult.u.u8[i]);
}