[Mesa-dev] [PATCH V2 00/12] Implement GL_ARB_sample_shading on Intel hardware

Anuj Phogat anuj.phogat at gmail.com
Sat Oct 26 01:44:57 CEST 2013


Patches listed below implement the GL_ARB_sample_shading extension
on Intel hardware >= gen6. I verified the implementation with a
number of piglit tests, currently under review on piglit mailing
list. Observed no piglit, gles3 CTS regressions with these patches
on SNB, IVB & HSW.
These patches can also be found at my github branch:
https://github.com/aphogat/mesa.git branch: sample-shading-8

This is the V2 of the series I posted earlier. "[PATCH 5/8] i965:
Implement FS backend for ARB_sample_shading" in my original series
is split in to 3 patches here. Changes in individual patches are
listed in commit message. Following patches in this series need a
'reviewed-by'.
4/12, 6/12, 7/12, 8/12, 9/12, 10/12, 11,12

Anuj Phogat (12):
  mesa: Add infrastructure for GL_ARB_sample_shading
  mesa: Add new functions and enums required by GL_ARB_sample_shading
  mesa: Pass number of samples as a program state variable
  mesa: Add a helper function _mesa_get_min_invocations_per_fragment()
  glsl: Add new builtins required by GL_ARB_sample_shading
  i965: Don't do vector splitting for ir_var_system_value
  i965: Add FS backend for builtin gl_SamplePosition
  i965: Add FS backend for builtin gl_SampleID
  i965: Add FS backend for builtin gl_SampleMask[]
  i965/gen6: Enable the features required for GL_ARB_sample_shading
  i965/gen7: Enable the features required for GL_ARB_sample_shading
  i965: Enable ARB_sample_shading on intel hardware >= gen6

 src/glsl/builtin_variables.cpp                     |  18 ++++
 src/glsl/glcpp/glcpp-parse.y                       |   3 +
 src/glsl/glsl_parser_extras.cpp                    |   1 +
 src/glsl/glsl_parser_extras.h                      |   2 +
 src/glsl/standalone_scaffolding.cpp                |   1 +
 src/mapi/glapi/gen/ARB_sample_shading.xml          |  19 ++++
 src/mapi/glapi/gen/GL4x.xml                        |  21 ++++
 src/mapi/glapi/gen/Makefile.am                     |   4 +-
 src/mapi/glapi/gen/gl_API.xml                      |   3 +-
 src/mesa/drivers/dri/i965/brw_context.h            |   2 +
 src/mesa/drivers/dri/i965/brw_defines.h            |   2 +
 src/mesa/drivers/dri/i965/brw_fs.cpp               | 114 +++++++++++++++++++++
 src/mesa/drivers/dri/i965/brw_fs.h                 |  14 +++
 src/mesa/drivers/dri/i965/brw_fs_generator.cpp     |  50 +++++++++
 .../drivers/dri/i965/brw_fs_vector_splitting.cpp   |   1 +
 src/mesa/drivers/dri/i965/brw_fs_visitor.cpp       |  22 ++++
 src/mesa/drivers/dri/i965/brw_wm.c                 |  12 +++
 src/mesa/drivers/dri/i965/brw_wm.h                 |   3 +
 src/mesa/drivers/dri/i965/gen6_wm_state.c          |  52 +++++++++-
 src/mesa/drivers/dri/i965/gen7_wm_state.c          |  53 +++++++++-
 src/mesa/drivers/dri/i965/intel_extensions.c       |   1 +
 src/mesa/main/enable.c                             |  16 +++
 src/mesa/main/extensions.c                         |   1 +
 src/mesa/main/get.c                                |   8 ++
 src/mesa/main/get_hash_params.py                   |   3 +
 src/mesa/main/mtypes.h                             |  13 ++-
 src/mesa/main/multisample.c                        |  18 ++++
 src/mesa/main/multisample.h                        |   2 +
 src/mesa/main/tests/dispatch_sanity.cpp            |   2 +-
 src/mesa/program/prog_print.c                      |   1 +
 src/mesa/program/prog_statevars.c                  |  11 ++
 src/mesa/program/prog_statevars.h                  |   2 +
 src/mesa/program/program.c                         |  31 ++++++
 src/mesa/program/program.h                         |   3 +
 34 files changed, 499 insertions(+), 10 deletions(-)
 create mode 100644 src/mapi/glapi/gen/ARB_sample_shading.xml
 create mode 100644 src/mapi/glapi/gen/GL4x.xml

-- 
1.8.1.4



More information about the mesa-dev mailing list