diff --git a/src/cdrom/cdrom.c b/src/cdrom/cdrom.c index f2e1beadc..ffccbdcb4 100644 --- a/src/cdrom/cdrom.c +++ b/src/cdrom/cdrom.c @@ -345,7 +345,6 @@ cdrom_is_sector_good(cdrom_t *dev, const uint8_t *b, const uint8_t mode2, const int ret = 1; if (!mode2 || (form != 1)) { -#ifdef TEMPORARILY_DISABLE_CRC_CHECKING if (mode2 && (form == 1)) { const uint32_t crc = cdrom_crc32(0xffffffff, &(b[16]), 2056) ^ 0xffffffff; @@ -355,7 +354,6 @@ cdrom_is_sector_good(cdrom_t *dev, const uint8_t *b, const uint8_t mode2, const ret = ret && (crc == (*(uint32_t *) &(b[2064]))); } -#endif cdrom_generate_ecc_data(dev, &(b[12]), mode2 && (form == 1)); diff --git a/src/utils/crc32.c b/src/utils/crc32.c index 2d3ad867a..6993654ae 100644 --- a/src/utils/crc32.c +++ b/src/utils/crc32.c @@ -103,17 +103,23 @@ # endif #endif +/* + #ifdef this out because that code path does not currently produce the + correct results. + */ +#ifdef USE_ARMCRC32 /* If available, use the ARM processor CRC32 instruction. */ #if defined(__aarch64__) && defined(__ARM_FEATURE_CRC32) && W == 8 # define ARMCRC32 #endif +#endif #if defined(W) && (!defined(ARMCRC32) || defined(DYNAMIC_CRC_TABLE)) /* - Swap the bytes in a word_t to convert between little and big endian. Any - self-respecting compiler will optimize this to a single machine byte-swap - instruction, if one is available. This assumes that word_t is either 32 bits - or 64 bits. + Swap the bytes in a word_t to convert between little and big endian. Any + self-respecting compiler will optimize this to a single machine byte-swap + instruction, if one is available. This assumes that word_t is either 32 bits + or 64 bits. */ static word_t byte_swap(word_t word) { # if W == 8