[Mesa-dev] [PATCH 0/5] i965: Fix gl_BaseVertex for non-indexed draws

Antia Puentes apuentes at igalia.com
Sat Apr 28 12:09:17 UTC 2018


This series is the alternative to the discarded patch 6 of the series:
https://patchwork.freedesktop.org/series/41307/

It fixes gl_BaseVertex in i965 by calculating it as:
is_indexed_draw(~0/0) & firstvertex.

I have run jenkins for the last patch of the series and
the intermediate patch 3. No regressions found.

Antia Puentes (5):
  compiler: Add SYSTEM_VALUE_IS_INDEXED_DRAW and instrinsics
  intel/compiler: Add uses_is_indexed_draw flag
  intel: emit is_indexed_draw in the same VE than gl_DrawID
  compiler/nir: Add conditional lowering for gl_BaseVertex
  intel: activate the gl_BaseVertex lowering

 src/compiler/nir/nir.c                        |  4 +++
 src/compiler/nir/nir.h                        |  6 ++++
 src/compiler/nir/nir_gather_info.c            |  1 +
 src/compiler/nir/nir_intrinsics.py            |  1 +
 src/compiler/nir/nir_lower_system_values.c    | 15 ++++++++++
 src/compiler/shader_enums.c                   |  1 +
 src/compiler/shader_enums.h                   |  7 +++++
 src/intel/compiler/brw_compiler.c             |  3 +-
 src/intel/compiler/brw_compiler.h             |  2 +-
 src/intel/compiler/brw_fs_nir.cpp             | 10 ++++---
 src/intel/compiler/brw_nir.c                  | 16 ++++++-----
 src/intel/compiler/brw_vec4.cpp               | 21 ++++++++------
 src/mesa/drivers/dri/i965/brw_context.h       | 31 ++++++++++++++------
 src/mesa/drivers/dri/i965/brw_draw.c          | 29 ++++++++++---------
 src/mesa/drivers/dri/i965/brw_draw_upload.c   | 13 ++++-----
 src/mesa/drivers/dri/i965/genX_state_upload.c | 41 +++++++++++++--------------
 16 files changed, 128 insertions(+), 73 deletions(-)

-- 
2.14.1



More information about the mesa-dev mailing list