Mesa (master): r600g: enable integer shader cap for evergreen.

Dave Airlie airlied at kemper.freedesktop.org
Sun Oct 9 08:49:00 PDT 2011


Module: Mesa
Branch: master
Commit: ddcdd6137ba8f7bf7cdaba701bb7f6307958f35f
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ddcdd6137ba8f7bf7cdaba701bb7f6307958f35f

Author: Dave Airlie <airlied at redhat.com>
Date:   Sun Oct  9 16:47:03 2011 +0100

r600g: enable integer shader cap for evergreen.

Will get to adding r600/r700/cayman support, have it mostly written on
another PC.

Signed-off-by: Dave Airlie <airlied at redhat.com>

---

 src/gallium/drivers/r600/r600_pipe.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c
index 73c2b33..d0a86de 100644
--- a/src/gallium/drivers/r600/r600_pipe.c
+++ b/src/gallium/drivers/r600/r600_pipe.c
@@ -441,6 +441,7 @@ static float r600_get_paramf(struct pipe_screen* pscreen, enum pipe_cap param)
 
 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:
@@ -489,6 +490,8 @@ 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:
+		if (rscreen->chip_class == EVERGREEN)
+			return 1;
 		return 0;
 	case PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS:
 		return 16;



More information about the mesa-commit mailing list