From: cgf AT cygnus DOT com (Christopher Faylor) Subject: Re: New import library format proposal. 15 Apr 1998 18:53:07 -0700 Message-ID: <199804160125.VAA14161.cygnus.cygwin32.developers@tweedledumb.cygnus.com> To: cygwin32-developers AT cygnus DOT com, sos AT buggy DOT prospect DOT com DOT ru >I designed this import library format to speed-up process startup. No >exports are linked statically, all dll symbols (except LoadLibrary() and >GetProcAddres() in libkernel32.a) are resolved dynamically on demand. I >hope this should speed-up the startup time of a process. Actual linking is >performed only on the first call of dll-exported function, the next calls >are a bit faster than in a current implementation (direct jump instead of >indirect jump). Dll-exported datas should be accessed/imported in a old >(current) way. Library files will have a smaller size than now. New format >is compatible with old object files. > >Every import library module have the following structure: > > [pseudo code deleted] > >What do you think about? And... Do we need it?-) I've mentioned doing something similar to this to a couple of people. I think it could be a win. The only thing I'm not sure about is that's self-modifying code, right? In a multi-threaded application that's a little tricky. cgf