From 7da0c4fa4644cbe77368153259aa54b69e843fe9 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sun, 18 Sep 2016 19:00:39 +0200 Subject: [PATCH] Avoid these macros --- libretro-common/encodings/encoding_crc32.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/libretro-common/encodings/encoding_crc32.c b/libretro-common/encodings/encoding_crc32.c index 7d1310f398..74cde91c38 100644 --- a/libretro-common/encodings/encoding_crc32.c +++ b/libretro-common/encodings/encoding_crc32.c @@ -78,29 +78,22 @@ static const uint32_t crc32_table[256] = { 0x2d02ef8dL }; -#undef DO1_CRC32 -#undef DO2_CRC32 -#undef DO4_CRC32 -#undef DO8_CRC32 -#define DO1_CRC32(buf) crc = crc32_table[(crc ^ (*buf++)) & 0xff] ^ (crc >> 8); -#define DO2_CRC32(buf) DO1_CRC32(buf); DO1_CRC32(buf); -#define DO4_CRC32(buf) DO2_CRC32(buf); DO2_CRC32(buf); -#define DO8_CRC32(buf) DO4_CRC32(buf); DO4_CRC32(buf); - uint32_t encoding_crc32(uint32_t crc, const uint8_t *buf, size_t len) { crc = crc ^ 0xffffffff; while (len >= 8) { - DO8_CRC32(buf); + unsigned j; + for (j = 0; j < 8; j++) + crc = crc32_table[(crc ^ (*buf++)) & 0xff] ^ (crc >> 8); len -= 8; } if (len) { do { - DO1_CRC32(buf); + crc = crc32_table[(crc ^ (*buf++)) & 0xff] ^ (crc >> 8); } while (--len); }