Fix compile problems with older VS releases
Change-Id: Id0653f8d3a643cbeb187b38d5067f5e36340f163
diff --git a/test/simd_cmp_impl.h b/test/simd_cmp_impl.h
index 5423a48..44a32a8 100644
--- a/test/simd_cmp_impl.h
+++ b/test/simd_cmp_impl.h
@@ -335,10 +335,10 @@
std::string Print(const uint8_t *a, int size) {
std::string text = "0x";
for (int i = 0; i < size; i++) {
- char buf[3];
- snprintf(buf, sizeof(buf), "%02x",
- a[!CONFIG_BIG_ENDIAN ? size - 1 - i : i]);
- text += buf;
+ const uint8_t c = a[!CONFIG_BIG_ENDIAN ? size - 1 - i : i];
+ // Same as snprintf(..., ..., "%02x", c)
+ text += (c >> 4) + '0' + ((c >> 4) > 9) * ('a' - '0' - 10);
+ text += (c & 15) + '0' + ((c & 15) > 9) * ('a' - '0' - 10);
}
return text;
@@ -448,9 +448,9 @@
fptr ref_simd;
fptr simd;
int error = 0;
- DECLARE_ALIGNED(sizeof(CArg), uint16_t, s[sizeof(CArg) / sizeof(uint16_t)]);
- DECLARE_ALIGNED(sizeof(CRet), uint8_t, d[sizeof(CRet)]);
- DECLARE_ALIGNED(sizeof(CRet), uint8_t, ref_d[sizeof(CRet)]);
+ DECLARE_ALIGNED(32, uint16_t, s[sizeof(CArg) / sizeof(uint16_t)]);
+ DECLARE_ALIGNED(32, uint8_t, d[sizeof(CRet)]);
+ DECLARE_ALIGNED(32, uint8_t, ref_d[sizeof(CRet)]);
memset(ref_d, 0, sizeof(ref_d));
memset(d, 0, sizeof(d));
@@ -510,12 +510,10 @@
fptr ref_simd;
fptr simd;
int error = 0;
- DECLARE_ALIGNED(sizeof(CArg1), uint16_t,
- s1[sizeof(CArg1) / sizeof(uint16_t)]);
- DECLARE_ALIGNED(sizeof(CArg2), uint16_t,
- s2[sizeof(CArg2) / sizeof(uint16_t)]);
- DECLARE_ALIGNED(sizeof(CRet), uint8_t, d[sizeof(CRet)]);
- DECLARE_ALIGNED(sizeof(CRet), uint8_t, ref_d[sizeof(CRet)]);
+ DECLARE_ALIGNED(32, uint16_t, s1[sizeof(CArg1) / sizeof(uint16_t)]);
+ DECLARE_ALIGNED(32, uint16_t, s2[sizeof(CArg2) / sizeof(uint16_t)]);
+ DECLARE_ALIGNED(32, uint8_t, d[sizeof(CRet)]);
+ DECLARE_ALIGNED(32, uint8_t, ref_d[sizeof(CRet)]);
memset(ref_d, 0, sizeof(ref_d));
memset(d, 0, sizeof(d));