play-0001: CIopBios::FindIntrHandler() O(H) linear scan per IOP interrupt. Called from HandleInterrupt() thousands of times per second. Fix: direct index array m_intrHandlerIndex[LINES_MAX] keyed by interrupt line -> O(1). Algorithmic ratio 32x (H=MAX_INTRHANDLER=32), timing 5.6x. 5/5 PASS. Basilisk II: all 5 MOADs CLEAN. Video/newcpu lookuptab searches are cold paths only; no god object, thread_local identity, credential logging, or unsynchronized cache patterns found.
7 lines
682 B
Text
7 lines
682 B
Text
CLEAN
|
|
Scanned 2026-03-31 for all 5 MOADs.
|
|
MOAD-0001 (CWE-407): linear vector searches in video.cpp (find_monitor, find_mode) and newcpu.cpp (lookuptab) are in cold paths only — driver control calls and debug disassembly, not hot emulation loops. CLEAN.
|
|
MOAD-0002 (Intertangle): no god-object coupling found beyond expected emulator subsystem references. CLEAN.
|
|
MOAD-0003 (Leaked Context): no thread_local used for request-scoped identity. CLEAN.
|
|
MOAD-0004 (CWE-312): no credentials or tokens logged verbatim. slirp_socket_passwd passed directly to socket, not a log statement. CLEAN.
|
|
MOAD-0005 (Thundering Herd): no unsynchronized cache get+null+compute+put pattern found. CLEAN.
|