<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jul 18, 2014 at 2:10 PM, Tom Stellard <span dir="ltr"><<a href="mailto:thomas.stellard@amd.com" target="_blank">thomas.stellard@amd.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">v2:<br>
  - Preserve word boundaries.<br>
---<br>
 src/gallium/auxiliary/util/u_math.h | 17 +++++++++++++++++<br>
 1 file changed, 17 insertions(+)<br>
<br>
diff --git a/src/gallium/auxiliary/util/u_math.h b/src/gallium/auxiliary/util/u_math.h<br>
index b9ed197..5de181a 100644<br>
--- a/src/gallium/auxiliary/util/u_math.h<br>
+++ b/src/gallium/auxiliary/util/u_math.h<br>
@@ -812,6 +812,23 @@ util_bswap16(uint16_t n)<br>
           (n << 8);<br>
 }<br>
<br>
+static INLINE void*<br>
+util_memcpy_cpu_to_le32(void *dest, void *src, size_t n)<br></blockquote><div><br></div><div>I don't know where Mesa is with C99 standards, but if you are utilizing C99 keywords, I think "restrict" would help here to show that the two pointers do not overlap. I'm not sure if have to mark 'd' and 's' as restrict to get the benefit if they are initialized by a typecast, but it probably wouldn't be a bad idea.</div>
<div><br></div><div>This may be a no-go with C++ however.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
+{<br>
+#ifdef PIPE_ARCH_BIG_ENDIAN<br>
+       size_t i, e;<br>
+       asset(n % 4 == 0);<br>
+<br>
+       for (i = 0, e = n / 4; i < e; i++) {<br>
+               uint32_t *d = (uint32_t*)dest;<br>
+               uint32_t *s = (uint32_t*)src;<br>
+               d[i] = util_bswap32(s[i]);<br>
+       }<br>
+       return dest;<br>
+#else<br>
+       return memcpy(dest, src, n);<br>
+#endif<br>
+}<br>
<br>
 /**<br>
  * Clamp X to [MIN, MAX].<br>
<span class="HOEnZb"><font color="#888888">--<br>
1.8.1.5<br>
<br>
_______________________________________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/mesa-dev" target="_blank">http://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</font></span></blockquote></div><br></div></div>