This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PR 18143] thunk range


PR 18143 is about a problem with the newly restricted thunk range.

Option 1 is to revert the restriction.
Option 2 is to add a sorry.

Option 1 is unarguably to be preferred, if it has no down sides.
Unfortunately it does.  Reverting the patch makes lang_decl bigger, and
that impacts compile time -- by a surprising amount.  I built
--disable-checking compilers on both powerpc-apple-darwin and
i686-pc-linux-gnu and then measured the -O0 compile time for QT.  There
was a 1% slowdown on both platforms.  This is bad.

Either the size of lang_decl just 'fell off a cliff' performance wise
with this increase, or the size/time dependency is reasonably linear
at this size.  If it's the latter, then this is good data that shrinking
data structures gets us _good_ time wins.

There is an Option1.5, in that there are still 3 spare bits, so we could
increase the size limit (and allow 2MB objects) without time penalty.

Alternatives like an on-the-side hash table for this kind of auxiliary
structure are more work than I'd want to do right now at this stage.

comments?

nathan
--
Nathan Sidwell    ::   http://www.codesourcery.com   ::     CodeSourcery LLC
nathan@codesourcery.com    ::     http://www.planetfall.pwp.blueyonder.co.uk



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]