[Mesa-dev] [PATCH v4 0/9] i965/gen7 instanced GS support for ARB_gpu_shader5
Jordan Justen
jordan.l.justen at intel.com
Thu Feb 6 18:28:00 PST 2014
v4:
* Merge with recent compute shader parsing of
input layout qualifiers
v3:
* Fix major brokenness of dual instance mode operation
using Paul's suggestions
* Update parsing to allow separate primitive and
invocation declarations. Fixes piglit test:
spec/arb_gpu_shader5/execution/invocation-id-in-separate-gs
* New: glsl: Generate error for invalid input layout declarations
This is made easier by the in_qualifier addition in
this series, but it otherwise an unrelated bug fix.
* Added check for valid invocation count values
v2:
* Convert gl_InvocationID to a system value
No piglit regressions on HSW.
Instanced GS support requires overriding ARB_gpu_shader5 via
MESA_EXTENSION_OVERRIDE=GL_ARB_gpu_shader5, since not all
parts of GL_ARB_gpu_shader5 are enabled.
Patches are available at:
git://people.freedesktop.org/~jljusten/mesa gs-inv-id-v4
Jordan Justen (9):
glsl: convert GS input primitive to use ast_type_qualifier
glsl: Generate error for invalid input layout declarations
glsl: parse invocations layout qualifier for ARB_gpu_shader5
glsl/linker: produce gl_shader_program Geom.Invocations
mesa: initialize gl_geometry_program Invocations field
main/shaderapi: GL_GEOMETRY_SHADER_INVOCATIONS GetProgramiv support
glsl: add gl_InvocationID variable for ARB_gpu_shader5
i965: support gl_InvocationID for gen7
i965: support instanced GS on gen7
src/glsl/ast.h | 16 +++-
src/glsl/ast_to_hir.cpp | 5 +-
src/glsl/ast_type.cpp | 110 ++++++++++++++++++++++
src/glsl/builtin_variables.cpp | 2 +
src/glsl/glsl_parser.yy | 73 +++++---------
src/glsl/glsl_parser_extras.cpp | 10 +-
src/glsl/glsl_parser_extras.h | 7 +-
src/glsl/linker.cpp | 18 ++++
src/mesa/drivers/dri/i965/brw_context.h | 2 +
src/mesa/drivers/dri/i965/brw_defines.h | 13 +++
src/mesa/drivers/dri/i965/brw_shader.cpp | 2 +
src/mesa/drivers/dri/i965/brw_vec4.h | 1 +
src/mesa/drivers/dri/i965/brw_vec4_generator.cpp | 20 ++++
src/mesa/drivers/dri/i965/brw_vec4_gs.c | 2 +
src/mesa/drivers/dri/i965/brw_vec4_gs_visitor.cpp | 22 ++++-
src/mesa/drivers/dri/i965/gen7_gs_state.c | 2 +
src/mesa/main/mtypes.h | 11 +++
src/mesa/main/shaderapi.c | 7 ++
src/mesa/program/program.c | 1 +
src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 1 +
src/mesa/state_tracker/st_program.c | 1 +
21 files changed, 261 insertions(+), 65 deletions(-)
--
1.9.rc1
More information about the mesa-dev
mailing list