diff options
| author | MerryMage <MerryMage@users.noreply.github.com> | 2021-01-31 11:48:39 +0000 |
|---|---|---|
| committer | MerryMage <MerryMage@users.noreply.github.com> | 2021-01-31 12:04:57 +0000 |
| commit | 75d92ad6280f6e37bb59cc4feb97e0bf34edb756 (patch) | |
| tree | 815c9e289d56d41b6965780fc568bc98ff158c60 /Source/Core/Common/Arm64Emitter.cpp | |
| parent | be6aec9932f6f4467052fa8a72dbeeb494201d9d (diff) | |
Arm64Emitter: Prefer BFM/UBFM to EncodeBitfieldMOVInst
Diffstat (limited to 'Source/Core/Common/Arm64Emitter.cpp')
| -rw-r--r-- | Source/Core/Common/Arm64Emitter.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Source/Core/Common/Arm64Emitter.cpp b/Source/Core/Common/Arm64Emitter.cpp index f0451e8a48..cad26bbb4f 100644 --- a/Source/Core/Common/Arm64Emitter.cpp +++ b/Source/Core/Common/Arm64Emitter.cpp @@ -1661,7 +1661,7 @@ void ARM64XEmitter::BFI(ARM64Reg Rd, ARM64Reg Rn, u32 lsb, u32 width) ASSERT_MSG(DYNA_REC, (lsb + width) <= size, "%s passed lsb %d and width %d which is greater than the register size!", __func__, lsb, width); - EncodeBitfieldMOVInst(1, Rd, Rn, (size - lsb) % size, width - 1); + BFM(Rd, Rn, (size - lsb) % size, width - 1); } void ARM64XEmitter::BFXIL(ARM64Reg Rd, ARM64Reg Rn, u32 lsb, u32 width) { @@ -1669,7 +1669,7 @@ void ARM64XEmitter::BFXIL(ARM64Reg Rd, ARM64Reg Rn, u32 lsb, u32 width) ASSERT_MSG(DYNA_REC, lsb < size && width >= 1 && width <= size - lsb, "%s passed lsb %d and width %d which is greater than the register size!", __func__, lsb, width); - EncodeBitfieldMOVInst(1, Rd, Rn, lsb, lsb + width - 1); + BFM(Rd, Rn, lsb, lsb + width - 1); } void ARM64XEmitter::UBFIZ(ARM64Reg Rd, ARM64Reg Rn, u32 lsb, u32 width) { @@ -1677,7 +1677,7 @@ void ARM64XEmitter::UBFIZ(ARM64Reg Rd, ARM64Reg Rn, u32 lsb, u32 width) ASSERT_MSG(DYNA_REC, (lsb + width) <= size, "%s passed lsb %d and width %d which is greater than the register size!", __func__, lsb, width); - EncodeBitfieldMOVInst(2, Rd, Rn, (size - lsb) % size, width - 1); + UBFM(Rd, Rn, (size - lsb) % size, width - 1); } void ARM64XEmitter::EXTR(ARM64Reg Rd, ARM64Reg Rn, ARM64Reg Rm, u32 shift) { |
