소스 검색

Merge pull request #4807 from RicoP/RicoP/sinfl_bsr

[rcore] sinfl_bsr fix for TCC
Ray 6 달 전
부모
커밋
b80250bee4
1개의 변경된 파일5개의 추가작업 그리고 4개의 파일을 삭제
  1. 5 4
      src/external/sinfl.h

+ 5 - 4
src/external/sinfl.h

@@ -171,10 +171,11 @@ 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;
-#elif defined(__GNUC__) || defined(__clang__)
+#ifdef _MSC_VER
+  unsigned long uln = 0;
+  _BitScanReverse(&uln, n);
+  return (int)(uln);
+#else // defined(__GNUC__) || defined(__clang__) || defined(__TINYC__)
   return 31 - __builtin_clz(n);
 #endif
 }