panfrost/docs: Fix v9+ varyings description
Signed-off-by: Lorenzo Rossi <lorenzo.rossi@collabora.com> Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com> Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40515>
This commit is contained in:
parent
caf5a2640b
commit
f742482ef6
1 changed files with 6 additions and 8 deletions
|
|
@ -67,14 +67,14 @@ also load (flat) ints with those. We need to specify no conversion
|
|||
(``.f16.src_flat16`` or ``.f32.src_flat32``), but with those we can load both
|
||||
16-bit and 32-bit integers.
|
||||
|
||||
In this architecture the descriptors got a major update too and now there is
|
||||
just one set of descriptors for both the VS and FS.
|
||||
|
||||
In this architecture we assume the VS always uses IDVS, emitting attribute data
|
||||
with ``LEA_BUF`` (instead of ``LEA_ATTR``), and never emit varying
|
||||
``AttributeDescriptor`` for VS.
|
||||
|
||||
Challenges
|
||||
==========
|
||||
Theoretically, the output types from the VS and input types from the FS should
|
||||
always agree. In practice we cannot always trust the varyings types given to us,
|
||||
always agree. In practice we cannot trust the varyings types given to us,
|
||||
here are some challenging examples:
|
||||
|
||||
* Shaders are allowed to use the same types with different precision modifiers.
|
||||
|
|
@ -97,10 +97,8 @@ In practice you have to follow these rules:
|
|||
Current implementation rules:
|
||||
|
||||
* VS decides the memory layout
|
||||
* On v9+, FS decides the descriptor formats, VS uses auto32 for 32-bit types
|
||||
* On v7-, descriptor formats can mismatch (VS int - FS float)
|
||||
* Descriptor formats always match what the instructions are using (unless V9
|
||||
auto32)
|
||||
* Descriptor formats can mismatch between stages (eg. VS int - FS float)
|
||||
* Descriptor formats always match what the instructions are using
|
||||
|
||||
|
||||
To regain the type information:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue