June 05, 2009
Doing some profiling of MiniD's GC showed that quiiite a bit of time was being spent in the GC, but not where I expected it - most of the time was being wasted in malloc/free, not the GC's marking or sweeping.  Surprise!

So I thought "why don't I try nedmalloc?"  I get the source, compile it with DMC, link it against my app and.. I get linker errors looking for things that _should_ be in kernel32.lib.  And they are, but for some reason, the linker isn't seeing them or something.

I thought "someone else had to have tried this before" and sure enough, they - Craig Black - had:

http://www.digitalmars.com/d/archives/digitalmars/D/nedmalloc_47148.html http://lists.puremagic.com/pipermail/digitalmars-d/2007-January/013224.html

There are two solutions provided in these threads, one by zz involving modifying DMC's headers slightly and the other by Craig involving using coffimplib on the official libraries.

Neither of them work.

So the question is: has anyone *else* ever successfully compiled and used nedmalloc with DMC/D?  How did you do it?

<mutter>Oh, OMF.  If DMD output COFF like every other Windows compiler...</mutter>