diff options
author | merry <MerryMage@users.noreply.github.com> | 2020-06-20 17:08:23 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-20 17:08:23 +0200 |
commit | 928e9c09aafc2312a619379a060dba81156b99b7 (patch) | |
tree | 31f2b055c57b8b5ee221db0c429881cc9627db04 /src | |
parent | Merge pull request #4123 from lioncash/unused-var (diff) | |
parent | macro_jit_x64: Correct readability of Compile_ExtractShiftLeftImmediate() (diff) | |
download | yuzu-928e9c09aafc2312a619379a060dba81156b99b7.tar yuzu-928e9c09aafc2312a619379a060dba81156b99b7.tar.gz yuzu-928e9c09aafc2312a619379a060dba81156b99b7.tar.bz2 yuzu-928e9c09aafc2312a619379a060dba81156b99b7.tar.lz yuzu-928e9c09aafc2312a619379a060dba81156b99b7.tar.xz yuzu-928e9c09aafc2312a619379a060dba81156b99b7.tar.zst yuzu-928e9c09aafc2312a619379a060dba81156b99b7.zip |
Diffstat (limited to 'src')
-rw-r--r-- | src/video_core/macro/macro_jit_x64.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/video_core/macro/macro_jit_x64.cpp b/src/video_core/macro/macro_jit_x64.cpp index 63e7ca416..4eef342ec 100644 --- a/src/video_core/macro/macro_jit_x64.cpp +++ b/src/video_core/macro/macro_jit_x64.cpp @@ -239,10 +239,10 @@ void MacroJITx64Impl::Compile_ExtractInsert(Macro::Opcode opcode) { } void MacroJITx64Impl::Compile_ExtractShiftLeftImmediate(Macro::Opcode opcode) { - auto dst = Compile_GetRegister(opcode.src_a, eax); - auto src = Compile_GetRegister(opcode.src_b, RESULT); + const auto dst = Compile_GetRegister(opcode.src_a, eax); + const auto src = Compile_GetRegister(opcode.src_b, RESULT); - shr(src, al); + shr(src, dst.cvt8()); if (opcode.bf_size != 0 && opcode.bf_size != 31) { and_(src, opcode.GetBitfieldMask()); } else if (opcode.bf_size == 0) { @@ -258,8 +258,8 @@ void MacroJITx64Impl::Compile_ExtractShiftLeftImmediate(Macro::Opcode opcode) { } void MacroJITx64Impl::Compile_ExtractShiftLeftRegister(Macro::Opcode opcode) { - auto dst = Compile_GetRegister(opcode.src_a, eax); - auto src = Compile_GetRegister(opcode.src_b, RESULT); + const auto dst = Compile_GetRegister(opcode.src_a, eax); + const auto src = Compile_GetRegister(opcode.src_b, RESULT); if (opcode.bf_src_bit != 0) { shr(src, opcode.bf_src_bit); @@ -268,7 +268,8 @@ void MacroJITx64Impl::Compile_ExtractShiftLeftRegister(Macro::Opcode opcode) { if (opcode.bf_size != 31) { and_(src, opcode.GetBitfieldMask()); } - shl(src, al); + shl(src, dst.cvt8()); + Compile_ProcessResult(opcode.result_operation, opcode.dst); } |