Module: Mesa
Branch: main
Commit: 62789086e46c96ce5cc27a8ac7cfc5311a25aaf7
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=62789086e46c96ce5cc27a8ac7cfc5311a25aaf7

Author: Mike Blumenkrantz <[email protected]>
Date:   Wed Mar 22 12:58:50 2023 -0400

aux/trace: dump blend states with enums

this is more readable

Reviewed-by: Matti Hämäläinen <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22164>

---

 src/gallium/auxiliary/driver_trace/enums2names.py  |  3 +++
 src/gallium/auxiliary/driver_trace/tr_dump.h       |  8 ++++++++
 src/gallium/auxiliary/driver_trace/tr_dump_state.c | 14 +++++++-------
 3 files changed, 18 insertions(+), 7 deletions(-)

diff --git a/src/gallium/auxiliary/driver_trace/enums2names.py 
b/src/gallium/auxiliary/driver_trace/enums2names.py
index 32e00e80dfa..8b4f2482cfe 100755
--- a/src/gallium/auxiliary/driver_trace/enums2names.py
+++ b/src/gallium/auxiliary/driver_trace/enums2names.py
@@ -50,6 +50,9 @@ lst_enum_include = [
     "pipe_compute_cap",
     "pipe_resource_param",
     "pipe_fd_type",
+    "pipe_blendfactor",
+    "pipe_blend_func",
+    "pipe_logicop",
 ]
 
 
diff --git a/src/gallium/auxiliary/driver_trace/tr_dump.h 
b/src/gallium/auxiliary/driver_trace/tr_dump.h
index 570bc1b8fc7..298fe46a89b 100644
--- a/src/gallium/auxiliary/driver_trace/tr_dump.h
+++ b/src/gallium/auxiliary/driver_trace/tr_dump.h
@@ -190,6 +190,14 @@ bool trace_dump_is_triggered(void);
       trace_dump_member_end(); \
    } while(0)
 
+
+#define trace_dump_member_enum(_obj, _member, _value) \
+   do { \
+      trace_dump_member_begin(#_member); \
+      trace_dump_enum(_value); \
+      trace_dump_member_end(); \
+   } while(0)
+
 #define trace_dump_arg_array(_type, _arg, _size) \
    do { \
       trace_dump_arg_begin(#_arg); \
diff --git a/src/gallium/auxiliary/driver_trace/tr_dump_state.c 
b/src/gallium/auxiliary/driver_trace/tr_dump_state.c
index 20b507c4efb..5dd02c40320 100644
--- a/src/gallium/auxiliary/driver_trace/tr_dump_state.c
+++ b/src/gallium/auxiliary/driver_trace/tr_dump_state.c
@@ -405,13 +405,13 @@ static void trace_dump_rt_blend_state(const struct 
pipe_rt_blend_state *state)
 
    trace_dump_member(uint, state, blend_enable);
 
-   trace_dump_member(uint, state, rgb_func);
-   trace_dump_member(uint, state, rgb_src_factor);
-   trace_dump_member(uint, state, rgb_dst_factor);
+   trace_dump_member_enum(state, rgb_func, 
tr_util_pipe_blend_func_name(state->rgb_func));
+   trace_dump_member_enum(state, rgb_src_factor, 
tr_util_pipe_blendfactor_name(state->rgb_src_factor));
+   trace_dump_member_enum(state, rgb_dst_factor, 
tr_util_pipe_blendfactor_name(state->rgb_dst_factor));
 
-   trace_dump_member(uint, state, alpha_func);
-   trace_dump_member(uint, state, alpha_src_factor);
-   trace_dump_member(uint, state, alpha_dst_factor);
+   trace_dump_member_enum(state, alpha_func, 
tr_util_pipe_blend_func_name(state->alpha_func));
+   trace_dump_member_enum(state, alpha_src_factor, 
tr_util_pipe_blendfactor_name(state->alpha_src_factor));
+   trace_dump_member_enum(state, alpha_dst_factor, 
tr_util_pipe_blendfactor_name(state->alpha_dst_factor));
 
    trace_dump_member(uint, state, colormask);
 
@@ -434,7 +434,7 @@ void trace_dump_blend_state(const struct pipe_blend_state 
*state)
 
    trace_dump_member(bool, state, independent_blend_enable);
    trace_dump_member(bool, state, logicop_enable);
-   trace_dump_member(uint, state, logicop_func);
+   trace_dump_member_enum(state, logicop_func, 
tr_util_pipe_logicop_name(state->logicop_func));
    trace_dump_member(bool, state, dither);
    trace_dump_member(bool, state, alpha_to_coverage);
    trace_dump_member(bool, state, alpha_to_coverage_dither);

Reply via email to