From: Konstantinos Margaritis Date: Thu, 5 Nov 2020 17:21:16 +0000 (+0200) Subject: add some debug and minor optimizations in unit test X-Git-Tag: v5.3.1^2^2~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=62fed20ad051848c39d735900b978ffe261a51d3;p=thirdparty%2Fvectorscan.git add some debug and minor optimizations in unit test --- diff --git a/unit/internal/state_compress.cpp b/unit/internal/state_compress.cpp index 56be8aae..00423702 100644 --- a/unit/internal/state_compress.cpp +++ b/unit/internal/state_compress.cpp @@ -98,8 +98,8 @@ TEST(state_compress, m128_1) { char buf[sizeof(m128)] = { 0 }; for (u32 i = 0; i < 16; i++) { - char mask_raw[16] = { 0 }; - char val_raw[16] = { 0 }; + char ALIGN_ATTR(16) mask_raw[16] = { 0 }; + char ALIGN_ATTR(16) val_raw[16] = { 0 }; memset(val_raw, (i << 4) + 3, 16); @@ -109,17 +109,32 @@ TEST(state_compress, m128_1) { mask_raw[15 - i] = 0xff; val_raw[15 - i] = i; - m128 val; - m128 mask; - - memcpy(&val, val_raw, sizeof(val)); - memcpy(&mask, mask_raw, sizeof(mask)); + m128 val = load128(val_raw); + m128 mask = load128(mask_raw); storecompressed128(&buf, &val, &mask, 0); m128 val_out; loadcompressed128(&val_out, &buf, &mask, 0); + int8_t ALIGN_ATTR(16) data[16]; + store128(data, val); + printf("val: "); + for (int j=0; j < 16; j++) printf("%02x ", data[j]); + printf("\n"); + store128(data, mask); + printf("mask: "); + for (int j=0; j < 16; j++) printf("%02x ", data[j]); + printf("\n"); + store128(data, and128(val, mask)); + printf("and128(val, mask): "); + for (int j=0; j < 16; j++) printf("%02x ", data[j]); + printf("\n"); + store128(data, val_out); + printf("val_out: "); + for (int j=0; j < 16; j++) printf("%02x ", data[j]); + printf("\n"); + EXPECT_TRUE(!diff128(and128(val, mask), val_out)); mask_raw[i] = 0x0f;