This is a respin of Laura's FBO patches. I've rebased them, fixed the issues I found, and added my R-b tags. Note that there is a total of 57 patches, so I'm only posting the ones that don't already have R-b tags, and the ones that are candidates for the stable branches. But all the patches are available in my arb-direct-state-access branch at:
git://people.freedesktop.org/~fredrik/mesa arb-direct-state-access There is one issue however. The plan was to only expose the extension in the core profile, but it turns out that several of the piglit tests that have been written for the extension depend on the compatibility profile. Some of those tests would have to be completely rewritten to work with the core profile. The only DSA functions that behave differently in the compatibility profile, however, are the VAO functions, and those implement both the core and the compatibility behavior. We also have the piglit tests to prove that. So in this series I'm enabling the extension in both profiles. It's easier to do that than it is to rewrite the piglit tests. If there are no objections I hope to land this series before the freeze on Friday. Fredrik Höglund (18): main: Require that the texture exists in framebuffer_texture mesa: Generate GL_INVALID_VALUE in framebuffer_texture when layer < 0 mesa: Add an extension flag for ARB_direct_state_access mesa: Make GL_TEXTURE_CUBE_MAP valid in FramebufferTextureLayer mesa: Add ARB_direct_state_access checks in XFB functions mesa: Add ARB_direct_state_access checks in buffer object functions mesa: Add ARB_direct_state_access checks in FBO functions mesa: Add ARB_direct_state_access checks in renderbuffer functions mesa: Add ARB_direct_state_access checks in texture functions mesa: Add ARB_direct_state_access checks in VAO functions mesa: Add ARB_direct_state_access checks in sampler object functions mesa: Add ARB_direct_state_access checks in program pipeline functions mesa: Add ARB_direct_state_access checks in query object functions i915: Enable ARB_direct_state_access i965: Enable ARB_direct_state_access st/mesa: Enable ARB_direct_state_access docs: Update the ARB_direct_state_access status docs/relnotes: Mark off ARB_direct_state_access for 10.6 Laura Ekstrand (39): main: Add utility function _mesa_lookup_framebuffer_err. main: Add glCreateFramebuffers. main: Add utility function _mesa_lookup_renderbuffer_err. main: Rename framebuffer renderbuffer software fallback. main: Add entry point for NamedFramebufferRenderbuffer. main: Fix the indentation in framebuffer_texture main: Fix an error generated by FramebufferTexture main: Split framebuffer_texture. main: Refactor get_texture_for_framebuffer. main: Fix indentation in get_texture_for_framebuffer. main: Add entry points for glNamedFramebufferTexture[Layer]. main: Major refactor of get_texture_for_framebuffer. main: Fix indents in former get_texture_for_framebuffer functions. main: Add entry point for CheckNamedFramebufferStatus. main: Add entry point GetNamedFramebufferAttachmentParameteriv. main: Fix whitespace in blit.c main: Refactor glBlitFramebuffer. main: Refactor _mesa_update_framebuffer. main: Refactor _mesa_[update|get]_clamp_vertex_color. main: Refactor _mesa_[update|get]_clamp_fragment_color. main: Refactor _mesa_get_clamp_read_color. main: Refactor _mesa_update_draw_buffer_bounds. main: Add entry point for BlitNamedFramebuffer. main: _mesa_blit_framebuffer updates its arbitrary framebuffers. main: Complete error conditions for glInvalidate*Framebuffer. main: Refactor invalidate_framebuffer_storage. main: Add entry points for InvalidateNamedFramebuffer[Sub]Data. main: Fake entry point for glClearNamedFramebufferiv. main: Fake entry point for glClearNamedFramebufferuiv. main: Fake entry point for glClearNamedFramebufferfv. main: Fake entry point for glClearNamedFramebufferfi. main: Add stubs for [Get]NamedFramebufferParameteri[v]. main: Refactor _mesa_drawbuffers. main: Refactor _mesa_DrawBuffer. main: Add entry point for NamedFramebufferDrawBuffer. main: Refactor _mesa_ReadBuffer. main: Add entry point for NamedFramebufferReadBuffer. main: Refactor DrawBuffers. main: Add entry point for NamedFramebufferDrawBuffers. docs/GL3.txt | 4 +- docs/relnotes/10.6.0.html | 1 + src/mapi/glapi/gen/ARB_direct_state_access.xml | 129 ++ src/mapi/glapi/gen/ARB_framebuffer_object.xml | 2 +- src/mesa/drivers/common/driverfuncs.c | 2 +- src/mesa/drivers/common/meta.c | 3 +- src/mesa/drivers/dri/i915/i830_vtbl.c | 4 +- src/mesa/drivers/dri/i915/i915_vtbl.c | 4 +- src/mesa/drivers/dri/i915/intel_extensions.c | 1 + src/mesa/drivers/dri/i915/intel_fbo.c | 2 +- src/mesa/drivers/dri/i965/intel_extensions.c | 1 + src/mesa/drivers/dri/nouveau/nouveau_fbo.c | 2 +- src/mesa/drivers/dri/r200/r200_state.c | 4 +- src/mesa/drivers/dri/radeon/radeon_common.c | 4 +- src/mesa/drivers/dri/radeon/radeon_fbo.c | 2 +- src/mesa/drivers/dri/radeon/radeon_state.c | 4 +- src/mesa/main/arrayobj.c | 22 + src/mesa/main/blend.c | 37 +- src/mesa/main/blend.h | 16 +- src/mesa/main/blit.c | 219 ++- src/mesa/main/blit.h | 13 + src/mesa/main/bufferobj.c | 105 ++ src/mesa/main/buffers.c | 261 +++- src/mesa/main/buffers.h | 29 +- src/mesa/main/clear.c | 106 ++ src/mesa/main/clear.h | 16 + src/mesa/main/context.c | 5 +- src/mesa/main/extensions.c | 2 +- src/mesa/main/fbobject.c | 1408 ++++++++++++++----- src/mesa/main/fbobject.h | 81 +- src/mesa/main/framebuffer.c | 23 +- src/mesa/main/framebuffer.h | 7 +- src/mesa/main/genmipmap.c | 7 + src/mesa/main/get.c | 8 +- src/mesa/main/mtypes.h | 1 + src/mesa/main/pipelineobj.c | 6 + src/mesa/main/queryobj.c | 7 + src/mesa/main/readpix.c | 4 +- src/mesa/main/samplerobj.c | 7 + src/mesa/main/state.c | 4 +- src/mesa/main/tests/dispatch_sanity.cpp | 18 + src/mesa/main/texenv.c | 2 +- src/mesa/main/texgetimage.c | 14 + src/mesa/main/teximage.c | 74 + src/mesa/main/texobj.c | 14 + src/mesa/main/texparam.c | 86 +- src/mesa/main/texstorage.c | 7 + src/mesa/main/transformfeedback.c | 42 + src/mesa/main/varray.c | 64 + src/mesa/program/prog_statevars.c | 4 +- src/mesa/state_tracker/st_cb_fbo.c | 2 +- src/mesa/state_tracker/st_extensions.c | 3 + src/mesa/swrast/s_texrender.c | 2 +- 53 files changed, 2318 insertions(+), 577 deletions(-) _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev