Mesa (main): intel/decoder: Use util_mask_sign_extend()

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Jul 6 12:09:29 UTC 2022


Module: Mesa
Branch: main
Commit: 6787c96039a752038c45d02176f7874ce9f79d89
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6787c96039a752038c45d02176f7874ce9f79d89

Author: Jason Ekstrand <jason.ekstrand at collabora.com>
Date:   Thu Jun 23 13:05:14 2022 -0500

intel/decoder: Use util_mask_sign_extend()

Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17214>

---

 src/intel/common/intel_decoder.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/intel/common/intel_decoder.c b/src/intel/common/intel_decoder.c
index 8290011764c..bc1ef548532 100644
--- a/src/intel/common/intel_decoder.c
+++ b/src/intel/common/intel_decoder.c
@@ -32,6 +32,7 @@
 
 #include <util/macros.h>
 #include <util/ralloc.h>
+#include <util/u_math.h>
 
 #include "intel_decoder.h"
 
@@ -1094,7 +1095,7 @@ iter_decode_field(struct intel_field_iterator *iter)
    case INTEL_TYPE_SFIXED: {
       /* Sign extend before converting */
       int bits = iter->field->type.i + iter->field->type.f + 1;
-      int64_t v_sign_extend = ((int64_t)(v.qw << (64 - bits))) >> (64 - bits);
+      int64_t v_sign_extend = util_mask_sign_extend(v.qw, bits);
       snprintf(iter->value, sizeof(iter->value), "%f",
                (float) v_sign_extend / (1 << iter->field->type.f));
       break;



More information about the mesa-commit mailing list