------- Comment #4 from rguenth at gcc dot gnu dot org 2010-03-26 13:01 ------- Well, it's like you say -ftree-pre but a partial redundancy is not removed because it was on a cold path. bb-reorder should probably take into account size/speed optimization in more general and the optimize_function_for_speed_p predicate doesn't properly honor attribute(("hot")) with -Os, but I can't see anything wrong with trying to optimize cold parts of a program for size (and no, we do not have a flag to override this).
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43515