Add OpSubgroupBallotKHR and vote instructions

This commit is contained in:
ReinUsesLisp 2019-11-10 21:15:45 -03:00
parent 688d6d9799
commit 71b53b855a
2 changed files with 37 additions and 0 deletions

View file

@ -941,11 +941,24 @@ public:
// Group
/// Computes a bitfield value combining the Predicate value from all invocations in the current
/// Subgroup that execute the same dynamic instance of this instruction.
Id OpSubgroupBallotKHR(Id result_type, Id predicate);
/// Return the value from the invocation in the subgroup with an invocation ID equal to index.
/// The index must be the same for all active invocations in the subgroup, otherwise the results
/// are undefined.
Id OpSubgroupReadInvocationKHR(Id result_type, Id value, Id index);
/// TBD
Id OpSubgroupAllKHR(Id result_type, Id predicate);
/// TBD
Id OpSubgroupAnyKHR(Id result_type, Id predicate);
/// TBD
Id OpSubgroupAllEqualKHR(Id result_type, Id predicate);
/// Return the value of the invocation identified by the current invocation's id within the
/// group xor'ed with mask.
Id OpGroupNonUniformShuffleXor(Id result_type, spv::Scope scope, Id value, Id mask);