Mesa (main): crocus: wm_prog_key::key_alpha_test uses GL enums
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Dec 10 21:19:51 UTC 2021
Module: Mesa
Branch: main
Commit: 4175ed50994a27b7d0b36471da58195670aa4192
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4175ed50994a27b7d0b36471da58195670aa4192
Author: Jason Ekstrand <jason at jlekstrand.net>
Date: Thu Dec 9 18:20:55 2021 -0600
crocus: wm_prog_key::key_alpha_test uses GL enums
Fixes: f3630548f1da ("crocus: initial gallium driver for Intel gfx 4-7")
Reviewed-by: Dave Airlie <airlied at redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14141>
---
src/gallium/drivers/crocus/crocus_state.c | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/src/gallium/drivers/crocus/crocus_state.c b/src/gallium/drivers/crocus/crocus_state.c
index a6bd2d8d41a..509a4b30aa2 100644
--- a/src/gallium/drivers/crocus/crocus_state.c
+++ b/src/gallium/drivers/crocus/crocus_state.c
@@ -4751,6 +4751,22 @@ crocus_populate_gs_key(const struct crocus_context *ice,
key->nr_userclip_plane_consts = cso_rast->num_clip_plane_consts;
}
+static inline GLenum
+compare_func_to_gl(enum pipe_compare_func pipe_func)
+{
+ static const unsigned map[] = {
+ [PIPE_FUNC_NEVER] = GL_NEVER,
+ [PIPE_FUNC_LESS] = GL_LESS,
+ [PIPE_FUNC_EQUAL] = GL_EQUAL,
+ [PIPE_FUNC_LEQUAL] = GL_LEQUAL,
+ [PIPE_FUNC_GREATER] = GL_GREATER,
+ [PIPE_FUNC_NOTEQUAL] = GL_NOTEQUAL,
+ [PIPE_FUNC_GEQUAL] = GL_GEQUAL,
+ [PIPE_FUNC_ALWAYS] = GL_ALWAYS,
+ };
+ return map[pipe_func];
+}
+
/**
* Populate FS program key fields based on the current state.
*/
@@ -4837,7 +4853,7 @@ crocus_populate_fs_key(const struct crocus_context *ice,
#if GFX_VER <= 5
if (fb->nr_cbufs > 1 && zsa->cso.alpha_enabled) {
- key->alpha_test_func = zsa->cso.alpha_func;
+ key->alpha_test_func = compare_func_to_gl(zsa->cso.alpha_func);
key->alpha_test_ref = zsa->cso.alpha_ref_value;
}
#endif
More information about the mesa-commit
mailing list