mirror of
https://github.com/shadps4-emu/sirit.git
synced 2026-01-31 00:55:22 +01:00
Implement OpGroupNonUniformBroadcastFirst
- update to latest spirv-headers - add OpGroupNonUniformBroadcastFirst
This commit is contained in:
2
externals/SPIRV-Headers
vendored
2
externals/SPIRV-Headers
vendored
Submodule externals/SPIRV-Headers updated: a3fdfe8146...2acb319af3
@@ -1212,6 +1212,10 @@ public:
|
||||
// the group.
|
||||
Id OpGroupNonUniformBroadcast(Id result_type, Id scope, Id value, Id id);
|
||||
|
||||
// Result is the Value of the invocation from the active invocation with the lowest id
|
||||
// in the group to all active invocations in the group.
|
||||
Id OpGroupNonUniformBroadcastFirst(Id result_type, Id scope, Id value);
|
||||
|
||||
/// 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, Id scope, Id value, Id mask);
|
||||
|
||||
@@ -42,6 +42,12 @@ Id Module::OpGroupNonUniformBroadcast(Id result_type, Id scope, Id value, Id id)
|
||||
<< id << EndOp{};
|
||||
}
|
||||
|
||||
Id Module::OpGroupNonUniformBroadcastFirst(Id result_type, Id scope, Id value) {
|
||||
code->Reserve(5);
|
||||
return *code << OpId{spv::Op::OpGroupNonUniformBroadcastFirst, result_type} << scope << value
|
||||
<< EndOp{};
|
||||
}
|
||||
|
||||
Id Module::OpGroupNonUniformShuffleXor(Id result_type, Id scope, Id value, Id mask) {
|
||||
code->Reserve(6);
|
||||
return *code << OpId{spv::Op::OpGroupNonUniformShuffleXor, result_type} << scope << value
|
||||
|
||||
Reference in New Issue
Block a user