Use inlined functions instead of macros
This commit is contained in:
parent
fe3ed40a76
commit
5a843719b1
@ -7,10 +7,33 @@
|
||||
|
||||
#define COMPILER_ASSERT(X) (void) sizeof(char[(X) ? 1 : -1])
|
||||
|
||||
#define ROTL32(x, b) (uint32_t)(((x) << (b)) | ((x) >> (32 - (b))))
|
||||
#define ROTL64(x, b) (uint64_t)(((x) << (b)) | ((x) >> (64 - (b))))
|
||||
#define ROTR32(x, b) (uint32_t)(((x) >> (b)) | ((x) << (32 - (b))))
|
||||
#define ROTR64(x, b) (uint64_t)(((x) >> (b)) | ((x) << (64 - (b))))
|
||||
#define ROTL32(X, B) rotl32((X), (B))
|
||||
static inline uint32_t
|
||||
rotl32(const uint32_t x, const int b)
|
||||
{
|
||||
return (x << b) | (x >> (32 - b));
|
||||
}
|
||||
|
||||
#define ROTL64(X, B) rotl64((X), (B))
|
||||
static inline uint64_t
|
||||
rotl64(const uint64_t x, const int b)
|
||||
{
|
||||
return (x << b) | (x >> (64 - b));
|
||||
}
|
||||
|
||||
#define ROTR32(X, B) rotr32((X), (B))
|
||||
static inline uint32_t
|
||||
rotr32(const uint32_t x, const int b)
|
||||
{
|
||||
return (x >> b) | (x << (32 - b));
|
||||
}
|
||||
|
||||
#define ROTR64(X, B) rotr64((X), (B))
|
||||
static inline uint64_t
|
||||
rotr64(const uint64_t x, const int b)
|
||||
{
|
||||
return (x >> b) | (x << (64 - b));
|
||||
}
|
||||
|
||||
#define LOAD64_LE(SRC) load64_le(SRC)
|
||||
static inline uint64_t
|
||||
|
Loading…
Reference in New Issue
Block a user