Currently mayExit() uses the Check: flag set by AI based on a flow-sensitive analysis. That means that mayExit() results are not valid if you then move the node. That makes it hard to use mayExit() for hoisting.