mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-09 17:00:13 +01:00
gallium: add TGSI_PROPERTY_MUL_ZERO_WINS
This will be useful for proper D3D9 emulation, where this behavior is expected by some shaders. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Reviewed-by: Axel Davy <axel.davy@ens.fr>
This commit is contained in:
parent
573bf0940a
commit
a2b2cd81d1
3 changed files with 18 additions and 3 deletions
|
|
@ -148,7 +148,8 @@ const char *tgsi_property_names[TGSI_PROPERTY_COUNT] =
|
|||
"NEXT_SHADER",
|
||||
"CS_FIXED_BLOCK_WIDTH",
|
||||
"CS_FIXED_BLOCK_HEIGHT",
|
||||
"CS_FIXED_BLOCK_DEPTH"
|
||||
"CS_FIXED_BLOCK_DEPTH",
|
||||
"MUL_ZERO_WINS",
|
||||
};
|
||||
|
||||
const char *tgsi_return_type_names[TGSI_RETURN_TYPE_COUNT] =
|
||||
|
|
|
|||
|
|
@ -3547,13 +3547,26 @@ Which shader stage will MOST LIKELY follow after this shader when the shader
|
|||
is bound. This is only a hint to the driver and doesn't have to be precise.
|
||||
Only set for VS and TES.
|
||||
|
||||
TGSI_PROPERTY_CS_FIXED_BLOCK_WIDTH / HEIGHT / DEPTH
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
CS_FIXED_BLOCK_WIDTH / HEIGHT / DEPTH
|
||||
"""""""""""""""""""""""""""""""""""""
|
||||
|
||||
Threads per block in each dimension, if known at compile time. If the block size
|
||||
is known all three should be at least 1. If it is unknown they should all be set
|
||||
to 0 or not set.
|
||||
|
||||
MUL_ZERO_WINS
|
||||
"""""""""""""
|
||||
|
||||
The MUL TGSI operation (FP32 multiplication) will return 0 if either
|
||||
of the operands are equal to 0. That means that 0 * Inf = 0. This
|
||||
should be set the same way for an entire pipeline. Note that this
|
||||
applies not only to the literal MUL TGSI opcode, but all FP32
|
||||
multiplications implied by other operations, such as MAD, FMA, DP2,
|
||||
DP3, DP4, DPH, DST, LOG, LRP, XPD, and possibly others. If there is a
|
||||
mismatch between shaders, then it is unspecified whether this behavior
|
||||
will be enabled.
|
||||
|
||||
|
||||
Texture Sampling and Texture Formats
|
||||
------------------------------------
|
||||
|
||||
|
|
|
|||
|
|
@ -290,6 +290,7 @@ enum tgsi_property_name {
|
|||
TGSI_PROPERTY_CS_FIXED_BLOCK_WIDTH,
|
||||
TGSI_PROPERTY_CS_FIXED_BLOCK_HEIGHT,
|
||||
TGSI_PROPERTY_CS_FIXED_BLOCK_DEPTH,
|
||||
TGSI_PROPERTY_MUL_ZERO_WINS,
|
||||
TGSI_PROPERTY_COUNT,
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue