mirror of
https://github.com/LuaJIT/LuaJIT.git
synced 2025-02-07 23:24:09 +00:00
Properly fix MSVC intrinsics for older versions.
This commit is contained in:
parent
d4bc6ab756
commit
9b7d2e9276
@ -243,17 +243,17 @@ static LJ_AINLINE uint32_t lj_getu32(const void *p)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef _M_PPC
|
#ifdef _M_PPC
|
||||||
#pragma intrinsic(_CountLeadingZeros)
|
|
||||||
unsigned int _CountLeadingZeros(long);
|
unsigned int _CountLeadingZeros(long);
|
||||||
|
#pragma intrinsic(_CountLeadingZeros)
|
||||||
static LJ_AINLINE uint32_t lj_fls(uint32_t x)
|
static LJ_AINLINE uint32_t lj_fls(uint32_t x)
|
||||||
{
|
{
|
||||||
return _CountLeadingZeros(x) ^ 31;
|
return _CountLeadingZeros(x) ^ 31;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
#pragma intrinsic(_BitScanForward)
|
|
||||||
#pragma intrinsic(_BitScanReverse)
|
|
||||||
unsigned char _BitScanForward(uint32_t *, unsigned long);
|
unsigned char _BitScanForward(uint32_t *, unsigned long);
|
||||||
unsigned char _BitScanReverse(uint32_t *, unsigned long);
|
unsigned char _BitScanReverse(uint32_t *, unsigned long);
|
||||||
|
#pragma intrinsic(_BitScanForward)
|
||||||
|
#pragma intrinsic(_BitScanReverse)
|
||||||
|
|
||||||
static LJ_AINLINE uint32_t lj_ffs(uint32_t x)
|
static LJ_AINLINE uint32_t lj_ffs(uint32_t x)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user