data and bss tests in dll_list::alloc

Christopher Faylor
Wed Feb 8 15:21:00 GMT 2012

On Wed, Feb 08, 2012 at 03:54:19PM +0100, Corinna Vinschen wrote:
>I just fixed a typo in the fabort calls in dll_list::alloc.  But in
>fact I'm wondering if we really need the extensive data_start/data_end/
>bss_start/bss_end tests.  The reason is simple.  All DLL segments are
>always loaded into adjacent addresses, always in the order given by the
>DLL segement information.

If that is the case can we simplify the child_copy operation?  That
would speed up fork slightly.

>And given that, we don't even have to compare data and bss addresses at
>all.  The HINSTANCE is the address of the module.  Just compare it to
>the stored d->handle and if they are not identical, we're done, right?
>Or am I missing something?

Don't think so.


More information about the Cygwin-developers mailing list