------- Comment #2 from rguenth at gcc dot gnu dot org  2010-02-13 19:12 -------
Indeed.  After IPA-inline we have:

Init_libxg/4659(4659) @0x7fffef076138 availability:available 65 time, 10
benefit (112338 after inlining) 37 size, 1 benefit (89974 after inlining)
needed reachable body externally_visible finalized inlinable
  called by:
  calls: scm_c_eval_string/4663 (0.39 per call) scm_c_eval_string/4663 (0.39
per call) scm_c_eval_string/4663 (0.39 per call) scm_c_define/4662 (0.39 per
call) scm_from_locale_string/4661 (0.39 per call) scm_add_feature/4660 (0.39
per call) define_strings/4658 (inlined) (0.39 per call) define_atoms/4657 (0.39
per call) define_structs/4654 (0.39 per call) define_functions/4653 (inlined)
(0.39 per call) define_doubles/4656 (0.39 per call) define_integers/4655
(inlined) (0.39 per call) scm_set_smob_free/4665 (0.39 per call)
scm_make_smob_type/4664 (0.39 per call)

And the function-called once dump looks odd to me:

Deciding on functions called once:

Considering define_strings size 840.
 Called once from Init_libxg 37 insns.
 Inlined into Init_libxg which now has 876 size for a net change of -841 size.

Considering define_integers size 11078.
 Called once from Init_libxg 876 insns.
 Inlined into Init_libxg which now has 11953 size for a net change of -11079
size.

I can't believe on this net change.

Considering define_doubles size 56.
 Called once from Init_libxg 11953 insns.
 Not inlining: --param large-function-growth limit reached.

Considering define_functions size 78022.
 Called once from Init_libxg 11953 insns.
 Inlined into Init_libxg which now has 89974 size for a net change of -78023
size.

what?  We refused to inline define_doubles but inline define_functions??

Considering define_atoms size 119.
 Called once from Init_libxg 89974 insns.
 Not inlining: --param large-function-growth limit reached.

Considering define_structs size 757.
 Called once from Init_libxg 89974 insns.
 Not inlining: --param large-function-growth limit reached.


Very very odd.  Honza?


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hubicka at gcc dot gnu dot
                   |                            |org
   Target Milestone|---                         |4.5.0


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

Reply via email to