mirror of
https://github.com/yuzu-emu/unicorn.git
synced 2025-10-29 00:28:12 +00:00
The v7m CONTROL register bit 1 is SPSEL, which indicates the stack being used. We were storing this information not in v7m.control but in the separate v7m.other_sp structure field. Unfortunately, the code handling reads of the CONTROL register didn't take account of this, and so if SPSEL was updated by an exception entry or exit then a subsequent guest read of CONTROL would get the wrong value. Using a separate structure field doesn't really gain us anything in efficiency, so drop this unnecessary complexity in favour of simply storing all the bits in v7m.control. This is a migration compatibility break for M profile CPUs only. Backports commit abc24d86cc0364f402e438fae3acb14289b40734 from qemu |
||
|---|---|---|
| .. | ||
| arm | ||
| cpu | ||
| i386 | ||
| m68k | ||
| mips | ||
| sparc | ||
| xen | ||
| boards.h | ||
| hw.h | ||
| qdev-core.h | ||
| qdev.h | ||
| registerfields.h | ||