summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2021-05-19 02:30:09 +0200
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-23 03:51:32 +0200
commit2e0d56da7e9c294f690590a1db6067f3034af665 (patch)
treeef335321699b43a6b14080af5b40c9a4fdf6524e
parentHACK: Bind stages before and after bindings (diff)
downloadyuzu-2e0d56da7e9c294f690590a1db6067f3034af665.tar
yuzu-2e0d56da7e9c294f690590a1db6067f3034af665.tar.gz
yuzu-2e0d56da7e9c294f690590a1db6067f3034af665.tar.bz2
yuzu-2e0d56da7e9c294f690590a1db6067f3034af665.tar.lz
yuzu-2e0d56da7e9c294f690590a1db6067f3034af665.tar.xz
yuzu-2e0d56da7e9c294f690590a1db6067f3034af665.tar.zst
yuzu-2e0d56da7e9c294f690590a1db6067f3034af665.zip
-rw-r--r--src/shader_recompiler/backend/glasm/emit_glasm_instructions.h3
-rw-r--r--src/shader_recompiler/backend/glasm/emit_glasm_select.cpp6
2 files changed, 5 insertions, 4 deletions
diff --git a/src/shader_recompiler/backend/glasm/emit_glasm_instructions.h b/src/shader_recompiler/backend/glasm/emit_glasm_instructions.h
index 7893f1c2a..8a707d924 100644
--- a/src/shader_recompiler/backend/glasm/emit_glasm_instructions.h
+++ b/src/shader_recompiler/backend/glasm/emit_glasm_instructions.h
@@ -179,7 +179,8 @@ void EmitCompositeExtractF64x4(EmitContext& ctx);
void EmitCompositeInsertF64x2(EmitContext& ctx, Register composite, Register object, u32 index);
void EmitCompositeInsertF64x3(EmitContext& ctx, Register composite, Register object, u32 index);
void EmitCompositeInsertF64x4(EmitContext& ctx, Register composite, Register object, u32 index);
-void EmitSelectU1(EmitContext& ctx, ScalarS32 cond, ScalarS32 true_value, ScalarS32 false_value);
+void EmitSelectU1(EmitContext& ctx, IR::Inst& inst, ScalarS32 cond, ScalarS32 true_value,
+ ScalarS32 false_value);
void EmitSelectU8(EmitContext& ctx, ScalarS32 cond, ScalarS32 true_value, ScalarS32 false_value);
void EmitSelectU16(EmitContext& ctx, ScalarS32 cond, ScalarS32 true_value, ScalarS32 false_value);
void EmitSelectU32(EmitContext& ctx, IR::Inst& inst, ScalarS32 cond, ScalarS32 true_value,
diff --git a/src/shader_recompiler/backend/glasm/emit_glasm_select.cpp b/src/shader_recompiler/backend/glasm/emit_glasm_select.cpp
index b9e5cbbbe..68fff613c 100644
--- a/src/shader_recompiler/backend/glasm/emit_glasm_select.cpp
+++ b/src/shader_recompiler/backend/glasm/emit_glasm_select.cpp
@@ -9,9 +9,9 @@
namespace Shader::Backend::GLASM {
-void EmitSelectU1([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] ScalarS32 cond,
- [[maybe_unused]] ScalarS32 true_value, [[maybe_unused]] ScalarS32 false_value) {
- throw NotImplementedException("GLASM instruction");
+void EmitSelectU1(EmitContext& ctx, IR::Inst& inst, ScalarS32 cond, ScalarS32 true_value,
+ ScalarS32 false_value) {
+ ctx.Add("CMP.S {},{},{},{};", inst, cond, true_value, false_value);
}
void EmitSelectU8([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] ScalarS32 cond,