Mesa (master): tgsi/ureg: enable creating tessellation shaders with ureg_create_shader

Marek Olšák mareko at kemper.freedesktop.org
Tue May 26 10:58:09 UTC 2015


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

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Mon May 18 02:23:04 2015 +0200

tgsi/ureg: enable creating tessellation shaders with ureg_create_shader

Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>

---

 src/gallium/auxiliary/tgsi/tgsi_ureg.c |   18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/src/gallium/auxiliary/tgsi/tgsi_ureg.c b/src/gallium/auxiliary/tgsi/tgsi_ureg.c
index 7a8bf54..037d31a 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_ureg.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_ureg.c
@@ -1667,10 +1667,20 @@ void *ureg_create_shader( struct ureg_program *ureg,
    else
       memset(&state.stream_output, 0, sizeof(state.stream_output));
 
-   if (ureg->processor == TGSI_PROCESSOR_VERTEX)
-      return pipe->create_vs_state( pipe, &state );
-   else
-      return pipe->create_fs_state( pipe, &state );
+   switch (ureg->processor) {
+   case TGSI_PROCESSOR_VERTEX:
+      return pipe->create_vs_state(pipe, &state);
+   case TGSI_PROCESSOR_TESS_CTRL:
+      return pipe->create_tcs_state(pipe, &state);
+   case TGSI_PROCESSOR_TESS_EVAL:
+      return pipe->create_tes_state(pipe, &state);
+   case TGSI_PROCESSOR_GEOMETRY:
+      return pipe->create_gs_state(pipe, &state);
+   case TGSI_PROCESSOR_FRAGMENT:
+      return pipe->create_fs_state(pipe, &state);
+   default:
+      return NULL;
+   }
 }
 
 




More information about the mesa-commit mailing list