agx: Align the reg file for 256-bit vectors
authorAlyssa Rosenzweig <alyssa@rosenzweig.io>
Mon, 4 Sep 2023 14:03:57 +0000 (10:03 -0400)
committerAlyssa Rosenzweig <alyssa@rosenzweig.io>
Sun, 1 Oct 2023 16:32:11 +0000 (12:32 -0400)
commit0d8362b8427414d5b89c4b5b70a7a6581282698e
tree7b955f9678c1c68a355fe59a764a2533eb1ba439
parentcb14cddfa50759aea3f80bce07008f551c877ea2
agx: Align the reg file for 256-bit vectors

This fixes live range splitting with 3D textureGrad(), which involves vectors
larger than the natural 128-bit maximum and hence requires special handling.
Fixes this assert with a combination of debug flags and new patches:

   unsigned int find_best_region_to_evict(struct ra_ctx *, unsigned int,
   unsigned int *, unsigned int *):
   Assertion `(rctx->bound % size) == 0 && "register file size must be aligned
   to the maximum vector size"' failed

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
src/asahi/compiler/agx_register_allocate.c