From c4ffa3c427f77224e8a2d58219c9de25666b0b69 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Thu, 28 Apr 2005 23:59:44 +0000 Subject: * shared_info.h (cygwin_shared_address): Bump to a higher value to avoid collision with large data areas. * fhandler_console.cc (fhandler_console::get_tty_stuff): Accommodate changes to open_shared arguments. * fhandler_tape.cc (mtinfo_init): Ditto. * pinfo.cc (pinfo::init): Use open_shared rather than win32 mmap calls. * shared.cc (user_shared_initialize): Ditto. (memory_init): Ditto. (open_shared): Change to allow use a smore general mmap handler. * shared_info.h (shared_locations): Add SH_JUSTCREATE, SH_JUSTOPEN. (open_shared): Change declaration to match new usage. * autoload.cc (LoadDLLfuncEx2): Define in terms of LoadDLLfuncEx3. (LoadDLLfuncEx3): New macro. --- winsup/cygwin/autoload.cc | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'winsup/cygwin/autoload.cc') diff --git a/winsup/cygwin/autoload.cc b/winsup/cygwin/autoload.cc index 8986c7924..f264b8608 100644 --- a/winsup/cygwin/autoload.cc +++ b/winsup/cygwin/autoload.cc @@ -75,11 +75,15 @@ details. */ /* Standard DLL load macro. May invoke a fatal error if the function isn't found. */ -#define LoadDLLfunc(name, n, dllname) LoadDLLfuncEx (name, n, dllname, 0) -#define LoadDLLfuncEx(name, n, dllname, notimp) LoadDLLfuncEx2(name, n, dllname, notimp, 0) +#define LoadDLLfunc(name, n, dllname) \ + LoadDLLfuncEx (name, n, dllname, 0) +#define LoadDLLfuncEx(name, n, dllname, notimp) \ + LoadDLLfuncEx2(name, n, dllname, notimp, 0) +#define LoadDLLfuncEx2(name, n, dllname, notimp, err) \ + LoadDLLfuncEx3(name, n, dllname, notimp, err, 0) /* Main DLL setup stuff. */ -#define LoadDLLfuncEx2(name, n, dllname, notimp, err) \ +#define LoadDLLfuncEx3(name, n, dllname, notimp, err, fn) \ LoadDLLprime (dllname, dll_func_load) \ __asm__ (" \n\ .section ." #dllname "_text,\"wx\" \n\ @@ -91,11 +95,11 @@ _win32_" mangle (name, n) ": \n\ .byte 0xe9 \n\ .long -4 + 1f - . \n\ 1:movl (2f),%eax \n\ - call *(%eax) \n\ + call *(%eax) \n\ 2:.long ." #dllname "_info \n\ - .long (" #n "+" #notimp ") | (((" #err ") & 0xffff) <<16) \n\ - .asciz \"" #name "\" \n\ - .text \n\ + .long (" #n "+" #notimp ") | (((" #err ") & 0xff) <<16) | (((" #fn ") & 0xff) << 24) \n\ + .asciz \"" #name "\" \n\ + .text \n\ "); /* DLL loader helper functions used during initialization. */ -- cgit v1.2.3