[Mesa-dev] [PATCH v2 0/4] intel/isl: Add support for emitting depth/stencil

Jason Ekstrand jason at jlekstrand.net
Sat Apr 8 05:42:21 UTC 2017


This is mostly a re-send of previous patches.  The two things that have
changed over the last version is that the first patch is now actually
correct for gen6.  Prior to sending the original version, I tested it only
with Vulkan which doesn't run on gen6 so a few fields were missed.  This
version passes both GL and Vulkan.

The second change is that we now pass the result of the relocation function
calls into the address fields.  Previously, the addresses weren't properly
getting filled out so we didn't have a valid address if a relocation didn't
happen.  I have no idea how the Vulkan CTS managed to *not* catch this.

Eventually, I think I'd like to use some sort of a relocation function
pointer hook in ISL for doing these things but using the address fields
works for now.  Unfortunately, we can't use the address fields for regular
surface states because, thanks to the bottom bits of
AuxiliarySurfaceBaseAddress being used for other things, you need the
result of at least some of the packing in order to generate the reloc.  A
function pointer mechanism would solve this because it would get called
during the packing process.

Jason Ekstrand (4):
  intel/isl: Add support for emitting depth/stencil/hiz
  anv: Use ISL for emitting depth/stencil/hiz
  intel/blorp: Emit 3DSTATE_STENCIL_BUFFER before HIER_DEPTH
  intel/blorp: Use ISL for emitting depth/stencil/hiz

 src/intel/Makefile.sources             |   7 ++
 src/intel/blorp/blorp_genX_exec.h      | 119 +++++-------------
 src/intel/isl/isl.c                    |  93 ++++++++++++++
 src/intel/isl/isl.h                    |  74 +++++++++++
 src/intel/isl/isl_emit_depth_stencil.c | 199 ++++++++++++++++++++++++++++++
 src/intel/isl/isl_priv.h               |  28 +++++
 src/intel/vulkan/genX_cmd_buffer.c     | 218 ++++++---------------------------
 7 files changed, 473 insertions(+), 265 deletions(-)
 create mode 100644 src/intel/isl/isl_emit_depth_stencil.c

-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list