From: Marek Olšák <marek.ol...@amd.com>

Point util_memcpy_cpu_to_le32 to a buffer storage directly.
---
 src/gallium/drivers/radeonsi/si_descriptors.c | 15 +++------------
 1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c 
b/src/gallium/drivers/radeonsi/si_descriptors.c
index 81ad14b..bfd2b76 100644
--- a/src/gallium/drivers/radeonsi/si_descriptors.c
+++ b/src/gallium/drivers/radeonsi/si_descriptors.c
@@ -649,20 +649,11 @@ void si_upload_const_buffer(struct si_context *sctx, 
struct r600_resource **rbuf
                            const uint8_t *ptr, unsigned size, uint32_t 
*const_offset)
 {
        if (SI_BIG_ENDIAN) {
-               uint32_t *tmpPtr;
-               unsigned i;
-
-               if (!(tmpPtr = malloc(size))) {
-                       R600_ERR("Failed to allocate BE swap buffer.\n");
-                       return;
-               }
+               void *tmpPtr;
 
+               u_upload_alloc(sctx->b.uploader, 0, size, const_offset,
+                              (struct pipe_resource**)rbuffer, &tmpPtr);
                util_memcpy_cpu_to_le32(tmpPtr, ptr, size);
-
-               u_upload_data(sctx->b.uploader, 0, size, tmpPtr, const_offset,
-                               (struct pipe_resource**)rbuffer);
-
-               free(tmpPtr);
        } else {
                u_upload_data(sctx->b.uploader, 0, size, ptr, const_offset,
                                        (struct pipe_resource**)rbuffer);
-- 
1.9.1

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to