Mesa (master): tgsi: add ArrayID documentation v2

Christian König deathsimple at kemper.freedesktop.org
Tue Mar 19 13:22:09 UTC 2013


Module: Mesa
Branch: master
Commit: 897303f8ffb78026bf6563c87c699e37465e9f33
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=897303f8ffb78026bf6563c87c699e37465e9f33

Author: Christian König <christian.koenig at amd.com>
Date:   Thu Mar 14 11:10:16 2013 +0100

tgsi: add ArrayID documentation v2

v2: further improve the text with comments from Christoph Bumiller.

Signed-off-by: Christian König <christian.koenig at amd.com>

---

 src/gallium/docs/source/tgsi.rst |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/src/gallium/docs/source/tgsi.rst b/src/gallium/docs/source/tgsi.rst
index d9a7fe9..4c55e60 100644
--- a/src/gallium/docs/source/tgsi.rst
+++ b/src/gallium/docs/source/tgsi.rst
@@ -1833,6 +1833,24 @@ If Interpolate flag is set to 1, a Declaration Interpolate token follows.
 
 If file is TGSI_FILE_RESOURCE, a Declaration Resource token follows.
 
+If Array flag is set to 1, a Declaration Array token follows.
+
+Array Declaration
+^^^^^^^^^^^^^^^^^^^^^^^^
+
+Declarations can optional have an ArrayID attribute which can be referred by
+indirect addressing operands. An ArrayID of zero is reserved and treaded as
+if no ArrayID is specified.
+
+If an indirect addressing operand refers to a specific declaration by using
+an ArrayID only the registers in this declaration are guaranteed to be
+accessed, accessing any register outside this declaration results in undefined
+behavior. Note that for compatibility the effective index is zero-based and
+not relative to the specified declaration
+
+If no ArrayID is specified with an indirect addressing operand the whole
+register file might be accessed by this operand. This is strongly discouraged
+and will prevent packing of scalar/vec2 arrays and effective alias analysis.
 
 Declaration Semantic
 ^^^^^^^^^^^^^^^^^^^^^^^^




More information about the mesa-commit mailing list