summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2021-05-10 08:55:33 +0200
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-23 03:51:31 +0200
commit5b18a12df2116fcbb4bf10a2becd6cb404af0968 (patch)
tree1568ddb378759cbf0b0176aa3ecedac1c0b15436 /src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp
parentshader: Add floating-point rounding to I2F (diff)
downloadyuzu-5b18a12df2116fcbb4bf10a2becd6cb404af0968.tar
yuzu-5b18a12df2116fcbb4bf10a2becd6cb404af0968.tar.gz
yuzu-5b18a12df2116fcbb4bf10a2becd6cb404af0968.tar.bz2
yuzu-5b18a12df2116fcbb4bf10a2becd6cb404af0968.tar.lz
yuzu-5b18a12df2116fcbb4bf10a2becd6cb404af0968.tar.xz
yuzu-5b18a12df2116fcbb4bf10a2becd6cb404af0968.tar.zst
yuzu-5b18a12df2116fcbb4bf10a2becd6cb404af0968.zip
Diffstat (limited to '')
-rw-r--r--src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp b/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp
index 40f48a091..2be91ccfd 100644
--- a/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp
+++ b/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp
@@ -34,16 +34,16 @@ void EmitINeg32(EmitContext& ctx, IR::Inst& inst, ScalarS32 value) {
ctx.Add("MOV.S {},-{};", inst, value);
}
-void EmitINeg64([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] Register value) {
- throw NotImplementedException("GLASM instruction");
+void EmitINeg64(EmitContext& ctx, IR::Inst& inst, Register value) {
+ ctx.LongAdd("MOV.S64 {},-{};", inst, value);
}
void EmitIAbs32(EmitContext& ctx, IR::Inst& inst, ScalarS32 value) {
ctx.Add("ABS.S {},{};", inst, value);
}
-void EmitIAbs64([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] Register value) {
- throw NotImplementedException("GLASM instruction");
+void EmitIAbs64(EmitContext& ctx, IR::Inst& inst, Register value) {
+ ctx.LongAdd("MOV.S64 {},|{}|;", inst, value);
}
void EmitShiftLeftLogical32(EmitContext& ctx, IR::Inst& inst, ScalarU32 base, ScalarU32 shift) {