[Mesa-dev] [PATCH 2/3] mesa: move _mesa_half_is_negative() to half_float.h

Ilia Mirkin imirkin at alum.mit.edu
Mon Oct 9 21:24:11 UTC 2017


On Mon, Oct 9, 2017 at 5:07 PM, Roland Scheidegger <sroland at vmware.com> wrote:
> Am 09.10.2017 um 22:56 schrieb Brian Paul:
>> ---
>>  src/mesa/main/imports.h | 6 ------
>>  src/util/half_float.h   | 8 ++++++++
>>  2 files changed, 8 insertions(+), 6 deletions(-)
>>
>> diff --git a/src/mesa/main/imports.h b/src/mesa/main/imports.h
>> index a4964a3..51fa72c 100644
>> --- a/src/mesa/main/imports.h
>> +++ b/src/mesa/main/imports.h
>> @@ -333,12 +333,6 @@ _mesa_bitcount_64(uint64_t n);
>>  #endif
>>
>>
>> -static inline bool
>> -_mesa_half_is_negative(GLhalfARB h)
>> -{
>> -   return h & 0x8000;
>> -}
>> -
>>  extern int
>>  _mesa_snprintf( char *str, size_t size, const char *fmt, ... ) PRINTFLIKE(3, 4);
>>
>> diff --git a/src/util/half_float.h b/src/util/half_float.h
>> index 64f2042..35f27c8 100644
>> --- a/src/util/half_float.h
>> +++ b/src/util/half_float.h
>> @@ -25,6 +25,7 @@
>>  #ifndef _HALF_FLOAT_H_
>>  #define _HALF_FLOAT_H_
>>
>> +#include <stdbool.h>
>>  #include <stdint.h>
>>
>>  #ifdef __cplusplus
>> @@ -34,6 +35,13 @@ extern "C" {
>>  uint16_t _mesa_float_to_half(float val);
>>  float _mesa_half_to_float(uint16_t val);
>>
>> +static inline bool
>> +_mesa_half_is_negative(uint16_t h)
>> +{
>> +   return h & 0x8000;
>> +}
> Not that this is a new issue, but isn't this pretty problematic and should
> rather be return !!(h & 0x8000) or something like that?

That should be implied by the C99 _Bool return type (hopefully bool is
typecast to that and not something horrible like char).

  -ilia


More information about the mesa-dev mailing list