panfrost: Remove pan_shift_odd
authorAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Thu, 19 Dec 2019 21:46:43 +0000 (16:46 -0500)
committerAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Wed, 25 Dec 2019 03:42:07 +0000 (22:42 -0500)
commitd36ca7c0a38dcae2e63296b38558844084e21d5d
tree0ac27f1cedd249bd1524845a3efb90b0d2e44e20
parent62ce9001c20f0135544e8ca99ef1b10aaaa7f085
panfrost: Remove pan_shift_odd

Padded counts are numbers of the form:

   n = (2k + 1) * 2^s

for k, s integers. Rather than explicitly store k and s separately and
then compute this formula on demand, it's much cleaner to store the
padded number itself, which is what you manipulate most of the time.
When you do need k,s it is easy to factor by noticing the bitwise
representation:

   s = ctz(n)
   k = n >> (s + 1)

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
src/gallium/drivers/panfrost/pan_context.c
src/panfrost/encoder/pan_attributes.c
src/panfrost/encoder/pan_encoder.h