llvmpipe: make texture buffer offset alignment == 16
authorDave Airlie <airlied@redhat.com>
Sun, 1 Sep 2019 23:52:55 +0000 (09:52 +1000)
committerDave Airlie <airlied@linux.ie>
Thu, 10 Oct 2019 21:52:20 +0000 (21:52 +0000)
Due to use vmovdqa instructions in the asm, which require 16-byte
aligned buffers.

This fixes a crash in
KHR-GLES31.core.texture_buffer.texture_buffer_texture_buffer_range

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
src/gallium/drivers/llvmpipe/lp_screen.c

index 37bb29f9543b7767125a134adeb008ae243ed37f..96c7623c4619e8c434058955b0eaa03af88a6a1a 100644 (file)
@@ -241,7 +241,7 @@ llvmpipe_get_param(struct pipe_screen *screen, enum pipe_cap param)
    case PIPE_CAP_MAX_TEXTURE_BUFFER_SIZE:
       return 65536;
    case PIPE_CAP_TEXTURE_BUFFER_OFFSET_ALIGNMENT:
-      return 1;
+      return 16;
    case PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER:
       return 0;
    case PIPE_CAP_MAX_VIEWPORTS: