Patches 1, 3, 4, 6, 7, 8, and 10 are Reviewed-by: Ian Romanick <ian.d.roman...@intel.com>
I sent trivial comments for patch 2. I sent comments for patches 5 and 9. On 10/28/2013 03:33 PM, Fredrik Höglund wrote: > This extension decouples the vertex attributes from the vertex buffer > bindings, making it possible to change buffers without having to > respecify the formats. The mapping between attributes and vertex > buffer bindings also becomes configurable. > > This series adds new state structs and changes the gl*Pointer() > functions to update the new states as described in the specification. > To avoid making invasive changes in the vbo module I decided to keep > the gl_client_arrays for now. Those are now derived from the > gl_vertex_attrib_array and gl_vertex_buffer_binding states. > In theory this should also make it possible to incrementally port > other parts of Mesa to use the new states directly. > > Note that this adds a glVertexAttribLFormat() entry point. > Mesa doesn't support double-precision attributes (yet), but the > GL specification says that the results of using a glVertex*L*() > function to set a non-double precision attribute are undefined, > so I don't think this is a problem. > > The extension is written against the GL 4.2 specification, and > based on the tables it refers to one can infer that it requires > ARB_vertex_array_bgra, ARB_vertex_type_2_10_10_10_rev and > ARB_ES2_compatibility. I think the dependencies section should > have language that removes references to vertex formats added by > those extensions when they're not supported, so in this series > I have enabled the extension unconditionally. > > There are no regressions with piglit quick.tests. > > Fredrik Höglund (11): > mesa: Restore gl_array_object::NewArray > mesa: Split out the format code from update_array() > mesa: Rename gl_array_object::VertexAttrib to _VertexAttrib > glapi: Add infrastructure for ARB_vertex_attrib_binding > mesa: Add ARB_vertex_attrib_binding > mesa: Don't use derived vertex state in the FF vertex program > mesa: Don't use derived vertex state in Get* queries > mesa: Don't use derived vertex state in check_valid_to_render() > mesa: Add Get* support for ARB_vertex_attrib_binding > mesa: Handle zero-stride arrays in _mesa_update_array_max_element() > mesa: Optimize rebinding the same VBO > > src/mapi/glapi/gen/ARB_vertex_attrib_binding.xml | 58 ++ > src/mapi/glapi/gen/Makefile.am | 1 + > src/mapi/glapi/gen/gl_API.xml | 6 +- > src/mesa/main/api_arrayelt.c | 43 +- > src/mesa/main/arrayobj.c | 73 ++- > src/mesa/main/arrayobj.h | 5 + > src/mesa/main/attrib.c | 7 +- > src/mesa/main/bufferobj.c | 4 +- > src/mesa/main/context.c | 4 + > src/mesa/main/enable.c | 2 + > src/mesa/main/extensions.c | 1 + > src/mesa/main/get.c | 30 +- > src/mesa/main/get_hash_params.py | 17 +- > src/mesa/main/mtypes.h | 53 +- > src/mesa/main/state.c | 4 + > src/mesa/main/tests/dispatch_sanity.cpp | 12 +- > src/mesa/main/varray.c | 689 ++++++++++++++++++--- > src/mesa/main/varray.h | 77 ++- > src/mesa/vbo/vbo_exec_array.c | 12 +- > 19 files changed, 946 insertions(+), 152 deletions(-) > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev