http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54364
--- Comment #4 from xuepeng guo <xguo at gcc dot gnu.org> 2012-09-26 03:17:59 UTC --- Author: xguo Date: Wed Sep 26 03:17:54 2012 New Revision: 191751 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=191751 Log: 2012-09-26 Zhenqiang Chen <zhenqiang.c...@arm.com> Backport from 2012-09-19 mainline r191462 PR middle-end/54364 * bb-reorder.c (connect_better_edge_p): New added. (find_traces_1_round): When optimizing for size, ignore edge frequency and probability, and handle all in one round. (bb_to_key): Use bb->index as key when optimizing for size. (better_edge_p): The bb with smaller index is better when optimizing for size. (connect_traces): When optimizing for size, connect block n with block n + 1; connect trace m with trace m + 1 if falling through. (gate_handle_reorder_blocks): Enable bbro when optimizing for -Os. Modified: branches/ARM/embedded-4_7-branch/gcc/ChangeLog.arm branches/ARM/embedded-4_7-branch/gcc/bb-reorder.c