And we come full circle -- this seems like the right solution but we moved away from it?
Refactor some common control-flow-creation code (NFC)
Have the tool output some partial stats
Fix a bug in OSR-entry guard checking

If we had to guard on the type of an object but the variable
ended up being undefined, we treated that as a guard failure
(not sure why).

Fixing that exposed another issue: if we guard that an object
is an int, we will try to unbox it if necessary.  If the variable
wasn't defined, then we will try to unbox some garbage memory.
Use the new handlePotentiallyUndefined to deal with that.