While investigating 6854812 it became obvious that part of the problem was that large amount of cloning that resulted from ciTypeFlows handling of the JsrSet. The sets will tend to expand along exception edges because they never reach a ret causing an explosion of cloning. For a relatively simply case you could see thousands of blocks instead of the 70 or so really required. This cause produce very bad and large code and will sometimes lead to bailing out of the compile because of it's size. trimming the JsrSets based on the current StateVector greatly reduces the amount of cloning.