diff options
author | Dave Airlie <[email protected]> | 2015-05-27 17:35:32 +1000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2019-04-09 11:19:38 +1000 |
commit | 00fe67c01545030a10387fe939275bae2da2d7dd (patch) | |
tree | 6bf0356b3aa6a756d2d68bb67ca7abb361047742 /src/gallium/auxiliary/tgsi/tgsi_exec.h | |
parent | 333746011d0ac8e7a99587b61fdada3e351b30a3 (diff) |
tgsi: add support for geometry shader streams.
This adds support to retrieve the primitive counts
for each stream, along with the offset for each
primitive into the output array.
It also adds support for parsing the stream argument
to the emit and end instructions.
Reviewed-by: Roland Scheidegger <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/auxiliary/tgsi/tgsi_exec.h')
-rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi_exec.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/gallium/auxiliary/tgsi/tgsi_exec.h b/src/gallium/auxiliary/tgsi/tgsi_exec.h index 6d4ac381421..a11b79c6553 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_exec.h +++ b/src/gallium/auxiliary/tgsi/tgsi_exec.h @@ -281,7 +281,14 @@ struct tgsi_sampler #define TGSI_EXEC_TEMP_ADDR (TGSI_EXEC_NUM_TEMPS + 8) #define TGSI_EXEC_NUM_ADDRS 3 -#define TGSI_EXEC_NUM_TEMP_EXTRAS 12 +#define TGSI_EXEC_TEMP_PRIMITIVE_S1_I (TGSI_EXEC_NUM_TEMPS + 11) +#define TGSI_EXEC_TEMP_PRIMITIVE_S1_C 0 +#define TGSI_EXEC_TEMP_PRIMITIVE_S2_I (TGSI_EXEC_NUM_TEMPS + 12) +#define TGSI_EXEC_TEMP_PRIMITIVE_S2_C 1 +#define TGSI_EXEC_TEMP_PRIMITIVE_S3_I (TGSI_EXEC_NUM_TEMPS + 13) +#define TGSI_EXEC_TEMP_PRIMITIVE_S3_C 2 + +#define TGSI_EXEC_NUM_TEMP_EXTRAS 14 @@ -312,6 +319,8 @@ struct tgsi_sampler #define TGSI_MAX_MISC_INPUTS 8 +#define TGSI_MAX_VERTEX_STREAMS 4 + /** function call/activation record */ struct tgsi_call_record { @@ -377,7 +386,8 @@ struct tgsi_exec_machine enum pipe_shader_type ShaderType; /**< PIPE_SHADER_x */ /* GEOMETRY processor only. */ - unsigned *Primitives; + unsigned *Primitives[TGSI_MAX_VERTEX_STREAMS]; + unsigned *PrimitiveOffsets[TGSI_MAX_VERTEX_STREAMS]; unsigned NumOutputs; unsigned MaxGeometryShaderOutputs; unsigned MaxOutputVertices; |