This is a first pass at implementing the ARB_arrays_of_arrays extension in Mesa.
This series allows the Mesa front-end to parse and compile shaders that dont 
require linking of
arrays of arrays e.g. multi dimensional uniforms. I'm sending this extension in 
parts because my
time working on this is about to decrease and I'm not sure how long it will be 
before I finish the second half.
If this is not a good idea please let me know.

Patches 3-4 need to be squashed when commited but I've split them here to make 
reviewing easier.

Patch 5 is optional

Whats missing is linking and backend support that goes with it. This includes 
the linking checks the spec talks about for geometry shaders.
Also its possible that some small changes are also needed to support multi 
dimensional unsized geom shader arrays I havent yet written
the piglit tests for this.

No piglit regressions with these patches applied.

Timothy Arceri (9):
  Mesa: Add ARB_arrays_of_arrays
  glsl: add dimension_count to glsl_types
  glsl: Add arrays_of_arrays to yacc definition
  glsl: Add array specifier to ast code
  glsl: only call mark_max_array if we are assigning an      array
  glsl: Implement ARB_arrays_of_arrays support for      constructors
  glsl: Aggregate initializer support for arrays of array
  glsl: Allow arrays of arrays as input to vertex shader
  docs: Mark ARB_arrays_of_arrays as started

 docs/GL3.txt                    |   2 +-
 src/glsl/ast.h                  |  64 +++++++++----
 src/glsl/ast_array_index.cpp    |  13 +++
 src/glsl/ast_function.cpp       |  69 ++++++++++++--
 src/glsl/ast_to_hir.cpp         | 204 +++++++++++++++++++++++++++++-----------
 src/glsl/ast_type.cpp           |   8 +-
 src/glsl/glsl_parser.yy         | 183 ++++++++++++++++++-----------------
 src/glsl/glsl_parser_extras.cpp |  97 ++++++++++++-------
 src/glsl/glsl_parser_extras.h   |   2 +
 src/glsl/glsl_types.cpp         |  15 ++-
 src/glsl/glsl_types.h           |  17 +++-
 src/mesa/main/extensions.c      |   1 +
 src/mesa/main/mtypes.h          |   1 +
 13 files changed, 464 insertions(+), 212 deletions(-)

-- 
1.8.3.1

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to