nouveau: accelerate buffer copies in resource_copy_region
[mesa.git] / src / gallium / drivers / nv50 / nv50_surface.c
index b29a736ae3cc7587092c82eef3fda4a5a1d1a731..51e702c7a3f137ca35784184f5c8df2725547037 100644 (file)
@@ -200,10 +200,10 @@ nv50_resource_copy_region(struct pipe_context *pipe,
    boolean m2mf;
    unsigned dst_layer = dstz, src_layer = src_box->z;
 
-   /* Fallback for buffers. */
    if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) {
-      util_resource_copy_region(pipe, dst, dst_level, dstx, dsty, dstz,
-                                src, src_level, src_box);
+      nouveau_copy_buffer(&nv50->base,
+                          nv04_resource(dst), dstx,
+                          nv04_resource(src), src_box->x, src_box->width);
       return;
    }