tgsi: add BALLOT/READ_* opcodes
authorIlia Mirkin <imirkin@alum.mit.edu>
Thu, 9 Feb 2017 23:38:17 +0000 (18:38 -0500)
committerNicolai Hähnle <nicolai.haehnle@amd.com>
Wed, 5 Apr 2017 13:29:34 +0000 (15:29 +0200)
commit3650d7455fd467e1674888ecf4573756a82c9033
treec59ebb8c2f96e1eb16836a910113c65992e6926e
parentd3e6f6d7f70f8d72e6916d1898f28a15c77d48db
tgsi: add BALLOT/READ_* opcodes

v2 (Nicolai):
- BALLOT isn't per-channel
- expand the documentation (also for VOTE_*)

v3:
- only BALLOT returns a 64-bit lanemask (Boyan)
- relax the requirement on READ_INVOC: the invocation number to read
  from must be uniform within a sub-group. This matches the
  GL_ARB_shader_ballot spect (and the v_readlane instruction of AMD
  GCN)

v4:
- hopefully really fix the doc of VOTE_* returns (Ilia)

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Signed-off-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com> (v2)
src/gallium/auxiliary/tgsi/tgsi_info.c
src/gallium/docs/source/tgsi.rst
src/gallium/include/pipe/p_shader_tokens.h