X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fbroadcom%2Fcle%2Fv3d_packet_helpers.h;h=841df89b32aee98630cb00cd5022fdf442352561;hb=9d0523b569bb7208c6e74cafc0f3945415d94336;hp=bc1bf3eb76ec94aff16d8646ef1ae8f5dcb21c6b;hpb=bb46111c01479d831932eb63f69da5ccda29f6fc;p=mesa.git diff --git a/src/broadcom/cle/v3d_packet_helpers.h b/src/broadcom/cle/v3d_packet_helpers.h index bc1bf3eb76e..841df89b32a 100644 --- a/src/broadcom/cle/v3d_packet_helpers.h +++ b/src/broadcom/cle/v3d_packet_helpers.h @@ -21,17 +21,23 @@ * IN THE SOFTWARE. */ +#ifndef MESA_V3D_PACKET_HELPERS_H +#define MESA_V3D_PACKET_HELPERS_H + #include #include #include #include #include +#include "util/u_math.h" #ifdef HAVE_VALGRIND #include #include #define VG(x) x +#ifndef NDEBUG #define __gen_validate_value(x) VALGRIND_CHECK_MEM_IS_DEFINED(&(x), sizeof(x)) +#endif #else #define VG(x) #endif @@ -203,3 +209,12 @@ __gen_unpack_float(const uint8_t *restrict cl, uint32_t start, uint32_t end) return f->f; } +static inline float +__gen_unpack_f187(const uint8_t *restrict cl, uint32_t start, uint32_t end) +{ + assert(end - start == 15); + uint32_t bits = __gen_unpack_uint(cl, start, end); + return uif(bits << 16); +} + +#endif