Merge pull request #4807 from RicoP/RicoP/sinfl_bsr

[rcore] sinfl_bsr fix for TCC
This commit is contained in:
Ray 2025-03-11 08:32:32 +01:00 committed by GitHub
commit b80250bee4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

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