b40: S12-wrapper pop restore kills 8B/call leak; uni DDRHI parity; run-sbl b40
This commit is contained in:
@@ -229,3 +229,15 @@
|
||||
UARTDM-страница) замаплен в uni как leak-sink (+8M runway).
|
||||
QEMU не тронут (в гэпе периферия; короткие прогоны не достают).
|
||||
UART все еще пуст.
|
||||
|
||||
## b40: S12-wrapper pop restore (2026-09-14)
|
||||
- 105M-фолт раскрыт ловушкой записи в текст: push.w на 0x80078DC писал
|
||||
по sp=0x802F688 (стек в тексте sbl_main), далее fetch по затертым
|
||||
байтам. Корень: b25 заменил pop r4,pc на bx ip во враппере S12
|
||||
(0x8007B66), каждый вызов сиротил 8B фрейма (около 58B/Kinsn);
|
||||
к 105M sp съехал, pop.w с восстановлением sp/pc (0x800EB94) взял
|
||||
чужой stacked-lr. b40 вернул pop (2B), r0=0 снова по контракту.
|
||||
- Побочка: ранний clock-путь теперь идет честно (раньше диверт его
|
||||
пропускал): IMEM-стек, чтение за верхом IMEM. Uni не мапил DDRHI,
|
||||
QEMU мапит: добавлен паритет (0x08610000, 16M-64K). b40 на 2M чист,
|
||||
sp живет в DDRHI, unmapped 0. Дефолт run-sbl теперь b40.
|
||||
|
||||
Reference in New Issue
Block a user