A64: Fall back to interpreting for FCADD and FCMLA half-precision variants

Rather than straight-up treating them as undefined, we can fall back to an
interpreter in this case.
This commit is contained in:
Lioncash 2019-03-04 12:22:58 -05:00 committed by MerryMage
parent 36027ebef5
commit 302f56b36a

View file

@ -66,7 +66,7 @@ bool TranslatorVisitor::FCMLA_vec(bool Q, Imm<2> size, Vec Vm, Imm<2> rot, Vec V
// TODO: Currently we don't support half-precision floating point // TODO: Currently we don't support half-precision floating point
if (esize == 16) { if (esize == 16) {
return UnallocatedEncoding(); return InterpretThisInstruction();
} }
const size_t datasize = Q ? 128 : 64; const size_t datasize = Q ? 128 : 64;
@ -139,7 +139,7 @@ bool TranslatorVisitor::FCADD_vec(bool Q, Imm<2> size, Vec Vm, Imm<1> rot, Vec V
// TODO: Currently we don't support half-precision floating point // TODO: Currently we don't support half-precision floating point
if (esize == 16) { if (esize == 16) {
return UnallocatedEncoding(); return InterpretThisInstruction();
} }
const size_t datasize = Q ? 128 : 64; const size_t datasize = Q ? 128 : 64;