Creeping Bloat in Phobos

Walter Bright via Digitalmars-d digitalmars-d at puremagic.com
Sat Sep 27 15:54:23 PDT 2014


On 9/27/2014 3:26 PM, Brad Roberts via Digitalmars-d wrote:
> What we're seeing here is pretty much the same problem that early c++ suffered
> from: abstraction penalty.  It took years of work to help overcome it, both from
> the compiler and the library.  Not having trivial functions inlined and
> optimized down through standard techniques like dead store elimination, value
> range propagation, various loop restructurings, etc means that code will look
> like what Walter and you have shown.  Given DMD's relatively weak inliner, I'm
> not shocked by Walter's example.  I am curious why ldc failed to inline those
> functions.

Again, this accumulation of barnacles is not a failure of the optimizer. It's a 
failure of adding gee-gaws to the source code without checking their effect.



More information about the Digitalmars-d mailing list