diff options
author | Iago Toral Quiroga <[email protected]> | 2019-07-09 09:15:02 +0200 |
---|---|---|
committer | Iago Toral Quiroga <[email protected]> | 2019-07-12 09:16:38 +0200 |
commit | b0eec9e27d753af11f82d64bd329234a3291339c (patch) | |
tree | 4ce9e6cbd0e4b8d70d9a6f247b28e67997f4e0f4 /src/compiler/nir/nir_intrinsics.py | |
parent | 6af1bdefa975864a62a043a5ec1919c415dc9c4d (diff) |
nir: add a new v3d-specific intrinsic for tile buffer color reads
This is intended to be used, for example, with OpenGL logic operations. It
takes a render target as source and a sample index in the base index for
MSAA color reads.
v2: drop the CAN_ELIMINATE and CAN_REORDER flags (Eric).
Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'src/compiler/nir/nir_intrinsics.py')
-rw-r--r-- | src/compiler/nir/nir_intrinsics.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/compiler/nir/nir_intrinsics.py b/src/compiler/nir/nir_intrinsics.py index 0fd8a30eb4d..a37297ca440 100644 --- a/src/compiler/nir/nir_intrinsics.py +++ b/src/compiler/nir/nir_intrinsics.py @@ -776,3 +776,12 @@ intrinsic("ssbo_atomic_comp_swap_ir3", src_comp=[1, 1, 1, 1, 1], dest_comp=1) # src[] = { value } store("raw_output_pan", 1, []) load("raw_output_pan", 0, [], [CAN_ELIMINATE, CAN_REORDER]) + +# V3D-specific instrinc for tile buffer color reads. +# +# The hardware requires that we read the samples and components of a pixel +# in order, so we cannot eliminate or remove any loads in a sequence. +# +# src[] = { render_target } +# BASE = sample index +load("tlb_color_v3d", 1, [BASE, COMPONENT], []) |