Mesa (master): genxml: Consistently use a numeric "MOCS" field

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Dec 14 08:45:38 UTC 2018


Module: Mesa
Branch: master
Commit: 0b44644ca6886de4201e3edd911b7d418a9d7680
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0b44644ca6886de4201e3edd911b7d418a9d7680

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Tue Dec 11 00:34:11 2018 -0800

genxml: Consistently use a numeric "MOCS" field

When we first started using genxml, we decided to represent MOCS as an
actual structure, and pack values.  However, in many places, it was more
convenient to use a numeric value rather than treating it as a struct,
so we added secondary setters in a bunch of places as well.

We were not entirely consistent, either.  Some places only had one.
Gen6 had both kinds of setters for STATE_BASE_ADDRESS, but newer gens
only had the struct-based setters.  The names were sometimes "Constant
Buffer Object Control State" instead of "Memory", making it harder to
find.  Many had prefixes like "Vertex Buffer MOCS"...in a vertex buffer
packet...which is a bit redundant.

On modern hardware, MOCS is simply an index into a table, but we were
still carrying around the structure with an "Index to MOCS Table" field,
in addition to the direct numeric setters.  This is clunky - we really
just want a number on new hardware.

This patch eliminates the struct-based setters, and makes the numeric
setters be consistently called "MOCS".  We leave the struct definition
around on Gen7-8 for reference purposes, but it is unused.

v2: Drop bonus "Depth Buffer MOCS" fields on Gen7.5 and Gen9

Reviewed-by: Jordan Justen <jordan.l.justen at intel.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg at google.com>

---

 src/intel/blorp/blorp_genX_exec.h             |  2 +-
 src/intel/genxml/gen10.xml                    | 53 ++++++++-----------
 src/intel/genxml/gen11.xml                    | 53 ++++++++-----------
 src/intel/genxml/gen6.xml                     | 28 +++-------
 src/intel/genxml/gen7.xml                     | 35 +++++-------
 src/intel/genxml/gen75.xml                    | 39 ++++++--------
 src/intel/genxml/gen8.xml                     | 47 +++++++----------
 src/intel/genxml/gen9.xml                     | 51 +++++++-----------
 src/intel/isl/isl_emit_depth_stencil.c        |  6 +--
 src/intel/vulkan/anv_private.h                | 76 +++++++++++----------------
 src/intel/vulkan/gen7_cmd_buffer.c            |  2 +-
 src/intel/vulkan/gen8_cmd_buffer.c            |  2 +-
 src/intel/vulkan/genX_cmd_buffer.c            | 19 ++++---
 src/intel/vulkan/genX_gpu_memcpy.c            |  4 +-
 src/intel/vulkan/genX_state.c                 |  6 +--
 src/mesa/drivers/dri/i965/genX_state_upload.c | 14 ++---
 16 files changed, 177 insertions(+), 260 deletions(-)

Diff:   http://cgit.freedesktop.org/mesa/mesa/diff/?id=0b44644ca6886de4201e3edd911b7d418a9d7680



More information about the mesa-commit mailing list