i965: Drop a special case for guessing small miptree levels.
authorEric Anholt <eric@anholt.net>
Fri, 30 Aug 2013 19:21:38 +0000 (12:21 -0700)
committerEric Anholt <eric@anholt.net>
Mon, 30 Sep 2013 21:35:42 +0000 (14:35 -0700)
commit3b9a2dc9385cd59471fd57def0bb70d7d902b5ed
tree68feee29a5849e520d925aaac8b950e483bb1b1f
parent7de88ac38004e68b5a0a94c881cc1da1ee4371d7
i965: Drop a special case for guessing small miptree levels.

Let's say you started allocating your 2D texture with level 2 of a tree as
a 1x1 image.  The driver doesn't know if this means that level 0 is 4x4 or
4x1 or 1x4, so we would just allocate a single 1x1 and let it get copied
in to the real location at texture validate time later.

Since this is just a temporary allocation that *will* get copied, the
extra space allocation of just taking the normal path which will happen to
producing a 4x1 level 0, 2x1 level 1, and 1x1 level 2 is the right way to
go, to reduce complexity in the normal case.

No change in miptree copies over the course of a piglit run.

Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
src/mesa/drivers/dri/i965/intel_tex_image.c