summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2013-08-30 12:47:02 -0700
committerEric Anholt <[email protected]>2013-09-30 14:35:42 -0700
commit97bdb4c039bb33dbbcbb43d0fd0bb24106777ae9 (patch)
tree296491ea1ae1251369be1540644fe29eb36deef0
parent6ca9b532d825797741a2fef519f17c21e0d6cb94 (diff)
i965: Don't allocate a 1-level texture when GL_GENERATE_MIPMAP is set.
Given that a teximage that calls us with this flag set will immediately proceed to allocate the other levels, we can probably just go ahead and allocate those levels now. Reduces miptree copies in piglit by about .05%. Reviewed-by: Chad Versace <[email protected]>
-rw-r--r--src/mesa/drivers/dri/i965/intel_tex_image.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/intel_tex_image.c b/src/mesa/drivers/dri/i965/intel_tex_image.c
index fe274bf1ae3..16fed95d673 100644
--- a/src/mesa/drivers/dri/i965/intel_tex_image.c
+++ b/src/mesa/drivers/dri/i965/intel_tex_image.c
@@ -60,7 +60,8 @@ intel_miptree_create_for_teximage(struct brw_context *brw,
*/
if ((intelObj->base.Sampler.MinFilter == GL_NEAREST ||
intelObj->base.Sampler.MinFilter == GL_LINEAR) &&
- intelImage->base.Base.Level == 0) {
+ intelImage->base.Base.Level == 0 &&
+ !intelObj->base.GenerateMipmap) {
lastLevel = 0;
} else {
lastLevel = _mesa_get_tex_max_num_levels(intelObj->base.Target,