llvmpipe: Don't support Z32_FLOAT_S8X24_UINT texture sampling support either.
authorJosé Fonseca <jfonseca@vmware.com>
Sat, 20 Apr 2013 09:42:09 +0000 (10:42 +0100)
committerJosé Fonseca <jfonseca@vmware.com>
Sat, 20 Apr 2013 22:25:36 +0000 (23:25 +0100)
Because we don't support, and the u_format fallback doesn't work for
zs formats.

Reviewed-by: Brian Paul <brianp@vmware.com>
src/gallium/drivers/llvmpipe/lp_screen.c

index 5535f8523a777c701e6ac1f4afb9b1cffddeb445..667ade1e66790176db2fa55277ec61720024276c 100644 (file)
@@ -361,6 +361,12 @@ llvmpipe_is_format_supported( struct pipe_screen *_screen,
          return FALSE;
    }
 
+   /* TODO: Support Z32_FLOAT_S8X24_UINT. See lp_bld_depth.c. */
+   if (format_desc->colorspace == UTIL_FORMAT_COLORSPACE_ZS &&
+       format_desc->block.bits > 32) {
+      return FALSE;
+   }
+
    if (bind & PIPE_BIND_DEPTH_STENCIL) {
       if (format_desc->layout != UTIL_FORMAT_LAYOUT_PLAIN)
          return FALSE;
@@ -368,10 +374,6 @@ llvmpipe_is_format_supported( struct pipe_screen *_screen,
       if (format_desc->colorspace != UTIL_FORMAT_COLORSPACE_ZS)
          return FALSE;
 
-      /* TODO: Support Z32_FLOAT_S8X24_UINT. See lp_bld_depth.c. */
-      if (format_desc->block.bits > 32)
-         return FALSE;
-
       /* TODO: Support stencil-only formats */
       if (format_desc->swizzle[0] == UTIL_FORMAT_SWIZZLE_NONE) {
          return FALSE;