summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2012-04-20 19:33:22 +0100
committerDave Airlie <[email protected]>2012-04-20 19:33:22 +0100
commit5f457f66186375d5fb82d5a0a81025887bfe2d2e (patch)
tree84ec90be85cf1b8fccfa43f49efd534adf76ac0b /src/gallium/drivers
parent7af9f6325ee3b9791fba7b49c60496c42fa79e6b (diff)
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 <[email protected]>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r--src/gallium/drivers/r600/r600_pipe.c3
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 34e508a1bd3..3a947d8aa1c 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;
}