summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2021-05-26 20:40:16 +0200
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-23 03:51:33 +0200
commitb9c8814ea978d2192522f9c85c07c00280bc1696 (patch)
treeedeba8f4b8f230a68e2b1e96ccad7520e6bc94e5
parentglasm: Fix global memory callbacks (diff)
downloadyuzu-b9c8814ea978d2192522f9c85c07c00280bc1696.tar
yuzu-b9c8814ea978d2192522f9c85c07c00280bc1696.tar.gz
yuzu-b9c8814ea978d2192522f9c85c07c00280bc1696.tar.bz2
yuzu-b9c8814ea978d2192522f9c85c07c00280bc1696.tar.lz
yuzu-b9c8814ea978d2192522f9c85c07c00280bc1696.tar.xz
yuzu-b9c8814ea978d2192522f9c85c07c00280bc1696.tar.zst
yuzu-b9c8814ea978d2192522f9c85c07c00280bc1696.zip
-rw-r--r--src/shader_recompiler/backend/glasm/emit_glasm_instructions.h10
-rw-r--r--src/shader_recompiler/backend/glasm/emit_glasm_not_implemented.cpp20
2 files changed, 15 insertions, 15 deletions
diff --git a/src/shader_recompiler/backend/glasm/emit_glasm_instructions.h b/src/shader_recompiler/backend/glasm/emit_glasm_instructions.h
index cc7aa8e20..c24c7a71d 100644
--- a/src/shader_recompiler/backend/glasm/emit_glasm_instructions.h
+++ b/src/shader_recompiler/backend/glasm/emit_glasm_instructions.h
@@ -74,11 +74,11 @@ void EmitIsHelperInvocation(EmitContext& ctx, IR::Inst& inst);
void EmitYDirection(EmitContext& ctx);
void EmitLoadLocal(EmitContext& ctx, IR::Inst& inst, ScalarU32 word_offset);
void EmitWriteLocal(EmitContext& ctx, ScalarU32 word_offset, ScalarU32 value);
-void EmitUndefU1(EmitContext& ctx);
-void EmitUndefU8(EmitContext& ctx);
-void EmitUndefU16(EmitContext& ctx);
-void EmitUndefU32(EmitContext& ctx);
-void EmitUndefU64(EmitContext& ctx);
+void EmitUndefU1(EmitContext& ctx, IR::Inst& inst);
+void EmitUndefU8(EmitContext& ctx, IR::Inst& inst);
+void EmitUndefU16(EmitContext& ctx, IR::Inst& inst);
+void EmitUndefU32(EmitContext& ctx, IR::Inst& inst);
+void EmitUndefU64(EmitContext& ctx, IR::Inst& inst);
void EmitLoadGlobalU8(EmitContext& ctx, IR::Inst& inst, Register address);
void EmitLoadGlobalS8(EmitContext& ctx, IR::Inst& inst, Register address);
void EmitLoadGlobalU16(EmitContext& ctx, IR::Inst& inst, Register address);
diff --git a/src/shader_recompiler/backend/glasm/emit_glasm_not_implemented.cpp b/src/shader_recompiler/backend/glasm/emit_glasm_not_implemented.cpp
index e9d1e0d6b..c76b45b8b 100644
--- a/src/shader_recompiler/backend/glasm/emit_glasm_not_implemented.cpp
+++ b/src/shader_recompiler/backend/glasm/emit_glasm_not_implemented.cpp
@@ -209,24 +209,24 @@ void EmitYDirection(EmitContext& ctx) {
NotImplemented();
}
-void EmitUndefU1(EmitContext& ctx) {
- NotImplemented();
+void EmitUndefU1(EmitContext& ctx, IR::Inst& inst) {
+ ctx.Add("MOV.S {}.x,0;", inst);
}
-void EmitUndefU8(EmitContext& ctx) {
- NotImplemented();
+void EmitUndefU8(EmitContext& ctx, IR::Inst& inst) {
+ ctx.Add("MOV.S {}.x,0;", inst);
}
-void EmitUndefU16(EmitContext& ctx) {
- NotImplemented();
+void EmitUndefU16(EmitContext& ctx, IR::Inst& inst) {
+ ctx.Add("MOV.S {}.x,0;", inst);
}
-void EmitUndefU32(EmitContext& ctx) {
- NotImplemented();
+void EmitUndefU32(EmitContext& ctx, IR::Inst& inst) {
+ ctx.Add("MOV.S {}.x,0;\n", inst);
}
-void EmitUndefU64(EmitContext& ctx) {
- NotImplemented();
+void EmitUndefU64(EmitContext& ctx, IR::Inst& inst) {
+ ctx.LongAdd("MOV.S64 {}.x,0;", inst);
}
void EmitGetZeroFromOp(EmitContext& ctx) {