[Bug tree-optimization/33761] non-optimal inlining heuristics pessimizes gzip SPEC score at -O3

hubicka at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Thu Feb 7 12:31:00 GMT 2008



------- Comment #23 from hubicka at gcc dot gnu dot org  2008-02-07 12:30 -------
Created an attachment (id=15115)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15115&action=view)
Annotated profile

I am attaching dump with profile read in.  It shows the hot spots in
longest_match at least:

(this is first conditional of the continue guard)
  # BLOCK 27 freq:10000 count:1346119696
  # PRED: 6 [100.0%]  count:112241556 (fallthru) 25 [99.5%]  count:1233878140
(true,exec)
  # scan_end_13 = PHI <scan_end_106(6), scan_end_14(25)>
  # scan_end1_11 = PHI <scan_end1_93(6), scan_end1_12(25)>
  # best_len_8 = PHI <best_len_25(6), best_len_9(25)>
  # scan_3 = PHI <scan_24(6), scan_6(25)>
  # chain_length_2 = PHI <chain_length_108(6), chain_length_105(25)>
  # cur_match_1 = PHI <cur_match_109(6), cur_match_104(25)>
  match_40 = &window + cur_match_1;
  best_len.31_41 = (unsigned int) best_len_8;
  D.2379_42 = match_40 + best_len.31_41;
  D.2380_43 = *D.2379_42;
  if (D.2380_43 != scan_end_13)
    goto <bb 10>;
  else
    goto <bb 7>;

  # SUCC: 10 [0.1%]  count:33977 (true,exec) 11 [99.9%]  count:48979565
(false,exec)

  # BLOCK 10 freq:9636 count:1297140131
  # PRED: 27 [87.5%]  count:1177665163 (true,exec) 7 [55.2%]  count:93018627
(true,exec) 8 [35.0%]  count:26422364 (true,exec) 9 [0.1%]  count:33977
(true,exec)
  goto <bb 24>;

(this is the continue statement)

  D.2391_102 = cur_match_1 & 32767;
  D.2392_103 = prev[D.2391_102];
  cur_match_104 = (IPos) D.2392_103;
  if (limit_15 >= cur_match_104)
    goto <bb 26>;
  else
    goto <bb 25>;
  # SUCC: 26 [7.7%]  count:104056913 (true,exec) 25 [92.3%]  count:1240391903
(false,exec)

  # BLOCK 25 freq:9215 count:1240391903
  # PRED: 24 [92.3%]  count:1240391903 (false,exec)
  chain_length_105 = chain_length_2 + 0x0ffffffff;
  if (chain_length_105 != 0)
    goto <bb 27>;
  else
    goto <bb 26>;


(this is end of outer loop)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33761



More information about the Gcc-bugs mailing list