llvmpipe: Do unswizzling in parallel when flushing for transfers.
authorJosé Fonseca <jfonseca@vmware.com>
Fri, 4 Jun 2010 11:22:14 +0000 (12:22 +0100)
committerJosé Fonseca <jfonseca@vmware.com>
Fri, 4 Jun 2010 12:05:59 +0000 (13:05 +0100)
src/gallium/drivers/llvmpipe/lp_flush.c

index 884e6238d4c1a4300a5d870028665dc9bc6d6483..0cd288bb73a7ad226343e10b15b0e3875f5638bd 100644 (file)
@@ -120,6 +120,13 @@ llvmpipe_flush_resource(struct pipe_context *pipe,
          if (do_not_block)
             return FALSE;
 
+         /*
+          * Do the unswizzling in parallel.
+          *
+          * XXX: Don't abuse the PIPE_FLUSH_FRAME flag for this.
+          */
+         flush_flags |= PIPE_FLUSH_FRAME;
+
          llvmpipe_flush(pipe, flush_flags, &fence);
 
          if (fence) {