[Mesa-dev] [PATCH v3 00/17] GLSL 1.50 interface blocks support
Jordan Justen
jordan.l.justen at intel.com
Mon Mar 25 17:41:25 PDT 2013
git://people.freedesktop.org/~jljusten/mesa interface-blocks-v3
v3:
* Several clean-ups based on v2 code review
* Fix (proposed) piglit test:
execution/interface-blocks-same-uniform-varying-name.shader_test
(varying interface block having the same name as a uniform
interface block.)
* Fix (proposed) piglit test:
compiler/interface-blocks-invalid-member-qualifiers.shader_test
v2:
* 3 new patches added to series
* Add support for interface block instance arrays
* Add support for rejecting unmatched interface blocks
during the linking phase.
* Known issue: fails new piglit glsl-1.50 test:
execution/interface-blocks-same-uniform-varying-name.shader_test
v1:
* Initial support for GLSL 1.50 interface block support
* Known issue: interface block arrays are not working
* Known issue: rejection of unmatched interface blocks
is not working
* Piglit tests for known issues have been sent to piglit list
Jordan Justen (17):
glsl: rename ast_uniform_block to ast_interface_block
glsl parser: rename uniform block to interface block
glsl: parse in/out types for interface blocks
glsl parser: reject VS+in & FS+out interface blocks
glsl parser: on desktop GL require GLSL 150 for instance names
glsl parser: handle interface block member qualifier
glsl ast_to_hir: reject interpolation qualifiers for uniform blocks
glsl parser: allow in & out for interface block members
glsl_symbol_table: add interface block namespaces
glsl ast_to_hir: move uniform block symbols to interface blocks
namespace
glsl ast_to_hir: reject row/column_major for in/out interface blocks
glsl ast_to_hir: support in/out for interface blocks
glsl linker: remove interface block instance names
glsl link_varyings: link interface blocks using the block name
glsl linker: support arrays of interface block instances
glsl linker: compare interface blocks during intrastage linking
glsl linker: compare interface blocks during interstage linking
src/glsl/Makefile.sources | 2 +
src/glsl/ast.h | 4 +-
src/glsl/ast_to_hir.cpp | 46 ++++--
src/glsl/glsl_parser.yy | 182 ++++++++++++++++------
src/glsl/glsl_symbol_table.cpp | 84 +++++++++-
src/glsl/glsl_symbol_table.h | 4 +
src/glsl/interface_blocks.cpp | 129 +++++++++++++++
src/glsl/interface_blocks.h | 36 +++++
src/glsl/ir_optimization.h | 1 +
src/glsl/link_varyings.cpp | 33 +++-
src/glsl/linker.cpp | 19 +++
src/glsl/lower_named_interface_blocks.cpp | 241 +++++++++++++++++++++++++++++
12 files changed, 711 insertions(+), 70 deletions(-)
create mode 100644 src/glsl/interface_blocks.cpp
create mode 100644 src/glsl/interface_blocks.h
create mode 100644 src/glsl/lower_named_interface_blocks.cpp
--
1.7.10.4
More information about the mesa-dev
mailing list