i965: Only magnify depth for 3D textures, not array textures.
authorKenneth Graunke <kenneth@whitecape.org>
Thu, 3 Mar 2016 19:13:29 +0000 (11:13 -0800)
committerKenneth Graunke <kenneth@whitecape.org>
Sat, 5 Mar 2016 05:25:08 +0000 (21:25 -0800)
commit4ba7ad6cc13b087e5e95073ab2e24de591d8b5a5
treeb631fb8f29f3a233ceff7f40da6b1b8e3d377794
parent2f76a9924e7b0b33a508ee3651b0cb2ab536a7dc
i965: Only magnify depth for 3D textures, not array textures.

When BaseLevel > 0, we magnify the dimensions to fill out the size of
miplevels [0..BaseLevel).  In particular, this was magnifying depth,
thinking that the depth doubles at each level.  This is perfectly
reasonable for 3D textures, but dead wrong for array textures.

Changing the depth != 1 condition to a target == GL_TEXTURE_3D check
should make this only happen in the appropriate cases.

Fixes about 32 dEQP tests:
- dEQP-GLES31.functional.texture.gather.*.level_{1,2}

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Cc: mesa-stable@lists.freedesktop.org
src/mesa/drivers/dri/i965/intel_tex_image.c