summaryrefslogtreecommitdiffstats
path: root/include/msvc_compat/strings.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/msvc_compat/strings.h')
-rw-r--r--include/msvc_compat/strings.h37
1 files changed, 18 insertions, 19 deletions
diff --git a/include/msvc_compat/strings.h b/include/msvc_compat/strings.h
index a3ee250..996f256 100644
--- a/include/msvc_compat/strings.h
+++ b/include/msvc_compat/strings.h
@@ -6,32 +6,30 @@
#ifdef _MSC_VER
# include <intrin.h>
# pragma intrinsic(_BitScanForward)
-static __forceinline int ffsl(long x)
-{
+static __forceinline int ffsl(long x) {
unsigned long i;
- if (_BitScanForward(&i, x))
- return (i + 1);
- return (0);
+ if (_BitScanForward(&i, x)) {
+ return i + 1;
+ }
+ return 0;
}
-static __forceinline int ffs(int x)
-{
-
- return (ffsl(x));
+static __forceinline int ffs(int x) {
+ return ffsl(x);
}
# ifdef _M_X64
# pragma intrinsic(_BitScanForward64)
# endif
-static __forceinline int ffsll(unsigned __int64 x)
-{
+static __forceinline int ffsll(unsigned __int64 x) {
unsigned long i;
#ifdef _M_X64
- if (_BitScanForward64(&i, x))
- return (i + 1);
- return (0);
+ if (_BitScanForward64(&i, x)) {
+ return i + 1;
+ }
+ return 0;
#else
// Fallback for 32-bit build where 64-bit version not available
// assuming little endian
@@ -42,11 +40,12 @@ static __forceinline int ffsll(unsigned __int64 x)
s.ll = x;
- if (_BitScanForward(&i, s.l[0]))
- return (i + 1);
- else if(_BitScanForward(&i, s.l[1]))
- return (i + 33);
- return (0);
+ if (_BitScanForward(&i, s.l[0])) {
+ return i + 1;
+ } else if(_BitScanForward(&i, s.l[1])) {
+ return i + 33;
+ }
+ return 0;
#endif
}