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

Anuj Phogat anuj.phogat at gmail.com
Fri Nov 1 00:33:33 CET 2013


Changes in V3: Incorporate review comments from Brian, Ian and Paul. Major
changes are related to fixing code generation for simd16 and enabling simd16
dispatch on gen6, gen7.

Although I've received r-b on all the patches (except patch 6/12) in this
series, I'm sending out the final version of patches before I push them
upstream.

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-11

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
  glsl: Add new builtins required by GL_ARB_sample_shading
  mesa: Add a helper function _mesa_get_min_invocations_per_fragment()
  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                     |   5 +-
 src/mapi/glapi/gen/gl_API.xml                      |   4 +-
 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               | 127 +++++++++++++++++++++
 src/mesa/drivers/dri/i965/brw_fs.h                 |  14 +++
 src/mesa/drivers/dri/i965/brw_fs_generator.cpp     |  71 ++++++++++++
 .../drivers/dri/i965/brw_fs_vector_splitting.cpp   |   1 +
 src/mesa/drivers/dri/i965/brw_fs_visitor.cpp       |  19 +++
 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          |  61 +++++++++-
 src/mesa/drivers/dri/i965/gen7_wm_state.c          |  61 +++++++++-
 src/mesa/drivers/dri/i965/intel_extensions.c       |   1 +
 src/mesa/main/enable.c                             |  18 +++
 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            |   4 +-
 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                         |  32 ++++++
 src/mesa/program/program.h                         |   3 +
 34 files changed, 549 insertions(+), 15 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