------- Comment #6 from pinskia at gcc dot gnu dot org 2010-02-12 23:14 ------- (In reply to comment #5) > Can you explain how? It's not clear from the code of your comment #2 how a > simplification would cause the extra basic block.
sorry if I was not clear here but there are two different issues with this testcase. the extra basic block is there for 4.4 still; just it uses the branch likely instruction which is what the testcase is trying to test for. (for those who don't know the MIPS ISA, branch likely says the delay slot is only executed if the branch is taken). The extra simplification is causing the branch likely instruction not to used as there is a way to combine the sign extend with the addition. So there is an extra instruction introduced early on. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42839