mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-09-29 19:24:25 +03:00
Convert compile-time code to not require SIMD
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_C_FLAGS}")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CXX_FLAGS}")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ARCH_CXX_FLAGS} ${EXTRA_CXX_FLAGS}")
|
||||
|
||||
set(gtest_SOURCES gtest/gtest-all.cc gtest/gtest.h)
|
||||
if(NOT XCODE)
|
||||
|
@@ -47,7 +47,7 @@ TEST(Shufti, BuildMask1) {
|
||||
|
||||
chars.set('a');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lomask, &himask);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lomask, (u8 *)&himask);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
u8 *lo = (u8 *)&lomask;
|
||||
@@ -75,7 +75,7 @@ TEST(Shufti, BuildMask2) {
|
||||
chars.set('a');
|
||||
chars.set('B');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lomask, &himask);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lomask, (u8 *)&himask);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
u8 *lo = (u8 *)&lomask;
|
||||
@@ -96,7 +96,7 @@ TEST(Shufti, BuildMask4) {
|
||||
chars.set('A');
|
||||
chars.set('b');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lomask, &himask);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lomask, (u8 *)&himask);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
u8 *lo = (u8 *)&lomask;
|
||||
@@ -113,7 +113,7 @@ TEST(Shufti, ExecNoMatch1) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -132,7 +132,7 @@ TEST(Shufti, ExecNoMatch2) {
|
||||
chars.set('a');
|
||||
chars.set('B');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -150,7 +150,7 @@ TEST(Shufti, ExecNoMatch3) {
|
||||
CharReach chars;
|
||||
chars.set('V'); /* V = 0x56, e = 0x65 */
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
char t1[] = "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
|
||||
@@ -168,7 +168,7 @@ TEST(Shufti, ExecMatch1) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -187,7 +187,7 @@ TEST(Shufti, ExecMatch2) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -207,7 +207,7 @@ TEST(Shufti, ExecMatch3) {
|
||||
chars.set('a');
|
||||
chars.set('B');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -229,7 +229,7 @@ TEST(Shufti, ExecMatch4) {
|
||||
chars.set('A');
|
||||
chars.set('c');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -263,7 +263,7 @@ TEST(Shufti, ExecMatch5) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -283,8 +283,8 @@ TEST(DoubleShufti, BuildMask1) {
|
||||
|
||||
lits.insert(make_pair('a', 'B'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1m, &hi1m,
|
||||
&lo2m, &hi2m);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1m, (u8 *)&hi1m,
|
||||
(u8 *)&lo2m, (u8 *)&hi2m);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
u8 *lo1 = (u8 *)&lo1m;
|
||||
@@ -326,8 +326,8 @@ TEST(DoubleShufti, BuildMask2) {
|
||||
lits.insert(make_pair('a','z'));
|
||||
lits.insert(make_pair('B','z'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1m, &hi1m,
|
||||
&lo2m, &hi2m);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1m, (u8 *)&hi1m,
|
||||
(u8 *)&lo2m, (u8 *)&hi2m);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
u8 *lo1 = (u8 *)&lo1m;
|
||||
@@ -354,8 +354,8 @@ TEST(DoubleShufti, BuildMask4) {
|
||||
lits.insert(make_pair('A','z'));
|
||||
lits.insert(make_pair('b','z'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1m, &hi1m,
|
||||
&lo2m, &hi2m);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1m, (u8 *)&hi1m,
|
||||
(u8 *)&lo2m, (u8 *)&hi2m);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
u8 *lo1 = (u8 *)&lo1m;
|
||||
@@ -383,8 +383,8 @@ TEST(DoubleShufti, BuildMask5) {
|
||||
CharReach bytes;
|
||||
bytes.set('X');
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(bytes, lits, &lo1m, &hi1m,
|
||||
&lo2m, &hi2m);
|
||||
bool ret = shuftiBuildDoubleMasks(bytes, lits, (u8 *)&lo1m, (u8 *)&hi1m,
|
||||
(u8 *)&lo2m, (u8 *)&hi2m);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
u8 *lo1 = (u8 *)&lo1m;
|
||||
@@ -421,8 +421,8 @@ TEST(DoubleShufti, BuildMask6) {
|
||||
lits.insert(make_pair('A','x'));
|
||||
lits.insert(make_pair('b','x'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1m, &hi1m,
|
||||
&lo2m, &hi2m);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1m, (u8 *)&hi1m,
|
||||
(u8 *)&lo2m, (u8 *)&hi2m);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
u8 *lo1 = (u8 *)&lo1m;
|
||||
@@ -473,8 +473,8 @@ TEST(DoubleShufti, BuildMask7) {
|
||||
lits.insert(make_pair('u','v'));
|
||||
lits.insert(make_pair('w','x'));
|
||||
|
||||
bool rv = shuftiBuildDoubleMasks(CharReach(), lits, &lo1m, &hi1m,
|
||||
&lo2m, &hi2m);
|
||||
bool rv = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1m, (u8 *)&hi1m,
|
||||
(u8 *)&lo2m, (u8 *)&hi2m);
|
||||
ASSERT_FALSE(rv);
|
||||
}
|
||||
|
||||
@@ -485,8 +485,8 @@ TEST(DoubleShufti, ExecNoMatch1) {
|
||||
|
||||
lits.insert(make_pair('a','b'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1,
|
||||
&lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -506,7 +506,8 @@ TEST(DoubleShufti, ExecNoMatch1b) {
|
||||
|
||||
lits.insert(make_pair('b','a'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -527,7 +528,8 @@ TEST(DoubleShufti, ExecNoMatch2) {
|
||||
lits.insert(make_pair('a','b'));
|
||||
lits.insert(make_pair('B','b'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -548,14 +550,15 @@ TEST(DoubleShufti, ExecNoMatch2b) {
|
||||
lits.insert(make_pair('b','a'));
|
||||
lits.insert(make_pair('b','B'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
|
||||
for (size_t i = 0; i < 16; i++) {
|
||||
const u8 *rv = shuftiDoubleExec(lo1, hi1, lo2, hi2,
|
||||
(u8 *)t1 + i, (u8 *)t1 + strlen(t1));
|
||||
const u8 *rv = shuftiDoubleExec(lo1, hi1, lo2, hi2, (u8 *)t1 + i,
|
||||
(u8 *)t1 + strlen(t1));
|
||||
|
||||
ASSERT_EQ((size_t)t1 + i + 15, (size_t)rv);
|
||||
}
|
||||
@@ -568,7 +571,8 @@ TEST(DoubleShufti, ExecNoMatch3) {
|
||||
|
||||
lits.insert(make_pair('V','e'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
char t1[] = "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
|
||||
@@ -588,7 +592,8 @@ TEST(DoubleShufti, ExecNoMatch3b) {
|
||||
|
||||
lits.insert(make_pair('e','V'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
char t1[] = "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
|
||||
@@ -608,7 +613,8 @@ TEST(DoubleShufti, ExecMatchShort1) {
|
||||
|
||||
lits.insert(make_pair('a','b'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -629,7 +635,8 @@ TEST(DoubleShufti, ExecMatch1) {
|
||||
|
||||
lits.insert(make_pair('a','b'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -650,7 +657,8 @@ TEST(DoubleShufti, ExecMatch2) {
|
||||
|
||||
lits.insert(make_pair('a','a'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -672,7 +680,8 @@ TEST(DoubleShufti, ExecMatch3) {
|
||||
lits.insert(make_pair('B','a'));
|
||||
lits.insert(make_pair('a','a'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -696,7 +705,8 @@ TEST(DoubleShufti, ExecMatch4) {
|
||||
lits.insert(make_pair('C','a'));
|
||||
lits.insert(make_pair('c','a'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -738,7 +748,8 @@ TEST(DoubleShufti, ExecMatch4b) {
|
||||
lits.insert(make_pair('a','C'));
|
||||
lits.insert(make_pair('a','c'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -777,7 +788,8 @@ TEST(DoubleShufti, ExecMatch5) {
|
||||
|
||||
lits.insert(make_pair('a','A'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(CharReach(), lits, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -801,7 +813,8 @@ TEST(DoubleShufti, ExecMatchMixed1) {
|
||||
// just one one-byte literal
|
||||
onebyte.set('a');
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(onebyte, twobyte, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(onebyte, twobyte, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -825,7 +838,8 @@ TEST(DoubleShufti, ExecMatchMixed2) {
|
||||
onebyte.set('a');
|
||||
twobyte.insert(make_pair('x', 'y'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(onebyte, twobyte, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(onebyte, twobyte, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -859,7 +873,8 @@ TEST(DoubleShufti, ExecMatchMixed3) {
|
||||
onebyte.set('a');
|
||||
twobyte.insert(make_pair('x', 'y'));
|
||||
|
||||
bool ret = shuftiBuildDoubleMasks(onebyte, twobyte, &lo1, &hi1, &lo2, &hi2);
|
||||
bool ret = shuftiBuildDoubleMasks(onebyte, twobyte, (u8 *)&lo1, (u8 *)&hi1,
|
||||
(u8 *)&lo2, (u8 *)&hi2);
|
||||
ASSERT_TRUE(ret);
|
||||
|
||||
const int len = 420;
|
||||
@@ -892,7 +907,7 @@ TEST(ReverseShufti, ExecNoMatch1) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -911,7 +926,7 @@ TEST(ReverseShufti, ExecNoMatch2) {
|
||||
chars.set('a');
|
||||
chars.set('B');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -929,7 +944,7 @@ TEST(ReverseShufti, ExecNoMatch3) {
|
||||
CharReach chars;
|
||||
chars.set('V'); /* V = 0x56, e = 0x65 */
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
char t1[] = "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
|
||||
@@ -947,7 +962,7 @@ TEST(ReverseShufti, ExecMatch1) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -968,7 +983,7 @@ TEST(ReverseShufti, ExecMatch2) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -990,7 +1005,7 @@ TEST(ReverseShufti, ExecMatch3) {
|
||||
chars.set('a');
|
||||
chars.set('B');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -1024,7 +1039,7 @@ TEST(ReverseShufti, ExecMatch4) {
|
||||
chars.set('A');
|
||||
chars.set('c');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
@@ -1059,7 +1074,7 @@ TEST(ReverseShufti, ExecMatch5) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -1079,7 +1094,7 @@ TEST(ReverseShufti, ExecMatch6) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
int ret = shuftiBuildMasks(chars, &lo, &hi);
|
||||
int ret = shuftiBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
ASSERT_NE(-1, ret);
|
||||
|
||||
const size_t len = 256;
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2015, Intel Corporation
|
||||
* Copyright (c) 2015-2016, Intel Corporation
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
@@ -45,9 +45,9 @@ TEST(Truffle, CompileDot) {
|
||||
|
||||
chars.setall();
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
CharReach out = truffle2cr(mask1, mask2);
|
||||
CharReach out = truffle2cr((u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
ASSERT_EQ(out, chars);
|
||||
|
||||
@@ -64,8 +64,8 @@ TEST(Truffle, CompileChars) {
|
||||
mask2 = zeroes128();
|
||||
chars.clear();
|
||||
chars.set((u8)c);
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
CharReach out = truffle2cr(mask1, mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
CharReach out = truffle2cr((u8 *)&mask1, (u8 *)&mask2);
|
||||
ASSERT_EQ(out, chars);
|
||||
}
|
||||
|
||||
@@ -74,8 +74,8 @@ TEST(Truffle, CompileChars) {
|
||||
mask1 = zeroes128();
|
||||
mask2 = zeroes128();
|
||||
chars.set((u8)c);
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
CharReach out = truffle2cr(mask1, mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
CharReach out = truffle2cr((u8 *)&mask1, (u8 *)&mask2);
|
||||
ASSERT_EQ(out, chars);
|
||||
}
|
||||
|
||||
@@ -84,8 +84,8 @@ TEST(Truffle, CompileChars) {
|
||||
mask1 = zeroes128();
|
||||
mask2 = zeroes128();
|
||||
chars.clear((u8)c);
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
CharReach out = truffle2cr(mask1, mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
CharReach out = truffle2cr((u8 *)&mask1, (u8 *)&mask2);
|
||||
ASSERT_EQ(out, chars);
|
||||
}
|
||||
|
||||
@@ -100,7 +100,7 @@ TEST(Truffle, ExecNoMatch1) {
|
||||
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb\xff";
|
||||
|
||||
@@ -119,7 +119,7 @@ TEST(Truffle, ExecNoMatch2) {
|
||||
chars.set('a');
|
||||
chars.set('B');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
|
||||
@@ -137,7 +137,7 @@ TEST(Truffle, ExecNoMatch3) {
|
||||
|
||||
chars.set('V'); /* V = 0x56, e = 0x65 */
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
char t1[] = "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
|
||||
|
||||
@@ -154,7 +154,7 @@ TEST(Truffle, ExecMiniMatch0) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &lo, &hi);
|
||||
truffleBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
|
||||
char t1[] = "a";
|
||||
|
||||
@@ -169,7 +169,7 @@ TEST(Truffle, ExecMiniMatch1) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &lo, &hi);
|
||||
truffleBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
|
||||
char t1[] = "bbbbbbbabbb";
|
||||
|
||||
@@ -184,7 +184,7 @@ TEST(Truffle, ExecMiniMatch2) {
|
||||
CharReach chars;
|
||||
chars.set(0);
|
||||
|
||||
truffleBuildMasks(chars, &lo, &hi);
|
||||
truffleBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
|
||||
char t1[] = "bbbbbbb\0bbb";
|
||||
|
||||
@@ -199,7 +199,7 @@ TEST(Truffle, ExecMiniMatch3) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &lo, &hi);
|
||||
truffleBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
|
||||
char t1[] = "\0\0\0\0\0\0\0a\0\0\0";
|
||||
|
||||
@@ -214,7 +214,7 @@ TEST(Truffle, ExecMatchBig) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &lo, &hi);
|
||||
truffleBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
|
||||
std::array<u8, 400> t1;
|
||||
t1.fill('b');
|
||||
@@ -234,7 +234,7 @@ TEST(Truffle, ExecMatch1) {
|
||||
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbabbbbbbbbbbbb";
|
||||
@@ -253,7 +253,7 @@ TEST(Truffle, ExecMatch2) {
|
||||
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbabbbbbbbbbbbb";
|
||||
@@ -273,7 +273,7 @@ TEST(Truffle, ExecMatch3) {
|
||||
chars.set('a');
|
||||
chars.set('B');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbBaaaaaaaaaaaaaaabbbbbbbbbbbbbbbabbbbbbbbbbbb";
|
||||
@@ -295,7 +295,7 @@ TEST(Truffle, ExecMatch4) {
|
||||
chars.set('A');
|
||||
chars.set('c');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbAaaaaaaaaaaaaaaabbbbbbbbbbbbbbbabbbbbbbbbbbb";
|
||||
@@ -329,7 +329,7 @@ TEST(Truffle, ExecMatch5) {
|
||||
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
|
||||
@@ -349,7 +349,7 @@ TEST(Truffle, ExecMatch6) {
|
||||
// [0-Z] - includes some graph chars
|
||||
chars.setRange('0', 'Z');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
std::array<u8, 128> t1;
|
||||
t1.fill('*'); // it's full of stars!
|
||||
@@ -370,7 +370,7 @@ TEST(Truffle, ExecMatch7) {
|
||||
// hi bits
|
||||
chars.setRange(127, 255);
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
std::array<u8, 128> t1;
|
||||
t1.fill('*'); // it's full of stars!
|
||||
@@ -389,7 +389,7 @@ TEST(ReverseTruffle, ExecNoMatch1) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
size_t len = strlen(t1);
|
||||
@@ -408,7 +408,7 @@ TEST(ReverseTruffle, ExecNoMatch2) {
|
||||
chars.set('a');
|
||||
chars.set('B');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
size_t len = strlen(t1);
|
||||
@@ -425,7 +425,7 @@ TEST(ReverseTruffle, ExecNoMatch3) {
|
||||
CharReach chars;
|
||||
chars.set('V'); /* V = 0x56, e = 0x65 */
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
char t1[] = "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
|
||||
size_t len = strlen(t1);
|
||||
@@ -442,7 +442,7 @@ TEST(ReverseTruffle, ExecMiniMatch0) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &lo, &hi);
|
||||
truffleBuildMasks(chars, (u8 *)&lo, (u8 *)&hi);
|
||||
|
||||
char t1[] = "a";
|
||||
|
||||
@@ -457,7 +457,7 @@ TEST(ReverseTruffle, ExecMiniMatch1) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
char t1[] = "bbbbbbbabbbb";
|
||||
@@ -475,7 +475,7 @@ TEST(ReverseTruffle, ExecMiniMatch2) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
char t1[] = "babbbbbabbbb";
|
||||
@@ -494,7 +494,7 @@ TEST(ReverseTruffle, ExecMatch1) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
char t1[] = "bbbbbbabbbbbbbbbbabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -514,7 +514,7 @@ TEST(ReverseTruffle, ExecMatch2) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
char t1[] = "bbbbabbbbbbbbbbbbaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -535,7 +535,7 @@ TEST(ReverseTruffle, ExecMatch3) {
|
||||
chars.set('a');
|
||||
chars.set('B');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaBbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -568,7 +568,7 @@ TEST(ReverseTruffle, ExecMatch4) {
|
||||
chars.set('A');
|
||||
chars.set('c');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
/* 0123456789012345678901234567890 */
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaAbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
@@ -602,7 +602,7 @@ TEST(ReverseTruffle, ExecMatch5) {
|
||||
CharReach chars;
|
||||
chars.set('a');
|
||||
|
||||
truffleBuildMasks(chars, &mask1, &mask2);
|
||||
truffleBuildMasks(chars, (u8 *)&mask1, (u8 *)&mask2);
|
||||
|
||||
char t1[] = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
|
||||
size_t len = strlen(t1);
|
||||
|
Reference in New Issue
Block a user