diff options
| author | 2021-05-23 20:16:09 -0300 | |
|---|---|---|
| committer | 2021-07-22 21:51:33 -0400 | |
| commit | 0794273870dfc0ae9c217b6869845debfc8a8792 (patch) | |
| tree | 3e629b59bd4df5a6de27c03484b503d3da6f0ca0 /src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp | |
| parent | emit_glasm_context_get_set: Remove unused variable (diff) | |
| download | yuzu-0794273870dfc0ae9c217b6869845debfc8a8792.tar.gz yuzu-0794273870dfc0ae9c217b6869845debfc8a8792.tar.xz yuzu-0794273870dfc0ae9c217b6869845debfc8a8792.zip | |
glasm: Implement int64 add and subtract
Diffstat (limited to 'src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp')
| -rw-r--r-- | src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp b/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp index f75fcba47..e5aac14c8 100644 --- a/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp +++ b/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp | |||
| @@ -37,18 +37,16 @@ void EmitIAdd32(EmitContext& ctx, IR::Inst& inst, ScalarS32 a, ScalarS32 b) { | |||
| 37 | } | 37 | } |
| 38 | } | 38 | } |
| 39 | 39 | ||
| 40 | void EmitIAdd64([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] Register a, | 40 | void EmitIAdd64(EmitContext& ctx, IR::Inst& inst, Register a, Register b) { |
| 41 | [[maybe_unused]] Register b) { | 41 | ctx.LongAdd("ADD.S64 {}.x,{}.x,{}.x;", inst, a, b); |
| 42 | throw NotImplementedException("GLASM instruction"); | ||
| 43 | } | 42 | } |
| 44 | 43 | ||
| 45 | void EmitISub32(EmitContext& ctx, IR::Inst& inst, ScalarS32 a, ScalarS32 b) { | 44 | void EmitISub32(EmitContext& ctx, IR::Inst& inst, ScalarS32 a, ScalarS32 b) { |
| 46 | ctx.Add("SUB.S {}.x,{},{};", inst, a, b); | 45 | ctx.Add("SUB.S {}.x,{},{};", inst, a, b); |
| 47 | } | 46 | } |
| 48 | 47 | ||
| 49 | void EmitISub64([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] Register a, | 48 | void EmitISub64(EmitContext& ctx, IR::Inst& inst, Register a, Register b) { |
| 50 | [[maybe_unused]] Register b) { | 49 | ctx.LongAdd("SUB.S64 {}.x,{}.x,{}.x;", inst, a, b); |
| 51 | throw NotImplementedException("GLASM instruction"); | ||
| 52 | } | 50 | } |
| 53 | 51 | ||
| 54 | void EmitIMul32(EmitContext& ctx, IR::Inst& inst, ScalarS32 a, ScalarS32 b) { | 52 | void EmitIMul32(EmitContext& ctx, IR::Inst& inst, ScalarS32 a, ScalarS32 b) { |