llvmpipe: simplify buffer allocation logic.
authorRoland Scheidegger <sroland@vmware.com>
Thu, 21 Feb 2013 16:13:34 +0000 (17:13 +0100)
committerRoland Scheidegger <sroland@vmware.com>
Fri, 22 Feb 2013 03:34:07 +0000 (04:34 +0100)
Now with buffer formats clarification don't need all that logic any longer.
(Note that it never would have worked in any case, because blockwidth and
blockheight were swapped any allocation with multi-byte format would have
had zero size.)

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
src/gallium/drivers/llvmpipe/lp_texture.c

index 1c4f1dc20f6344ee21e0a6253b7ac578989640d3..d55985ba170cdd4ab336265c6e065d9e59e1f19a 100644 (file)
@@ -311,13 +311,11 @@ llvmpipe_resource_create(struct pipe_screen *_screen,
    }
    else {
       /* other data (vertex buffer, const buffer, etc) */
-      const enum pipe_format format = templat->format;
-      const uint w = templat->width0 / util_format_get_blockheight(format);
-      /* XXX buffers should only have one dimension, those values should be 1 */
-      const uint h = templat->height0 / util_format_get_blockwidth(format);
-      const uint d = templat->depth0;
-      const uint bpp = util_format_get_blocksize(format);
-      const uint bytes = w * h * d * bpp;
+      const uint bytes = templat->width0;
+      assert(util_format_get_blocksize(templat->format) == 1);
+      assert(templat->height0 == 1);
+      assert(templat->depth0 == 1);
+      assert(templat->last_level == 0);
       lpr->data = align_malloc(bytes, 16);
       if (!lpr->data)
          goto fail;