agx: Add block_image_store instruction
This hw instruction writes out an entire block from the tilebuffer to an attached render target (PBE descriptor). It is used (only?) in end-of-tile shaders to implement write out. We need to handle it in the compiler as a prerequisite to compiling end-of-tile shaders ourselves, instead of hardcoding. Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19871>
This commit is contained in:

committed by
Marge Bot

parent
0e106681e0
commit
4a166acc93
@@ -285,6 +285,11 @@ op("stop", (0x88, 0xFFFF, 2, _), dests = 0, can_eliminate = False)
|
||||
op("trap", (0x08, 0xFFFF, 2, _), dests = 0, can_eliminate = False)
|
||||
op("writeout", (0x48, 0xFF, 4, _), dests = 0, imms = [WRITEOUT], can_eliminate = False)
|
||||
|
||||
# Sources are the image and the offset within shared memory
|
||||
# TODO: Do we need the short encoding?
|
||||
op("block_image_store", (0xB1, 0xFF, 10, _), dests = 0, srcs = 2,
|
||||
imms = [FORMAT, DIM], can_eliminate = False)
|
||||
|
||||
# Convenient aliases.
|
||||
op("mov", _, srcs = 1)
|
||||
op("not", _, srcs = 1)
|
||||
|
Reference in New Issue
Block a user