diff options
| author | 2021-05-21 20:56:46 -0400 | |
|---|---|---|
| committer | 2021-07-22 21:51:36 -0400 | |
| commit | 0f40b0e61ccc04216e0840e092dfe3051716b8b6 (patch) | |
| tree | 7c12a0e010dd9aecef164b10a848085957f15358 /src/shader_recompiler/backend/glsl/emit_context.cpp | |
| parent | glsl: Use std::string_view for Emit function args. (diff) | |
| download | yuzu-0f40b0e61ccc04216e0840e092dfe3051716b8b6.tar.gz yuzu-0f40b0e61ccc04216e0840e092dfe3051716b8b6.tar.xz yuzu-0f40b0e61ccc04216e0840e092dfe3051716b8b6.zip | |
glsl: Implement a few Integer instructions
Diffstat (limited to 'src/shader_recompiler/backend/glsl/emit_context.cpp')
| -rw-r--r-- | src/shader_recompiler/backend/glsl/emit_context.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/shader_recompiler/backend/glsl/emit_context.cpp b/src/shader_recompiler/backend/glsl/emit_context.cpp index 8eea6344f..b3a3e5647 100644 --- a/src/shader_recompiler/backend/glsl/emit_context.cpp +++ b/src/shader_recompiler/backend/glsl/emit_context.cpp | |||
| @@ -12,6 +12,7 @@ EmitContext::EmitContext(IR::Program& program, [[maybe_unused]] Bindings& bindin | |||
| 12 | const Profile& profile_) | 12 | const Profile& profile_) |
| 13 | : info{program.info}, profile{profile_} { | 13 | : info{program.info}, profile{profile_} { |
| 14 | std::string header = "#version 450\n"; | 14 | std::string header = "#version 450\n"; |
| 15 | SetupExtensions(header); | ||
| 15 | if (program.stage == Stage::Compute) { | 16 | if (program.stage == Stage::Compute) { |
| 16 | header += fmt::format("layout(local_size_x={},local_size_y={},local_size_z={}) in;\n", | 17 | header += fmt::format("layout(local_size_x={},local_size_y={},local_size_z={}) in;\n", |
| 17 | program.workgroup_size[0], program.workgroup_size[1], | 18 | program.workgroup_size[0], program.workgroup_size[1], |
| @@ -23,6 +24,12 @@ EmitContext::EmitContext(IR::Program& program, [[maybe_unused]] Bindings& bindin | |||
| 23 | code += "void main(){\n"; | 24 | code += "void main(){\n"; |
| 24 | } | 25 | } |
| 25 | 26 | ||
| 27 | void EmitContext::SetupExtensions(std::string& header) { | ||
| 28 | if (info.uses_int64) { | ||
| 29 | header += "#extension GL_ARB_gpu_shader_int64 : enable\n"; | ||
| 30 | } | ||
| 31 | } | ||
| 32 | |||
| 26 | void EmitContext::DefineConstantBuffers() { | 33 | void EmitContext::DefineConstantBuffers() { |
| 27 | if (info.constant_buffer_descriptors.empty()) { | 34 | if (info.constant_buffer_descriptors.empty()) { |
| 28 | return; | 35 | return; |