Module: Mesa
Branch: master
Commit: 4a54514958789a823054322051dd1c0864df5721
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=4a54514958789a823054322051dd1c0864df5721

Author: Brian Paul <[email protected]>
Date:   Tue Jun 28 17:13:57 2016 -0600

svga: try blitting with copy region in more cases

We previously could do blits with util_resource_copy_region() when doing
'loose' format checking.  Also do blits with util_resource_copy_region()
when the blit src/dst formats (not the underlying resources) exactly
match.  Needed for GL_ARB_copy_image.

Acked-by: Roland Scheidegger <[email protected]>
Reviewed-by: Charmaine Lee <[email protected]>

---

 src/gallium/drivers/svga/svga_pipe_blit.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/svga/svga_pipe_blit.c 
b/src/gallium/drivers/svga/svga_pipe_blit.c
index 438151f..bbb6156 100644
--- a/src/gallium/drivers/svga/svga_pipe_blit.c
+++ b/src/gallium/drivers/svga/svga_pipe_blit.c
@@ -293,7 +293,13 @@ svga_blit(struct pipe_context *pipe,
       return;
    }
 
-   if (util_try_blit_via_copy_region(pipe, blit_info)) {
+   if (util_can_blit_via_copy_region(blit_info, TRUE) ||
+       util_can_blit_via_copy_region(blit_info, FALSE)) {
+      util_resource_copy_region(pipe, blit_info->dst.resource,
+                                blit_info->dst.level,
+                                blit_info->dst.box.x, blit_info->dst.box.y,
+                                blit_info->dst.box.z, blit_info->src.resource,
+                                blit_info->src.level, &blit_info->src.box);
       return; /* done */
    }
 

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to