delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/1998/01/11/19:54:17

From: js AT servisoft DOT pt (Joao Pedro Sousa)
Subject: Re: __stdcall functions in relocatable DLLs
11 Jan 1998 19:54:17 -0800 :
Message-ID: <3.0.5.32.19980111205807.0079f400.cygnus.gnu-win32@mail.servisoft.pt>
References: <199801111748 DOT JAA20371 AT graft DOT XCF DOT Berkeley DOT EDU>
Mime-Version: 1.0
To: Jason Alan Nordwick <nordwick AT graft DOT XCF DOT Berkeley DOT EDU>
Cc: gnu-win32 AT cygnus DOT com

At 09:48 11-01-1998 -0800, Jason Alan Nordwick wrote:
>
>Is there anywhere or anything that explains the different calling
>conventions ?

__stdcall is the Win32 function calling convention. It specifies that
function parammeters are pushed on the stack from right to left, and the
called function cleans up the stack on function exit. On some architectures
(e.g. i386) this can be slightly faster by using a special instruction that
returns from the function and removes a specified number of bytes from the
stack (ret n).
The "normal" C calling convention places the burden of cleaning the stack
on the caller side.

By the way, anyone knows if exported functions on a DLL MUST be __stdcall?
Can they be C calling convention?

--
JPSousa
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request AT cygnus DOT com" with one line of text: "help".

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019