Assertion is firing on this line:
735 JS_ASSERT_IF(!pred->isLoopBackedge(), pred->isMarked());
This function involves a LOOKUPSWITCH, so might be related to that recent landing.
Created attachment 623256 [details] [diff] [review]
Minor change to fix RPO
Mostly an RPO fix. I was moveBlockToEnd-ing all the blocks after creation, but this didn't handle the case where case body blocks could have sub-blocks created when they were being processed.
The moveBlockToEnd needs to happen on a body block immediately before it is processed, to ensure it makes it past the cond blocks, as well as any previous body block that has been processed.