On Fri, Aug 22, 2003 at 11:53:48AM +0000, Angus Leeming wrote:
> Andre Poenitz wrote:
> >> They should be, that they are not is probably a bug in gcc.
> > They are not defined as inline, how should gcc inline them?
> 
> My understanding is that anything appearing in the class declaration is 
> automatically flagged for inlining.

Heck, look at lyxrow.h and lyxrow.C.

The accessors are not inline.

And some new data:


Each sample counts as 0.01 seconds.
  %   [...]                    
 time     calls    name    
  8.03     3388    LyXText::updateRowPositions()
  6.09  2435500    LyXText::nextRow(...
Row*>&)
onst
  5.54  4457948    Paragraph::Pimpl::getChar(int) const
  5.26  4148316    Row::height() const
  3.60     2187    LyXText::getRow(...
  3.32  4457948    Paragraph::getChar(int) const
  2.49  2398776    Row::y() const
  2.49   646091    LyXText::getFont(...
  2.22  2673310    Row::y(unsigned)
  [...]

So we are now in the 10% range for acessing height_ and y_
and another 5% + 3% for the getChar pimpling.

[On the good side: scrolling through the UG is pretty fast again,
most notably all the singleWidth related cruft doesn't show up 
anymore in the profile....]

Andre'

-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one.     (T. Jefferson or B. Franklin or both...)

Reply via email to