Mesa (master): r600g: report INTEGERS cap if glsl130 is on.
Dave Airlie
airlied at kemper.freedesktop.org
Fri Apr 20 18:38:33 UTC 2012
Module: Mesa
Branch: master
Commit: 5f457f66186375d5fb82d5a0a81025887bfe2d2e
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5f457f66186375d5fb82d5a0a81025887bfe2d2e
Author: Dave Airlie <airlied at redhat.com>
Date: Fri Apr 20 19:33:22 2012 +0100
r600g: report INTEGERS cap if glsl130 is on.
This cap is used by u_blitter to decide if it can use integers
in vertex data.
fixes some crashes with glsl130 in piglit
Signed-off-by: Dave Airlie <airlied at redhat.com>
---
src/gallium/drivers/r600/r600_pipe.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c
index 34e508a..3a947d8 100644
--- a/src/gallium/drivers/r600/r600_pipe.c
+++ b/src/gallium/drivers/r600/r600_pipe.c
@@ -501,6 +501,7 @@ static float r600_get_paramf(struct pipe_screen* pscreen,
static int r600_get_shader_param(struct pipe_screen* pscreen, unsigned shader, enum pipe_shader_cap param)
{
+ struct r600_screen *rscreen = (struct r600_screen *)pscreen;
switch(shader)
{
case PIPE_SHADER_FRAGMENT:
@@ -549,7 +550,7 @@ static int r600_get_shader_param(struct pipe_screen* pscreen, unsigned shader, e
case PIPE_SHADER_CAP_SUBROUTINES:
return 0;
case PIPE_SHADER_CAP_INTEGERS:
- return 0;
+ return rscreen->glsl_feature_level >= 130;
case PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS:
return 16;
}
More information about the mesa-commit
mailing list