summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/backend/glasm
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2021-05-21 08:02:06 +0200
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-23 03:51:33 +0200
commit7dadb2bef3bd7f1038c61cb67c4248e1f7f324df (patch)
tree66fa91fa20989b6b1ac5da8a2c427d163f65955f /src/shader_recompiler/backend/glasm
parentglasm: Fix output patch reads (diff)
downloadyuzu-7dadb2bef3bd7f1038c61cb67c4248e1f7f324df.tar
yuzu-7dadb2bef3bd7f1038c61cb67c4248e1f7f324df.tar.gz
yuzu-7dadb2bef3bd7f1038c61cb67c4248e1f7f324df.tar.bz2
yuzu-7dadb2bef3bd7f1038c61cb67c4248e1f7f324df.tar.lz
yuzu-7dadb2bef3bd7f1038c61cb67c4248e1f7f324df.tar.xz
yuzu-7dadb2bef3bd7f1038c61cb67c4248e1f7f324df.tar.zst
yuzu-7dadb2bef3bd7f1038c61cb67c4248e1f7f324df.zip
Diffstat (limited to 'src/shader_recompiler/backend/glasm')
-rw-r--r--src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp b/src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp
index 97b0e7409..14fdc88f6 100644
--- a/src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp
+++ b/src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp
@@ -163,11 +163,8 @@ void EmitGetPatch(EmitContext& ctx, IR::Inst& inst, IR::Patch patch) {
const u32 index{IR::GenericPatchIndex(patch)};
const u32 element{IR::GenericPatchElement(patch)};
const char swizzle{"xyzw"[element]};
- if (ctx.stage == Stage::TessellationControl) {
- ctx.Add("MOV.F {},primitive.out.patch.attrib[{}].{};", inst, index, swizzle);
- } else {
- ctx.Add("MOV.F {},primitive.patch.attrib[{}].{};", inst, index, swizzle);
- }
+ const std::string_view out{ctx.stage == Stage::TessellationControl ? ".out" : ""};
+ ctx.Add("MOV.F {},primitive{}.patch.attrib[{}].{};", inst, out, index, swizzle);
}
void EmitSetPatch(EmitContext& ctx, IR::Patch patch, ScalarF32 value) {