From 68f476834f6ed5e33175af0d5af8f7986f412c19 Mon Sep 17 00:00:00 2001 From: Bartosz Taudul Date: Tue, 1 Oct 2019 22:42:29 +0200 Subject: [PATCH] Make sure TracyCountBits() always returns uint64_t. --- server/TracyPopcnt.hpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/server/TracyPopcnt.hpp b/server/TracyPopcnt.hpp index a84008d5..e6c4539d 100644 --- a/server/TracyPopcnt.hpp +++ b/server/TracyPopcnt.hpp @@ -7,9 +7,12 @@ # include # define TracyCountBits __popcnt64 #elif defined __GNUC__ || defined __clang__ -# define TracyCountBits __builtin_popcountll +static inline uint64_t TracyCountBits( uint64_t i ) +{ + return uint64_t( __builtin_popcountll( i ) ); +} #else -static inline int TracyCountBits( uint64_t i ) +static inline uint64_t TracyCountBits( uint64_t i ) { i = i - ( (i >> 1) & 0x5555555555555555 ); i = ( i & 0x3333333333333333 ) + ( (i >> 2) & 0x3333333333333333 );