Stop using an entire 4K high-allocated VM page per 28-byte escape branch island. Done right, this will dramatically speed up escape island allocations when they number over 250. Then again, if you're overriding more than 250 functions, maybe speed isn't your main concern...
Add detection of: b, bl, bla, bc, bcl, bcla, bcctrl, bclrl first-instructions. Initially, we should refuse to override functions beginning with these instructions. Eventually, we should dynamically rewrite them to make them position-independent.
Write mach_unoverride(), which would remove an override placed on a function. Must be multiple-override aware, which means an almost complete rewrite under the covers, because the target address can't be spread across two load instructions like it is now since it will need to be atomically updatable.
1.3.4