aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCharmaine Lee <[email protected]>2020-06-04 17:46:33 -0700
committerMarge Bot <[email protected]>2020-06-06 22:45:21 +0000
commitdd81f4853c879c38987909f5e6e670b325f9f6af (patch)
tree707cc0e8cb29cc8f5b3ec94fc57761c592f13ad0
parent990b3782bc5f2f127345b975a68ac56aaf3e4674 (diff)
llvmpipe: do not enable tessellation shader without llvm coroutines support
Tessellation shader in llvmpipe depends on llvm coroutines support. So do not advertise tessellation shader support in llvmpipe if GALLIVM_HAVE_CORO is FALSE. This fixes assertion in LLVMTokenTypeInContext() running tessellation shader tests with llvm version < 6. Fixes: eb522717 "llvmpipe: add support for tessellation shaders" Reviewed-by: Roland Scheidegger <[email protected]> Reviewed-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Neha Bhende <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5366>
-rw-r--r--src/gallium/drivers/llvmpipe/lp_screen.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c b/src/gallium/drivers/llvmpipe/lp_screen.c
index e3f1f70237c..61aac82d0d8 100644
--- a/src/gallium/drivers/llvmpipe/lp_screen.c
+++ b/src/gallium/drivers/llvmpipe/lp_screen.c
@@ -433,7 +433,8 @@ llvmpipe_get_shader_param(struct pipe_screen *screen,
}
case PIPE_SHADER_TESS_CTRL:
case PIPE_SHADER_TESS_EVAL:
- if (lscreen->use_tgsi)
+ /* Tessellation shader needs llvm coroutines support */
+ if (!GALLIVM_HAVE_CORO || lscreen->use_tgsi)
return 0;
case PIPE_SHADER_VERTEX:
case PIPE_SHADER_GEOMETRY: