diff options
author | Shoaib Meenai <smeenai@fb.com> | 2017-12-05 17:46:23 +0000 |
---|---|---|
committer | Shoaib Meenai <smeenai@fb.com> | 2017-12-05 17:46:23 +0000 |
commit | 9a0a00459e58e49a618ee6d613fd921cae02fc05 (patch) | |
tree | 95769875e1232e07764e6ba351edf28c1123f8f3 /libcxx/include/algorithm | |
parent | b24e9dbafe978aad980a3070e97716940b988426 (diff) | |
download | llvm-9a0a00459e58e49a618ee6d613fd921cae02fc05.zip llvm-9a0a00459e58e49a618ee6d613fd921cae02fc05.tar.gz llvm-9a0a00459e58e49a618ee6d613fd921cae02fc05.tar.bz2 |
[libcxx] Fix intrinsics for MSVC
The parameter was previously renamed but MSVC path was not updated.
Patch by Andrey Khalyavin.
Differential Revision: https://reviews.llvm.org/D40774
llvm-svn: 319802
Diffstat (limited to 'libcxx/include/algorithm')
-rw-r--r-- | libcxx/include/algorithm | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/libcxx/include/algorithm b/libcxx/include/algorithm index 8f6938d..35c6129 100644 --- a/libcxx/include/algorithm +++ b/libcxx/include/algorithm @@ -797,7 +797,7 @@ unsigned __ctz(unsigned __x) { unsigned long where; // Search from LSB to MSB for first set bit. // Returns zero if no set bit is found. - if (_BitScanForward(&where, mask)) + if (_BitScanForward(&where, __x)) return where; return 32; #endif @@ -823,15 +823,15 @@ unsigned long long __ctz(unsigned long long __x) { // Returns zero if no set bit is found. #if defined(_LIBCPP_HAS_BITSCAN64) (defined(_M_AMD64) || defined(__x86_64__)) - if (_BitScanForward64(&where, mask)) + if (_BitScanForward64(&where, __x)) return static_cast<int>(where); #else // Win32 doesn't have _BitScanForward64 so emulate it with two 32 bit calls. // Scan the Low Word. - if (_BitScanForward(&where, static_cast<unsigned long>(mask))) + if (_BitScanForward(&where, static_cast<unsigned long>(__x))) return where; // Scan the High Word. - if (_BitScanForward(&where, static_cast<unsigned long>(mask >> 32))) + if (_BitScanForward(&where, static_cast<unsigned long>(__x >> 32))) return where + 32; // Create a bit offset from the LSB. #endif return 64; @@ -849,7 +849,7 @@ unsigned __clz(unsigned __x) { unsigned long where; // Search from LSB to MSB for first set bit. // Returns zero if no set bit is found. - if (_BitScanReverse(&where, mask)) + if (_BitScanReverse(&where, __x)) return 31 - where; return 32; // Undefined Behavior. #endif @@ -874,14 +874,14 @@ unsigned long long __clz(unsigned long long __x) { // BitScanReverse scans from MSB to LSB for first set bit. // Returns 0 if no set bit is found. #if defined(_LIBCPP_HAS_BITSCAN64) - if (_BitScanReverse64(&where, mask)) + if (_BitScanReverse64(&where, __x)) return static_cast<int>(63 - where); #else // Scan the high 32 bits. - if (_BitScanReverse(&where, static_cast<unsigned long>(mask >> 32))) + if (_BitScanReverse(&where, static_cast<unsigned long>(__x >> 32))) return 63 - (where + 32); // Create a bit offset from the MSB. // Scan the low 32 bits. - if (_BitScanReverse(&where, static_cast<unsigned long>(mask))) + if (_BitScanReverse(&where, static_cast<unsigned long>(__x))) return 63 - where; #endif return 64; // Undefined Behavior. |