i965/tex: Use blorp texture upload for all CCS_E textures
authorJason Ekstrand <jason.ekstrand@intel.com>
Thu, 1 Jun 2017 00:53:34 +0000 (17:53 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Fri, 13 Oct 2017 02:58:40 +0000 (19:58 -0700)
This improves the FillTex benchmark in GLBench 2.7 by 30% on my Broxton.
On Ken's Broxton which only has single-channel ram, it improves by 210%.

v2 (Ken): Check mt->aux_usage == ISL_AUX_USAGE_CCS_E rather than using
          intel_miptree_is_lossless_compressed().

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/intel_tex_image.c

index 9ae27c70280e82e9338f8d10364e340be91d943b..ab3a4fb061522763eb8881e760d4d48b7963e51e 100644 (file)
@@ -329,7 +329,8 @@ intel_upload_tex(struct gl_context * ctx,
    if (mt && mt->format == MESA_FORMAT_S_UINT8)
       mt->r8stencil_needs_update = true;
 
-   if (_mesa_is_bufferobj(packing->BufferObj) || tex_busy) {
+   if (_mesa_is_bufferobj(packing->BufferObj) || tex_busy ||
+       mt->aux_usage == ISL_AUX_USAGE_CCS_E) {
       ok = intel_texsubimage_blorp(brw, dims, texImage,
                                    xoffset, yoffset, zoffset,
                                    width, height, depth, format, type,