aboutsummaryrefslogtreecommitdiffstats
path: root/src/compiler
diff options
context:
space:
mode:
authorBoris Brezillon <[email protected]>2020-01-31 09:34:48 +0100
committerMarge Bot <[email protected]>2020-02-05 15:41:55 +0000
commitf5619f50738c0ea2bee49d982e88f18496d7514a (patch)
treeb612def891615b71b4d3a75eb03ec37eae5b235c /src/compiler
parent59488cbbaca1268841fe5ba42d0a1202b33be23b (diff)
pan/midgard: Turn Z/S stores into zs_output_pan intrinsics
Midgard can't write depth and stencil separately. It has to happen in a single store operation containing both. Let's add a panfrost specific intrinsic and turn all depth/stencil stores into a packed depth+stencil one. Note that this intrinsic is not yet handled in emit_intrinsic(), but we'll address that later. Signed-off-by: Boris Brezillon <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3697>
Diffstat (limited to 'src/compiler')
-rw-r--r--src/compiler/nir/nir_intrinsics.py1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/compiler/nir/nir_intrinsics.py b/src/compiler/nir/nir_intrinsics.py
index 292933bd065..026f715edca 100644
--- a/src/compiler/nir/nir_intrinsics.py
+++ b/src/compiler/nir/nir_intrinsics.py
@@ -858,6 +858,7 @@ intrinsic("load_global_ir3", [2, 1], dest_comp=0, indices=[ACCESS, ALIGN_MUL, AL
# src[] = { value }
store("raw_output_pan", 1, [])
+store("zs_output_pan", 1, [COMPONENT])
load("raw_output_pan", 0, [], [CAN_ELIMINATE, CAN_REORDER])
load("output_u8_as_fp16_pan", 0, [], [CAN_ELIMINATE, CAN_REORDER])