summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/llvmpipe/lp_screen.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2011-09-27 22:22:06 +0200
committerMarek Olšák <[email protected]>2011-09-30 23:19:52 +0200
commitf5bfe54a34d9c8cd5de2b096d0e8486fe0d990a7 (patch)
tree5c61a58b22bd018661f8b4f12e5974bf07b18c20 /src/gallium/drivers/llvmpipe/lp_screen.c
parent557c3febdfd88ba1a41d3e8e0221e447d491c343 (diff)
gallium: add and use PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS
This removes: - PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS - PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS in favor of the that new per-shader cap. Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_screen.c')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_screen.c25
1 files changed, 13 insertions, 12 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c b/src/gallium/drivers/llvmpipe/lp_screen.c
index 11a264cc5dc..7848d80f739 100644
--- a/src/gallium/drivers/llvmpipe/lp_screen.c
+++ b/src/gallium/drivers/llvmpipe/lp_screen.c
@@ -104,17 +104,6 @@ static int
llvmpipe_get_param(struct pipe_screen *screen, enum pipe_cap param)
{
switch (param) {
- case PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS:
- return PIPE_MAX_SAMPLERS;
- case PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS:
- /* 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:
@@ -183,7 +172,19 @@ llvmpipe_get_shader_param(struct pipe_screen *screen, unsigned shader, enum pipe
return tgsi_exec_get_shader_param(param);
case PIPE_SHADER_VERTEX:
case PIPE_SHADER_GEOMETRY:
- return draw_get_shader_param(shader, param);
+ switch (param) {
+ case PIPE_SHADER_CAP_MAX_TEXTURE_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;
+ default:
+ return draw_get_shader_param(shader, param);
+ }
default:
return 0;
}