From 3f31a547e04b9899f1e572faa7a830aca107033e Mon Sep 17 00:00:00 2001
From: ameerj <52414509+ameerj@users.noreply.github.com>
Date: Tue, 8 Jun 2021 21:22:50 -0400
Subject: glsl: Implement more attribute getters and setters

---
 src/shader_recompiler/backend/glsl/emit_context.cpp | 4 ++++
 1 file changed, 4 insertions(+)

(limited to 'src/shader_recompiler/backend/glsl/emit_context.cpp')

diff --git a/src/shader_recompiler/backend/glsl/emit_context.cpp b/src/shader_recompiler/backend/glsl/emit_context.cpp
index 6c28286446..e0d6785545 100644
--- a/src/shader_recompiler/backend/glsl/emit_context.cpp
+++ b/src/shader_recompiler/backend/glsl/emit_context.cpp
@@ -239,6 +239,7 @@ bool UsesTyplessImage(const Info& info) {
 EmitContext::EmitContext(IR::Program& program, Bindings& bindings, const Profile& profile_,
                          const RuntimeInfo& runtime_info_)
     : info{program.info}, profile{profile_}, runtime_info{runtime_info_} {
+    header += "#pragma optionNV(fastmath off)\n";
     SetupExtensions(header);
     stage = program.stage;
     switch (program.stage) {
@@ -351,6 +352,9 @@ void EmitContext::SetupExtensions(std::string&) {
     if (info.uses_sparse_residency) {
         header += "#extension GL_ARB_sparse_texture2 : enable\n";
     }
+    if (info.stores_viewport_mask && profile.support_viewport_mask) {
+        header += "#extension GL_NV_viewport_array2 : enable\n";
+    }
     if (UsesTyplessImage(info)) {
         header += "#extension GL_EXT_shader_image_load_formatted : enable\n";
     }
-- 
cgit v1.2.3-70-g09d2