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 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev