diff options
author | FernandoS27 <fsahmkow27@gmail.com> | 2021-04-02 19:27:30 +0200 |
---|---|---|
committer | ameerj <52414509+ameerj@users.noreply.github.com> | 2021-07-22 21:51:26 -0400 |
commit | 655f7a570a10218ffb2ed175bb7f0b84530ccae0 (patch) | |
tree | bb95bc316718bd5c746a0b28084b3548a4aea222 /src/shader_recompiler/frontend/ir/modifiers.h | |
parent | ecb30c907266921818d5b6b03e341028fa2ea082 (diff) |
shader: Implement MEMBAR
Diffstat (limited to 'src/shader_recompiler/frontend/ir/modifiers.h')
-rw-r--r-- | src/shader_recompiler/frontend/ir/modifiers.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/shader_recompiler/frontend/ir/modifiers.h b/src/shader_recompiler/frontend/ir/modifiers.h index 90078f5353..7730c25a95 100644 --- a/src/shader_recompiler/frontend/ir/modifiers.h +++ b/src/shader_recompiler/frontend/ir/modifiers.h @@ -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; |