intel/isl: Refactor gen7_choose_image_alignment_el
authorJason Ekstrand <jason.ekstrand@intel.com>
Tue, 9 May 2017 16:50:21 +0000 (09:50 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Wed, 17 May 2017 00:04:26 +0000 (17:04 -0700)
commit715f47cb348d2ba020507126cff5aabd8b98ac85
tree8b00faf0ac7e4d6bee98ccde2d64723f07776f1e
parent236f17a9f73935db6cddafd91e53a5fae34aae6e
intel/isl: Refactor gen7_choose_image_alignment_el

The Ivy Bridge PRM provides a nice table that handles most of the
alignment cases in one place.  For standard color buffers we have a
little freedom of choice but for most depth, stencil and compressed it's
hard-coded.  Chad's original functions split halign and valign apart and
implemented them almost entirely based on restrictions and not the
table.  This makes things way more confusing than they need to be.  This
commit gets rid of the split and makes us implement the exact table
up-front.  If our surface isn't one of the ones in the table then we
have to make real choices.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
src/intel/isl/isl_gen7.c