62983c9a8a
Worker C found that config/function_extents.tsv mis-split the two BIOS stubs: it recorded 0x80103FCC..0x80103FD4 (8 bytes) and 0x80103FEC..0x80103FF4, but the real bodies are 16 bytes (li a0,N / syscall / jr ra / nop). Its evidence: the first address has four jal callers and the following address has none, syscall returns to EPC+4 so the body must continue to a jr ra, every neighbouring stub is 16 bytes with the same shape, and an 8-byte body is unreachable from C because cc1 always appends an epilogue. Root cause: the walk treated `syscall` as a terminal alongside `break`. On this target syscall is the BIOS call instruction and it returns to the next word. `break` still terminates. After the fix both stubs are 16 bytes ending at their jr ra, and all 115 registered regions still agree with their derived extents. The fix also exposed three walks in the 0x8017xxxx region that the accidental syscall stop had been bounding: 0x8017D5C0 now runs out of the payload (grade=outside), 0x801800C4 becomes a 1860-byte fallthrough, and 0x8018080C a 240708-byte indirect. All three are jal-graded starts whose bodies are almost certainly data; none is registered and none is matchable. 200 tests pass.