Savestates: Cleanup v128 usage

It's compatible with bitwise serialization so it is faster to load/save it this way.
This commit is contained in:
Eladash 2022-07-06 17:52:31 +03:00 committed by Ivan
parent f546e5a8ef
commit 155bd09fd0
2 changed files with 5 additions and 26 deletions

View file

@ -1577,10 +1577,7 @@ bool ppu_thread::savable() const
void ppu_thread::serialize_common(utils::serial& ar) void ppu_thread::serialize_common(utils::serial& ar)
{ {
ar(gpr, fpr, cr, fpscr.bits, lr, ctr, vrsave, cia, xer, sat, nj, prio, optional_savestate_state); ar(gpr, fpr, cr, fpscr.bits, lr, ctr, vrsave, cia, xer, sat, nj, prio, optional_savestate_state, vr);
for (v128& reg : vr)
ar(reg._bytes);
if (optional_savestate_state->data.empty()) if (optional_savestate_state->data.empty())
{ {

View file

@ -1699,28 +1699,10 @@ spu_thread::spu_thread(lv2_spu_group* group, u32 index, std::string_view name, u
void spu_thread::serialize_common(utils::serial& ar) void spu_thread::serialize_common(utils::serial& ar)
{ {
for (v128& reg : gpr) ar(gpr, pc, ch_mfc_cmd, mfc_size, mfc_barrier, mfc_fence, mfc_prxy_cmd, mfc_prxy_mask, mfc_prxy_write_state.all
ar(reg._bytes); , srr0, ch_tag_upd, ch_tag_mask, ch_tag_stat.data, ch_stall_mask, ch_stall_stat.data, ch_atomic_stat.data
, ch_out_mbox.data, ch_out_intr_mbox.data, snr_config, ch_snr1.data, ch_snr2.data, ch_events.raw().all, interrupts_enabled
ar(pc, ch_mfc_cmd, mfc_size, mfc_barrier, mfc_fence, mfc_prxy_cmd, mfc_prxy_mask, mfc_prxy_write_state.all , run_ctrl, exit_status.data, status_npc.raw().status);
, srr0
, ch_tag_upd
, ch_tag_mask
, ch_tag_stat.data
, ch_stall_mask
, ch_stall_stat.data
, ch_atomic_stat.data
, ch_out_mbox.data
, ch_out_intr_mbox.data
, snr_config
, ch_snr1.data
, ch_snr2.data
, ch_events.raw().all
, interrupts_enabled
, run_ctrl
, exit_status.data
, status_npc.raw().status);
if (GET_SERIALIZATION_VERSION(spu) != 1u) if (GET_SERIALIZATION_VERSION(spu) != 1u)
{ {