[Mesa-dev] [PATCH 0/7] Use byte offsets for ubo pulls

Jason Ekstrand jason at jlekstrand.net
Mon Nov 23 18:11:39 PST 2015


This little patch series converts both backends to use byte offsets for UBO
pulls.  This has the advantage of allowing us to just use a stried of 1 on
the surface in both cases and unifies surface state across backends.
Unfortunately, this does not unify it with SSBOs because they use
SURFACEFORMAT_RAW and, according to Curro, untyped image load/store
instructions get grumpy if they're not on a RAW surface.

Jason Ekstrand (7):
  i965/vec4: Use byte offsets for UBO pulls on Sandy Bridge
  i965/fs: Use a stride of 1 and byte offsets for UBOs
  i965/vec4: Use a stride of 1 and byte offsets for UBOs
  i965/nir: Remove unused indirect handling
  i965/nir: Add a nir_lower_uniforms helper
  i965/fs: Make uniform offsets be in terms of bytes
  i965/vec4: Make uniform offsets be in terms of bytes

 src/mesa/drivers/dri/i965/brw_fs.cpp             | 12 ++---
 src/mesa/drivers/dri/i965/brw_fs_nir.cpp         | 65 ++++++++----------------
 src/mesa/drivers/dri/i965/brw_nir.c              | 27 ++++++++++
 src/mesa/drivers/dri/i965/brw_vec4_generator.cpp | 17 ++++++-
 src/mesa/drivers/dri/i965/brw_vec4_nir.cpp       | 14 ++---
 src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp   | 14 ++---
 src/mesa/drivers/dri/i965/brw_wm_surface_state.c |  5 +-
 7 files changed, 81 insertions(+), 73 deletions(-)

-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list