http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54717
--- Comment #5 from Sergey Ostanevich <sergos.gnu at gmail dot com> 2012-09-26 20:07:26 UTC --- for 093t.pre I see the following missing in cptrf2 function, first is good, second is degraded: *************** *** 8947,8966 **** goto <bb 35>; <bb 93>: - pretmp_325 = (integer(kind=8)) ival2_80; - pretmp_326 = pretmp_325 + -1; - pretmp_327 = *xxtrt_25(D)[pretmp_326]; <bb 27>: # ival2_136 = PHI <ival2_62(93), ival2_144(97)> # ival2_140 = PHI <ival2_80(93), ival2_146(97)> - # prephitmp_328 = PHI <pretmp_327(93), prephitmp_290(97)> _137 = (integer(kind=8)) ival2_136; _138 = _137 + -1; _139 = *xxtrt_25(D)[_138]; _141 = (integer(kind=8)) ival2_140; _142 = _141 + -1; ! _143 = prephitmp_328; if (_139 < _143) goto <bb 28>; else --- 8838,8853 ---- goto <bb 35>; <bb 93>: <bb 27>: # ival2_136 = PHI <ival2_62(93), ival2_144(97)> # ival2_140 = PHI <ival2_80(93), ival2_146(97)> _137 = (integer(kind=8)) ival2_136; _138 = _137 + -1; _139 = *xxtrt_25(D)[_138]; _141 = (integer(kind=8)) ival2_140; _142 = _141 + -1; ! _143 = *xxtrt_25(D)[_142]; if (_139 < _143) goto <bb 28>; else *************** but more surprising to me is that first diff is in 020t.inline_param1 *************** *** 16790,16794 **** calls: dtrti2/26 function not considered for inlining ! loop depth: 0 freq:1000 size: 9 time: 18 callee size:82 stack:28 dtrsm/21 function not considered for inlining loop depth: 0 freq:1000 size:16 time: 25 callee size:324 stack: 4 --- 16790,16794 ---- calls: dtrti2/26 function not considered for inlining ! loop depth: 0 freq:1000 size: 9 time: 18 callee size:81 stack:28 dtrsm/21 function not considered for inlining loop depth: 0 freq:1000 size:16 time: 25 callee size:324 stack: 4 ***************