update sinfl_bsr

This commit is contained in:
Rico P 2025-03-10 20:57:48 +01:00 committed by GitHub
parent 539c45ee23
commit e7872a700d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -171,9 +171,10 @@ extern int zsinflate(void *out, int cap, const void *in, int size);
static int
sinfl_bsr(unsigned n) {
#if defined(_MSC_VER) && !defined(__clang__)
_BitScanReverse(&n, n);
return n;
#ifdef _MSC_VER
unsigned long r = 0;
_BitScanReverse(&r, n);
return int(r);
#else // defined(__GNUC__) || defined(__clang__) || defined(__TINYC__)
return 31 - __builtin_clz(n);
#endif