This series implements ARB_copy_image in i965 in two steps: First, we provide a meta implementation that handles the cases when both textures are uncompressed and we can leverage the already-existing code for BlitFramebuffers. The other case, when at least one texture is compressed, is handled by calling into the blitter hardware.
Jason Ekstrand (5): Add GL API support for ARB_copy_image mesa/meta: Make _mesa_meta_bind_fbo_image also take a framebuffer target mesa/meta: Add support for storing the current read buffer mesa/meta: Add a partial implementation of CopyImageSubData i965: Add support for ARB_copy_image src/mapi/glapi/gen/ARB_copy_image.xml | 28 ++ src/mapi/glapi/gen/gl_API.xml | 2 +- src/mapi/glapi/gen/gl_genexec.py | 1 + src/mesa/Makefile.sources | 2 + src/mesa/drivers/common/meta.c | 51 ++-- src/mesa/drivers/common/meta.h | 14 +- src/mesa/drivers/common/meta_blit.c | 3 +- src/mesa/drivers/common/meta_copy_image.c | 197 ++++++++++++++ src/mesa/drivers/common/meta_generate_mipmap.c | 4 +- src/mesa/drivers/dri/i965/Makefile.sources | 1 + src/mesa/drivers/dri/i965/brw_context.c | 1 + src/mesa/drivers/dri/i965/intel_copy_image.c | 172 +++++++++++++ src/mesa/drivers/dri/i965/intel_extensions.c | 1 + src/mesa/drivers/dri/i965/intel_tex.h | 2 + src/mesa/main/copyimage.c | 341 +++++++++++++++++++++++++ src/mesa/main/copyimage.h | 49 ++++ src/mesa/main/dd.h | 16 ++ src/mesa/main/extensions.c | 1 + src/mesa/main/mtypes.h | 1 + src/mesa/main/textureview.c | 34 ++- src/mesa/main/textureview.h | 4 + 21 files changed, 885 insertions(+), 40 deletions(-) create mode 100644 src/mapi/glapi/gen/ARB_copy_image.xml create mode 100644 src/mesa/drivers/common/meta_copy_image.c create mode 100644 src/mesa/drivers/dri/i965/intel_copy_image.c create mode 100644 src/mesa/main/copyimage.c create mode 100644 src/mesa/main/copyimage.h -- 2.0.3 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev