merge back from trunk
Next stage of fixing the break/continue generation.
Stack cleanup works now even in the most evil expansion cases.
Even better tests
merge trunk
[Bugs 2835313, 3614226]: Complete the construction of break/continue compilers
that get the stack cleanup right, even when there's expansion going on.