aboutsummaryrefslogtreecommitdiffstats
path: root/src/panfrost/midgard/midgard_address.c
Commit message (Collapse)AuthorAgeFilesLines
* pan/midgard: Add address analysis frameworkAlyssa Rosenzweig2020-02-271-0/+205
Midgard has the ability to calculate addresses as part of the load/store pipeline. We'd like to make use of this to avoid doing this work on the ALU pipes. To do so, when emitting globals/SSBOs/shareds, we walk the tree looking for address arithmetic to try to parse out something the hardware can work with, letting the original instructions be DCE'd ideally. This analysis is done at the NIR level to properly account for some messy details of vectorization which we'd rather not poke at the backend level. (Originally I wrote this as a MIR pass but I'm fairly sure it was wrong.) Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3978>