http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51005
--- Comment #1 from vries at gcc dot gnu.org 2011-11-07 09:53:15 UTC --- -ftree-tail-merge optimises about half of the basic blocks away: ... $ egrep -c '^<bb.*:' 20001226-1.c.091t.crited 16385 $ egrep -c '^<bb.*:' 20001226-1.c.092t.pre 8195 ... but it does so with a slowdown of factor 3.5: ... $ time gcc src/gcc/testsuite/gcc.c-torture/compile/20001226-1.c -S -O2 -fno-tree-tail-merge real 0m34.691s user 0m34.350s sys 0m0.220s $ time gcc src/gcc/testsuite/gcc.c-torture/compile/20001226-1.c -S -O2 -ftree-tail-merge real 2m7.072s user 2m6.220s sys 0m0.190s ...