mirror of
https://github.com/azahar-emu/dynarmic.git
synced 2026-03-27 16:11:02 +01:00
translate_arm/vfp2: Implement VSTM (A1, A2)
This commit is contained in:
@@ -889,6 +889,20 @@ public:
|
||||
return Common::StringFromFormat("vstr%s %s, [%s, #%c%u]", CondToString(cond), FPRegStr(sz, Vd, D).c_str(), RegToString(n), U ? '+' : '-', imm32);
|
||||
}
|
||||
|
||||
std::string vfp2_VSTM_a1(Cond cond, bool p, bool u, bool D, bool w, Reg n, size_t Vd, Imm8 imm8) {
|
||||
const char* mode = "<invalid mode>";
|
||||
if (!p && u) mode = "ia";
|
||||
if (p && !u) mode = "db";
|
||||
return Common::StringFromFormat("vstm%s%s.f64 %s%s, %s(+%u)", mode, CondToString(cond), RegToString(n), w ? "!" : "", FPRegStr(true, Vd, D).c_str(), imm8);
|
||||
}
|
||||
|
||||
std::string vfp2_VSTM_a2(Cond cond, bool p, bool u, bool D, bool w, Reg n, size_t Vd, Imm8 imm8) {
|
||||
const char* mode = "<invalid mode>";
|
||||
if (!p && u) mode = "ia";
|
||||
if (p && !u) mode = "db";
|
||||
return Common::StringFromFormat("vstm%s%s.f32 %s%s, %s(+%u)", mode, CondToString(cond), RegToString(n), w ? "!" : "", FPRegStr(false, Vd, D).c_str(), imm8);
|
||||
}
|
||||
|
||||
std::string vfp2_VLDM_a1(Cond cond, bool p, bool u, bool D, bool w, Reg n, size_t Vd, Imm8 imm8) {
|
||||
const char* mode = "<invalid mode>";
|
||||
if (!p && u) mode = "ia";
|
||||
|
||||
Reference in New Issue
Block a user