diff --git a/rpcs3/Emu/Cell/PPUTranslator.cpp b/rpcs3/Emu/Cell/PPUTranslator.cpp index b2a291c36ff2..37955380fce1 100644 --- a/rpcs3/Emu/Cell/PPUTranslator.cpp +++ b/rpcs3/Emu/Cell/PPUTranslator.cpp @@ -236,7 +236,7 @@ Type* PPUTranslator::ScaleType(Type* type, s32 pow2) uint scaled = type->getScalarSizeInBits(); - verify(HERE), std::popcount(scaled) == 1; + verify(HERE), (scaled & (scaled - 1)) == 0; if (pow2 > 0) { diff --git a/rpcs3/Emu/Memory/vm.cpp b/rpcs3/Emu/Memory/vm.cpp index f9cb7a7a0016..7e2a53d0d596 100644 --- a/rpcs3/Emu/Memory/vm.cpp +++ b/rpcs3/Emu/Memory/vm.cpp @@ -1182,7 +1182,7 @@ namespace vm if (is_write) std::swap(src, dst); - if (size <= 16 && std::popcount(size) == 1 && (addr & (size - 1)) == 0) + if (size <= 16 && (size & (size - 1)) == 0 && (addr & (size - 1)) == 0) { if (is_write) {