If I hack up GCC's old jump threader to avoid threading across backedges and instead let the FSM threader handle that case, then we end up with cases where the FSM threader creates irreducible loops with marginal benefit. This can be seen in ssa-dom-thread-2{d,e,f}.c. We've long avoided such threads in the old jump threader. We generally want to avoid them in the FSM threader as well. The only case where we're going to allow them is when we're able to eliminate a multi-way branch from the loop. Bootstrapped and regression tested on x86_64-linux-gnu. Also tested the above mentioned testcases with my hacked up compiler. Installed on the trunk. Jeff