--- nono/lib/bitops.h 2026/04/29 17:05:35 1.1.1.5 +++ nono/lib/bitops.h 2026/04/29 17:05:57 1.1.1.6 @@ -26,21 +26,21 @@ extern const uint8 bitrev_table[256]; // 8ビットを左右反転する -static inline uint8 +inline uint8 bitrev8(uint8 x) { return bitrev_table[x]; } // 16ビットを左右反転する -static inline uint16 +inline uint16 bitrev16(uint16 x) { return (bitrev8(x & 0xff) << 8) | bitrev8(x >> 8); } // 32ビットを左右反転する -static inline uint32 +inline uint32 bitrev32(uint32 x) { return (bitrev16(x & 0xffff) << 16) | bitrev16(x >> 16); @@ -51,7 +51,7 @@ bitrev32(uint32 x) #if defined(HAVE___BUILTIN_ROTATELEFT32) #define ROL32(a, n) __builtin_rotateleft32(a, n) #else -static inline uint32 +inline uint32 ROL32(uint32 a, int n) { n &= 31; @@ -67,7 +67,7 @@ ROL32(uint32 a, int n) #if defined(HAVE___BUILTIN_ROTATERIGHT32) #define ROR32(a, n) __builtin_rotateright32(a, n) #else -static inline uint32 +inline uint32 ROR32(uint32 a, int n) { n &= 31; @@ -80,7 +80,7 @@ ROR32(uint32 a, int n) #endif // mask で指定したいずれかのビットが 0 -> 1 に変化したら true -static constexpr bool +constexpr bool bit_rising(uint before, uint after, uint mask) { // before が 0 で mask が 1 のビットだけを立てる。 @@ -89,7 +89,7 @@ bit_rising(uint before, uint after, uint } // mask で指定したいずれかのビットが 1 -> 0 に変化したら true -static constexpr bool +constexpr bool bit_falling(uint before, uint after, uint mask) { // before が 1 で mask が 1 のビットだけを立てる。