diff options
author | Eric Anholt <eric@anholt.net> | 2010-10-18 14:12:12 -0700 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2010-10-18 14:14:06 -0700 |
commit | 4af293741635aea8630e8734a8b4caf58047e91d (patch) | |
tree | d8419c36009c07257627e3e7955b39a7bc015a98 | |
parent | 641028debf0e4b03111b205088763d3d957070b2 (diff) |
i965: Avoid blits in BufferCopySubdata on gen6.
Fixes glean/bufferObject.
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_buffer_objects.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_buffer_objects.c b/src/mesa/drivers/dri/intel/intel_buffer_objects.c index fea99b2ad6..87da60a771 100644 --- a/src/mesa/drivers/dri/intel/intel_buffer_objects.c +++ b/src/mesa/drivers/dri/intel/intel_buffer_objects.c @@ -559,7 +559,7 @@ intel_bufferobj_copy_subdata(struct gl_context *ctx, return; /* If we're in system memory, just map and memcpy. */ - if (intel_src->sys_buffer || intel_dst->sys_buffer) { + if (intel_src->sys_buffer || intel_dst->sys_buffer || intel->gen >= 6) { /* The same buffer may be used, but note that regions copied may * not overlap. */ @@ -582,6 +582,7 @@ intel_bufferobj_copy_subdata(struct gl_context *ctx, intel_bufferobj_unmap(ctx, GL_COPY_READ_BUFFER, src); intel_bufferobj_unmap(ctx, GL_COPY_WRITE_BUFFER, dst); } + return; } /* Otherwise, we have real BOs, so blit them. */ |