From 3d35027fdc383c2bd009f3690b2b160e3b39d58b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 18 May 2015 02:23:04 +0200 Subject: [PATCH] tgsi/ureg: enable creating tessellation shaders with ureg_create_shader Reviewed-by: Ilia Mirkin --- 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 7a8bf5404e3..037d31a1643 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; + } } -- 2.30.2