<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [patch] fix "length bigger than vheaTab size" and "length bigger than vmtxTab size""
   href="https://bugs.freedesktop.org/show_bug.cgi?id=89076#c3">Comment # 3</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [patch] fix "length bigger than vheaTab size" and "length bigger than vmtxTab size""
   href="https://bugs.freedesktop.org/show_bug.cgi?id=89076">bug 89076</a>
              from <span class="vcard"><a class="email" href="mailto:williambader@hotmail.com" title="William Bader <williambader@hotmail.com>"> <span class="fn">William Bader</span></a>
</span></b>
        <pre>Thanks for looking at it.

<span class="quote">>These three changes are unrelated and should be split into three separate commits.</span >

Later today, I will make a patch with just the FoFiTrueType patch here and open
separate reports for the alloca change and the Flate change.

<span class="quote">>#ifndef HAVE_ALLOCA_H</span >

I did that intentionally for symmetry with the allocation to make it clear that
the other case was not forgotten.  I do that in my own code, but I will make
the new patch match the style in poppler.

<span class="quote">>I had trouble understanding what the timings</span >

The timings are after the change.  The alloca change made appendfv() about 5%
faster.

The FlateStream change had no effect.  Some of the other streams inline their
getChar() also, but I suspect that all of the stream getChar() functions are
called from places that gcc can not tell the Stream type at compile time.

I ran several pdftoxxx utilities because the person who reported the
performance issues did not say what output device he was using.  On my laptop,
pdftocairo is significantly faster than pdftoppm because cairo uses assembly
code that takes advantage of vector instructions while splash is pure C++.

The person who reported the issue had an ARM CPU, and the coding of the output
method and the display hardware could make a big difference.  For example, we
have a RaspberryPi running Fedora, and moving windows on the console is so slow
that you can see the pixels paint, like the first time that I ran X on a 20MHz
386 nearly 30 years ago.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>