b18: single 6B idiom NOP (order fix)

This commit is contained in:
lumia-emu
2026-09-13 00:19:10 +00:00
parent c524cc5c60
commit f5bddadbce
+9 -4
View File
@@ -553,10 +553,6 @@ def main():
(0x801B76C, '280b0508', '00000708'),
(0x8006682, '00f001f8', 'c046c046'),
(0x8006684, '01f807bd', '46c046c0'),
(0x8017AFC, 'bde8fc87', 'eef74fb8'),
(0x802F690, '9847fee7', 'c046c046'),
@@ -569,6 +565,15 @@ def main():
set4(d, va, new)
# Full bl idiom at 0x8006682 (bl + pop, 6B) -> NOPs. (b17 NOPed only
# its 2nd half, leaving a dangling prefix that fused with the NOP
# into a bogus odd-address store -> alignment fault in QEMU.)
o = off(0x8006682)
assert d[o:o + 6].hex() == '00f001f807bd', hx(d, 0x8006682, 6)
d[o:o + 6] = bytes.fromhex('c046c046c046')
o = off(0x8013AA8)
assert d[o:o + 4].hex() == '07f026be', hx(d, 0x8013AA8)