diff options
| author | 2021-05-08 18:59:05 -0400 | |
|---|---|---|
| committer | 2021-07-22 21:51:30 -0400 | |
| commit | 68cc445b8ef7c7057087e2b6c7015d888a80bac2 (patch) | |
| tree | 054e30098d4ef6f8f0fd2ae74a464a5849768d7e /src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp | |
| parent | glasm: Implement BFI, BFE (diff) | |
| download | yuzu-68cc445b8ef7c7057087e2b6c7015d888a80bac2.tar.gz yuzu-68cc445b8ef7c7057087e2b6c7015d888a80bac2.tar.xz yuzu-68cc445b8ef7c7057087e2b6c7015d888a80bac2.zip | |
glasm: Implement more logical ops
Diffstat (limited to 'src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp')
| -rw-r--r-- | src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp | 8 |
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 d4e519a2a..1289d950f 100644 --- a/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp +++ b/src/shader_recompiler/backend/glasm/emit_glasm_integer.cpp | |||
| @@ -93,7 +93,7 @@ void EmitShiftRightArithmetic64([[maybe_unused]] EmitContext& ctx, | |||
| 93 | 93 | ||
| 94 | void EmitBitwiseAnd32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, | 94 | void EmitBitwiseAnd32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, |
| 95 | [[maybe_unused]] std::string_view a, [[maybe_unused]] std::string_view b) { | 95 | [[maybe_unused]] std::string_view a, [[maybe_unused]] std::string_view b) { |
| 96 | throw NotImplementedException("GLASM instruction"); | 96 | ctx.Add("AND {},{},{};", inst, a, b); |
| 97 | } | 97 | } |
| 98 | 98 | ||
| 99 | void EmitBitwiseOr32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, | 99 | void EmitBitwiseOr32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, |
| @@ -103,7 +103,7 @@ void EmitBitwiseOr32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Ins | |||
| 103 | 103 | ||
| 104 | void EmitBitwiseXor32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, | 104 | void EmitBitwiseXor32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, |
| 105 | [[maybe_unused]] std::string_view a, [[maybe_unused]] std::string_view b) { | 105 | [[maybe_unused]] std::string_view a, [[maybe_unused]] std::string_view b) { |
| 106 | throw NotImplementedException("GLASM instruction"); | 106 | ctx.Add("XOR {},{},{};", inst, a, b); |
| 107 | } | 107 | } |
| 108 | 108 | ||
| 109 | void EmitBitFieldInsert(EmitContext& ctx, IR::Inst& inst, std::string_view base, | 109 | void EmitBitFieldInsert(EmitContext& ctx, IR::Inst& inst, std::string_view base, |
| @@ -136,7 +136,7 @@ void EmitBitCount32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst | |||
| 136 | 136 | ||
| 137 | void EmitBitwiseNot32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, | 137 | void EmitBitwiseNot32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, |
| 138 | [[maybe_unused]] std::string_view value) { | 138 | [[maybe_unused]] std::string_view value) { |
| 139 | throw NotImplementedException("GLASM instruction"); | 139 | ctx.Add("NOT {},{};", inst, value); |
| 140 | } | 140 | } |
| 141 | 141 | ||
| 142 | void EmitFindSMsb32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, | 142 | void EmitFindSMsb32([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, |
| @@ -222,7 +222,7 @@ void EmitUGreaterThan([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::In | |||
| 222 | 222 | ||
| 223 | void EmitINotEqual([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, | 223 | void EmitINotEqual([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, |
| 224 | [[maybe_unused]] std::string_view lhs, [[maybe_unused]] std::string_view rhs) { | 224 | [[maybe_unused]] std::string_view lhs, [[maybe_unused]] std::string_view rhs) { |
| 225 | throw NotImplementedException("GLASM instruction"); | 225 | ctx.Add("SNE.U {},{},{};", inst, lhs, rhs); |
| 226 | } | 226 | } |
| 227 | 227 | ||
| 228 | void EmitSGreaterThanEqual([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, | 228 | void EmitSGreaterThanEqual([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& inst, |