diff options
| author | 2021-05-19 16:32:03 -0300 | |
|---|---|---|
| committer | 2021-07-22 21:51:32 -0400 | |
| commit | accad56ee7cc9f77886d164701a35f1e89a3519b (patch) | |
| tree | 34b272f1f70d0c4d926877c4e960ccec0084ce17 /src/shader_recompiler/backend/glasm/emit_context.h | |
| parent | glasm: Implement gl_PointSize stores (diff) | |
| download | yuzu-accad56ee7cc9f77886d164701a35f1e89a3519b.tar.gz yuzu-accad56ee7cc9f77886d164701a35f1e89a3519b.tar.xz yuzu-accad56ee7cc9f77886d164701a35f1e89a3519b.zip | |
glasm: Implement stores to gl_ViewportIndex
Diffstat (limited to 'src/shader_recompiler/backend/glasm/emit_context.h')
| -rw-r--r-- | src/shader_recompiler/backend/glasm/emit_context.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/shader_recompiler/backend/glasm/emit_context.h b/src/shader_recompiler/backend/glasm/emit_context.h index d6b0bf73c..dd1f9ac9f 100644 --- a/src/shader_recompiler/backend/glasm/emit_context.h +++ b/src/shader_recompiler/backend/glasm/emit_context.h | |||
| @@ -11,10 +11,12 @@ | |||
| 11 | #include <fmt/format.h> | 11 | #include <fmt/format.h> |
| 12 | 12 | ||
| 13 | #include "shader_recompiler/backend/glasm/reg_alloc.h" | 13 | #include "shader_recompiler/backend/glasm/reg_alloc.h" |
| 14 | #include "shader_recompiler/stage.h" | ||
| 14 | 15 | ||
| 15 | namespace Shader { | 16 | namespace Shader { |
| 16 | struct Info; | 17 | struct Info; |
| 17 | } | 18 | struct Profile; |
| 19 | } // namespace Shader | ||
| 18 | 20 | ||
| 19 | namespace Shader::Backend { | 21 | namespace Shader::Backend { |
| 20 | struct Bindings; | 22 | struct Bindings; |
| @@ -29,7 +31,7 @@ namespace Shader::Backend::GLASM { | |||
| 29 | 31 | ||
| 30 | class EmitContext { | 32 | class EmitContext { |
| 31 | public: | 33 | public: |
| 32 | explicit EmitContext(IR::Program& program, Bindings& bindings); | 34 | explicit EmitContext(IR::Program& program, Bindings& bindings, const Profile& profile_); |
| 33 | 35 | ||
| 34 | template <typename... Args> | 36 | template <typename... Args> |
| 35 | void Add(const char* format_str, IR::Inst& inst, Args&&... args) { | 37 | void Add(const char* format_str, IR::Inst& inst, Args&&... args) { |
| @@ -55,10 +57,12 @@ public: | |||
| 55 | std::string code; | 57 | std::string code; |
| 56 | RegAlloc reg_alloc{*this}; | 58 | RegAlloc reg_alloc{*this}; |
| 57 | const Info& info; | 59 | const Info& info; |
| 60 | const Profile& profile; | ||
| 58 | 61 | ||
| 59 | std::vector<u32> texture_buffer_bindings; | 62 | std::vector<u32> texture_buffer_bindings; |
| 60 | std::vector<u32> texture_bindings; | 63 | std::vector<u32> texture_bindings; |
| 61 | 64 | ||
| 65 | Stage stage{}; | ||
| 62 | std::string_view stage_name = "invalid"; | 66 | std::string_view stage_name = "invalid"; |
| 63 | }; | 67 | }; |
| 64 | 68 | ||