diff --git a/3rdparty/astc-encoder/source/astcenc_vecmathlib_sse_4.h b/3rdparty/astc-encoder/source/astcenc_vecmathlib_sse_4.h index 76fe577..9025f80 100644 --- a/3rdparty/astc-encoder/source/astcenc_vecmathlib_sse_4.h +++ b/3rdparty/astc-encoder/source/astcenc_vecmathlib_sse_4.h @@ -1275,7 +1275,11 @@ ASTCENC_SIMD_INLINE vfloat4 dot3(vfloat4 a, vfloat4 b) */ ASTCENC_SIMD_INLINE int popcount(uint64_t v) { +#if defined(__MINGW32__) + return static_cast(__builtin_popcountll(v)); +#else return static_cast(_mm_popcnt_u64(v)); +#endif // defined(__MINGW32__) } #endif // ASTCENC_POPCNT >= 1 diff --git a/src/image.cpp b/src/image.cpp index 63d4625..4cb3b9a 100644 --- a/src/image.cpp +++ b/src/image.cpp @@ -5805,7 +5805,7 @@ namespace bimg return total; } - for (uint8_t side = 0, numSides = _imageContainer.m_numLayers * (_imageContainer.m_cubeMap ? 6 : 1); side < numSides && _err->isOk(); ++side) + for (uint8_t side = 0, numSides = uint8_t(_imageContainer.m_numLayers * (_imageContainer.m_cubeMap ? 6 : 1) ); side < numSides && _err->isOk(); ++side) { for (uint8_t lod = 0, num = _imageContainer.m_numMips; lod < num && _err->isOk(); ++lod) {