mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-14 07:30:18 +01:00
pan/va: Add MUX.v2i16 and MUX.v4i8 opcodes
Basically identical to MUX.i32, slight differences in opcode and swizzling only. Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15182>
This commit is contained in:
parent
97f8fad37b
commit
20fce28dfd
1 changed files with 28 additions and 0 deletions
|
|
@ -1721,6 +1721,34 @@
|
|||
<src>Mask</src>
|
||||
</ins>
|
||||
|
||||
<ins name="MUX.v2i16" title="Mux" dests="1" opcode="0xB9" unit="SFU">
|
||||
<desc>
|
||||
Mux between A and B based on the provided mask. The condition specified
|
||||
as the `mux` modifier is evaluated on the mask. If true, `A` is chosen,
|
||||
else `B` is chosen. The `bit` modifier acts bitwise, equivalent to
|
||||
`bitselect()` in OpenCL, so `MUX.i32.bit A, B, mask` calculates
|
||||
`(A & mask) | (A & ~mask)`.
|
||||
</desc>
|
||||
<mod name="mux" start="32" size="2"/>
|
||||
<src swizzle="true">A</src>
|
||||
<src swizzle="true">B</src>
|
||||
<src swizzle="true">Mask</src>
|
||||
</ins>
|
||||
|
||||
<ins name="MUX.v4i8" title="Mux" dests="1" opcode="0xBA" unit="SFU">
|
||||
<desc>
|
||||
Mux between A and B based on the provided mask. The condition specified
|
||||
as the `mux` modifier is evaluated on the mask. If true, `A` is chosen,
|
||||
else `B` is chosen. The `bit` modifier acts bitwise, equivalent to
|
||||
`bitselect()` in OpenCL, so `MUX.i32.bit A, B, mask` calculates
|
||||
`(A & mask) | (A & ~mask)`.
|
||||
</desc>
|
||||
<mod name="mux" start="32" size="2"/>
|
||||
<src>A</src>
|
||||
<src>B</src>
|
||||
<src>Mask</src>
|
||||
</ins>
|
||||
|
||||
<ins name="CUBE_SSEL" title="Cube S-coordinate select" dests="1" opcode="0xBC" opcode2="0" unit="SFU">
|
||||
<desc>During a cube map transform, select the S coordinate given a selected face.</desc>
|
||||
<src absneg="true">Z coordinate as 32-bit floating point</src>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue