summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gallium/auxiliary/vl/vl_vlc.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/vl/vl_vlc.h b/src/gallium/auxiliary/vl/vl_vlc.h
index cad998911b6..2f905956dbf 100644
--- a/src/gallium/auxiliary/vl/vl_vlc.h
+++ b/src/gallium/auxiliary/vl/vl_vlc.h
@@ -149,7 +149,11 @@ vl_vlc_fillbits(struct vl_vlc *vlc)
} else if (bytes_left >= 4) {
/* enough bytes in buffer, read in a whole dword */
- uint64_t value = util_cpu_to_le32(*(const uint32_t*)vlc->data);
+ uint64_t value = *(const uint32_t*)vlc->data;
+
+#ifndef PIPE_ARCH_BIG_ENDIAN
+ value = util_bswap32(value);
+#endif
vlc->buffer |= value << vlc->invalid_bits;
vlc->data += 4;