maze struct ptrs odd (blx stays Thumb)
This commit is contained in:
+4
-3
@@ -466,9 +466,10 @@ static void saimaa_machine_init(MachineState *machine)
|
|||||||
w = S + 8;
|
w = S + 8;
|
||||||
cpu_physical_memory_write(S, &w, 4);
|
cpu_physical_memory_write(S, &w, 4);
|
||||||
/* [struct+4] is another fn ptr (e.g. 0x801b72e ldr r3,[r0,#4]
|
/* [struct+4] is another fn ptr (e.g. 0x801b72e ldr r3,[r0,#4]
|
||||||
* with r0 = maze S via POOLS redirect); point at STUB too */
|
* with r0 = maze S via POOLS redirect); point at STUB too.
|
||||||
cpu_physical_memory_write(S + 4, &STUB, 4);
|
* NOTE: ODD (STUBV) — blx to even would switch to ARM! */
|
||||||
cpu_physical_memory_write(S + 8, &STUB, 4);
|
cpu_physical_memory_write(S + 4, &STUBV, 4);
|
||||||
|
cpu_physical_memory_write(S + 8, &STUBV, 4);
|
||||||
{
|
{
|
||||||
/* from qemu/maze.S: mailbox logger + lr-range guard.
|
/* from qemu/maze.S: mailbox logger + lr-range guard.
|
||||||
* Bad lr (not 0x08xxxxxx) spins with IRQs off instead of
|
* Bad lr (not 0x08xxxxxx) spins with IRQs off instead of
|
||||||
|
|||||||
Reference in New Issue
Block a user