Files
BFM-decomp/cookbook/C0377.md
T

621 B
Raw Blame History

§336 — THE §5a CROSS-JUMP BARRIER GOES AT THE BOTTOM OF THE TWIN, NOT THE TOP: find_cross_jump WALKS BACKWARD FROM THE CONVERGING JUMP (P31 S67; byte-proven ov_SC05_001/func_80183C9C)

A zero-byte __asm__ __volatile__("") placed at the TOP of the duplicated block is simply walked past — the seven instructions below it still merge. find_cross_jump compares BACKWARD from the point where the two paths converge, so the barrier must sit just before the shared goto TAIL, at the bottom of the twin. Same wave, ov_SC01_084/func_80181F80: the barrier bought −4 instructions once placed correctly.