diff options
author | Charmaine Lee <[email protected]> | 2020-06-04 17:46:33 -0700 |
---|---|---|
committer | Marge Bot <[email protected]> | 2020-06-06 22:45:21 +0000 |
commit | dd81f4853c879c38987909f5e6e670b325f9f6af (patch) | |
tree | 707cc0e8cb29cc8f5b3ec94fc57761c592f13ad0 | |
parent | 990b3782bc5f2f127345b975a68ac56aaf3e4674 (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.c | 3 |
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: |