From: Brian Paul Date: Thu, 26 Aug 2010 17:45:25 +0000 (-0600) Subject: llvmpipe: fix PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS query X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4418a493c2466e734e1ca5ace51535d1dbcf8a46;p=mesa.git llvmpipe: fix PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS query Fixes crashes in glean glsl1 and demos/src/glsl/vert-tex. See comments for details. --- diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c b/src/gallium/drivers/llvmpipe/lp_screen.c index 9b7e0d51cd0..1e65a91fc67 100644 --- a/src/gallium/drivers/llvmpipe/lp_screen.c +++ b/src/gallium/drivers/llvmpipe/lp_screen.c @@ -89,7 +89,14 @@ llvmpipe_get_param(struct pipe_screen *screen, enum pipe_cap param) case PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS: return PIPE_MAX_SAMPLERS; case PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS: - return PIPE_MAX_VERTEX_SAMPLERS; + /* At this time, the draw module and llvmpipe driver only + * support vertex shader texture lookups when LLVM is enabled in + * the draw module. + */ + if (debug_get_bool_option("DRAW_USE_LLVM", TRUE)) + return PIPE_MAX_VERTEX_SAMPLERS; + else + return 0; case PIPE_CAP_MAX_COMBINED_SAMPLERS: return PIPE_MAX_SAMPLERS + PIPE_MAX_VERTEX_SAMPLERS; case PIPE_CAP_NPOT_TEXTURES: