mirror of
https://github.com/azahar-emu/dynarmic
synced 2025-11-08 08:00:01 +01:00
A64: Handle half-precision floating point in scalar FMOV
This is simply performing a scalar value transfer between registers without conversions, so this is trivial to handle as-is.
This commit is contained in:
parent
fe84ecb780
commit
28a8b4d210
@ -12,13 +12,13 @@ namespace Dynarmic::A64 {
|
|||||||
|
|
||||||
bool TranslatorVisitor::FMOV_float(Imm<2> type, Vec Vn, Vec Vd) {
|
bool TranslatorVisitor::FMOV_float(Imm<2> type, Vec Vn, Vec Vd) {
|
||||||
const auto datasize = FPGetDataSize(type);
|
const auto datasize = FPGetDataSize(type);
|
||||||
if (!datasize || *datasize == 16) {
|
if (!datasize) {
|
||||||
return UnallocatedEncoding();
|
return UnallocatedEncoding();
|
||||||
}
|
}
|
||||||
|
|
||||||
const IR::U128 operand = V(*datasize, Vn);
|
const IR::U16U32U64 operand = V_scalar(*datasize, Vn);
|
||||||
|
|
||||||
V(*datasize, Vd, operand);
|
V_scalar(*datasize, Vd, operand);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user