mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-29 04:01:27 +01:00
JIT: always use 64-bit moves for SRA
I see no reason not to. Simpler code and it's slightly faster on Firestorm. Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
This commit is contained in:
1 parent
1c59bfeb9f
commit
67c751d3e5
1 file changed
+3
-15
@@ -140,11 +140,7 @@ DEF_OP(LoadRegister) {
|
||||
const auto reg = StaticRegisters[Op->Reg];
|
||||
|
||||
if (GetReg(Node).Idx() != reg.Idx()) {
|
||||
if (OpSize == 4) {
|
||||
mov(GetReg(Node).W(), reg.W());
|
||||
} else {
|
||||
mov(GetReg(Node).X(), reg.X());
|
||||
}
|
||||
mov(GetReg(Node).X(), reg.X());
|
||||
}
|
||||
} else if (Op->Class == IR::FPRClass) {
|
||||
[[maybe_unused]] const auto regSize = HostSupportsAVX256 ? Core::CPUState::XMM_AVX_REG_SIZE : Core::CPUState::XMM_SSE_REG_SIZE;
|
||||
@@ -170,11 +166,7 @@ DEF_OP(LoadPF) {
|
||||
const auto reg = StaticRegisters[StaticRegisters.size() - 2];
|
||||
|
||||
if (GetReg(Node).Idx() != reg.Idx()) {
|
||||
if (IROp->Size == 4) {
|
||||
mov(GetReg(Node).W(), reg.W());
|
||||
} else {
|
||||
mov(GetReg(Node).X(), reg.X());
|
||||
}
|
||||
mov(GetReg(Node).X(), reg.X());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -182,11 +174,7 @@ DEF_OP(LoadAF) {
|
||||
const auto reg = StaticRegisters[StaticRegisters.size() - 1];
|
||||
|
||||
if (GetReg(Node).Idx() != reg.Idx()) {
|
||||
if (IROp->Size == 4) {
|
||||
mov(GetReg(Node).W(), reg.W());
|
||||
} else {
|
||||
mov(GetReg(Node).X(), reg.X());
|
||||
}
|
||||
mov(GetReg(Node).X(), reg.X());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user