[PowerPC] Use QEMU-compatible version of SPE accumulator save

Switch from "evaddumiaaw 0,0" to "evmwumiaa 0,0,0" when persisting the
accumulator. This has the benefit of actually being implemented in QEMU
as it is the form Linux uses for the same task.

Both instructions are functionally equivilent, as we are using them for
their side effect of copying the accumulator to GPRs rather than for the
actual math operation that they are performing.

Reviewed by: jhibbits
This commit is contained in:
Brandon Bergren 2019-11-23 21:18:55 +00:00
parent 1bb8eb56ef
commit a638bf2a76
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=355035

View File

@ -83,7 +83,7 @@ save_vec_int(struct thread *td)
#undef EVSTDW
__asm ( "evxor 0,0,0\n"
"evaddumiaaw 0,0\n"
"evmwumiaa 0,0,0\n"
"evstdd 0,0(%0)" :: "b"(&pcb->pcb_vec.spare[0]));
pcb->pcb_vec.vscr = mfspr(SPR_SPEFSCR);