Skip to content

intel/blorp: A few BLOCS fixes

Kenneth Graunke requested to merge kwg/mesa:blocs-partial into main

I've been working on a series to hook up BLOCS in iris for blits and copies. This MR is a few patches from that series which are simple and ready to land (the rest need more work first).

  • The first patch fixes blits/copies of rectangles that aren't workgroup aligned.
  • The second is a minor fix for stencil blits.
  • The third safeguards against trying to use BLOCS for things it can't do. Nobody is doing this, but I accidentally did when enabling it in iris, and the assert is a nice guardrail.
  • The fourth says no to multisampled blits via compute. Our compiler doesn't support typed image writes to MSAA surfaces (so we can't write the destination) and the BLORP code assumes we use per-sample pixel shader dispatch. There is no compute solution implemented today. Perhaps we should implement this, but better to say no for now. (anv doesn't use this path today so this shouldn't actually impact anything currently.)

Still to come: saying no to copies involving formats which support CCS_E on Tigerlake but don't support typed image writes, some depth format fixes, and some other aux-related failures on Tigerlake which I still haven't tracked down.

Merge request reports