Mesa (master): llvmpipe: get rid of impossible code in alloc_image_data

Roland Scheidegger sroland at kemper.freedesktop.org
Fri Aug 1 21:31:43 UTC 2014


Module: Mesa
Branch: master
Commit: 47096fbb5d1c0ba57df642c67b34754e649778c3
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=47096fbb5d1c0ba57df642c67b34754e649778c3

Author: Roland Scheidegger <sroland at vmware.com>
Date:   Thu Jul 31 19:13:57 2014 +0200

llvmpipe: get rid of impossible code in alloc_image_data

Only used for non display target resources.

Reviewed-by: Brian Paul <brianp at vmware.com>
Reviewed-by: Jose Fonseca <jfonseca at vmware.com>

---

 src/gallium/drivers/llvmpipe/lp_texture.c |   39 ++++++++++-------------------
 1 file changed, 13 insertions(+), 26 deletions(-)

diff --git a/src/gallium/drivers/llvmpipe/lp_texture.c b/src/gallium/drivers/llvmpipe/lp_texture.c
index c07bd21..40e5815 100644
--- a/src/gallium/drivers/llvmpipe/lp_texture.c
+++ b/src/gallium/drivers/llvmpipe/lp_texture.c
@@ -757,34 +757,21 @@ alloc_image_data(struct llvmpipe_resource *lpr)
    uint level;
    uint offset = 0;
 
-   if (lpr->dt) {
-      /* we get the linear memory from the winsys, and it has
-       * already been zeroed
-       */
-      struct llvmpipe_screen *screen = llvmpipe_screen(lpr->base.screen);
-      struct sw_winsys *winsys = screen->winsys;
+   assert(!lpr->dt);
 
-      assert(lpr->base.last_level == 0);
-
-      lpr->tex_data =
-         winsys->displaytarget_map(winsys, lpr->dt,
-                                   PIPE_TRANSFER_READ_WRITE);
+   /* not a display target - allocate regular memory */
+   /*
+    * Offset calculation for start of a specific mip/layer is always
+    * offset = lpr->linear_mip_offsets[level] + lpr->img_stride[level] * layer
+    */
+   for (level = 0; level <= lpr->base.last_level; level++) {
+      uint buffer_size = tex_image_size(lpr, level);
+      lpr->mip_offsets[level] = offset;
+      offset += align(buffer_size, alignment);
    }
-   else {
-      /* not a display target - allocate regular memory */
-      /*
-       * Offset calculation for start of a specific mip/layer is always
-       * offset = lpr->linear_mip_offsets[level] + lpr->img_stride[level] * layer
-       */
-      for (level = 0; level <= lpr->base.last_level; level++) {
-         uint buffer_size = tex_image_size(lpr, level);
-         lpr->mip_offsets[level] = offset;
-         offset += align(buffer_size, alignment);
-      }
-      lpr->tex_data = align_malloc(offset, alignment);
-      if (lpr->tex_data) {
-         memset(lpr->tex_data, 0, offset);
-      }
+   lpr->tex_data = align_malloc(offset, alignment);
+   if (lpr->tex_data) {
+      memset(lpr->tex_data, 0, offset);
    }
 }
 




More information about the mesa-commit mailing list