> On Mon, Feb 01, 1999 at 01:52:20AM -0800, Sigbjorn Finne 
> (Intl Vendor) wrote:
> 
> > Yes, afraid so. However, I'm currently testing some changes I've
> > made to drop that DLL dependency. Included in that batch of
> > changes is the support for generating & using DLLs too.
> > (prepare for ghc compiled binaries of less than 10k in size :-)
> 
> Hmmm. I'd be interested in that in the Unix world. Somehow, a hello
> world in 168k text, 4k/8k data (3.02/4.02-not-completely-current),
> 24.6k/6.8k bss (3.02/4.02) is a bit depressing. :-) :-/ :-(
> 
> That is with -lm and -lc already linked as shared libraries.

We haven't tackled this so far because there's a problem with shared
libraries of the PIC variety (i.e. ELF shared libs and several other types)
- namely that PIC reserves a register to point to the indirection tables.
Since we already steal 4 registers on x86 for our own purposes, we'd
probably have to give one of these back.  That would mean a *big*
performance hit for dynamically linked library code.

There's already a performance hit for DLLs, because the dynamic linker can't
cope with static data structures, so we have to do away with static
constructors.

It's a sad, sad situation, but we welcome insight from any linker experts
out there!

Cheers,
        Simon

Reply via email to