shader: Implement MEMBAR

This commit is contained in:
FernandoS27 2021-04-02 19:27:30 +02:00 committed by ameerj
parent ecb30c9072
commit 655f7a570a
9 changed files with 121 additions and 11 deletions

View file

@ -25,6 +25,14 @@ enum class FpRounding : u8 {
RZ, // Round towards zero
};
enum class MemoryScope : u32 {
DontCare,
Warp,
Workgroup,
Device,
System
};
struct FpControl {
bool no_contraction{false};
FpRounding rounding{FpRounding::DontCare};
@ -32,6 +40,11 @@ struct FpControl {
};
static_assert(sizeof(FpControl) <= sizeof(u32));
union BarrierInstInfo {
u32 raw;
BitField<0, 3, MemoryScope> scope;
};
union TextureInstInfo {
u32 raw;
BitField<0, 8, TextureType> type;