From 42f762dcf682957a8a5c85ca1d30b28f41ea4bd0 Mon Sep 17 00:00:00 2001 From: José Fonseca Date: Tue, 29 Jan 2013 13:27:44 +0000 Subject: llvmpipe: Don't advertise S8_UNORM (with feeble attempt at supporting it). S8_UNORM was inadvertedly supported together with Z16_UNORM. I tried to update the code to accomodate stencil-only -- it seemed a simple thing to do -- but "fbo-stencil clear GL_STENCIL_INDEX8" still fails, and it's not worth debugging. Therefore although this change tries to update for S8_UNORM, it also disables it completely. Reviewed-by: Brian Paul Reviewed-by: Roland Scheidegger --- src/gallium/drivers/llvmpipe/lp_screen.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/gallium/drivers/llvmpipe/lp_screen.c') diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c b/src/gallium/drivers/llvmpipe/lp_screen.c index de80c6fdc6b..3769428a971 100644 --- a/src/gallium/drivers/llvmpipe/lp_screen.c +++ b/src/gallium/drivers/llvmpipe/lp_screen.c @@ -356,9 +356,14 @@ llvmpipe_is_format_supported( struct pipe_screen *_screen, if (format_desc->colorspace != UTIL_FORMAT_COLORSPACE_ZS) return FALSE; - /* FIXME: Temporary restriction. See lp_bld_depth.c. */ + /* 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; + } } if (format_desc->layout == UTIL_FORMAT_LAYOUT_S3TC) { -- cgit v1.2.3