iris: include p_defines.h in iris_bufmgr.h
[mesa.git] / src / util / half_float.h
index 64f2042101857f4b6560446a43337ece72ee7666..01557424735db11d3f3f1f923a629a49456510db 100644 (file)
 #ifndef _HALF_FLOAT_H_
 #define _HALF_FLOAT_H_
 
+#include <stdbool.h>
 #include <stdint.h>
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
+#define FP16_ONE     0x3C00
+#define FP16_ZERO    0
+
 uint16_t _mesa_float_to_half(float val);
 float _mesa_half_to_float(uint16_t val);
+uint8_t _mesa_half_to_unorm8(uint16_t v);
+uint16_t _mesa_uint16_div_64k_to_half(uint16_t v);
+
+static inline bool
+_mesa_half_is_negative(uint16_t h)
+{
+   return !!(h & 0x8000);
+}
+
 
 #ifdef __cplusplus
 } /* extern C */