Author: smeenai Date: Tue Dec 5 09:46:23 2017 New Revision: 319802 URL: http://llvm.org/viewvc/llvm-project?rev=319802&view=rev Log: [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 Modified: libcxx/trunk/include/algorithm Modified: libcxx/trunk/include/algorithm URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/algorithm?rev=319802&r1=319801&r2=319802&view=diff ============================================================================== --- libcxx/trunk/include/algorithm (original) +++ libcxx/trunk/include/algorithm Tue Dec 5 09:46:23 2017 @@ -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 l // 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 l // 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. _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits