[project @ 2001-06-26 11:07:42 by simonpj]
[ghc-hetmet.git] / ghc / compiler / prelude / ForeignCall.lhs
index 47eafed..bceb024 100644 (file)
@@ -104,7 +104,17 @@ isCasmTarget other     = False
 \end{code}
 
 
-Stuff to do with calling convention
+Stuff to do with calling convention:
+
+ccall:         Caller allocates parameters, *and* deallocates them.
+
+stdcall:       Caller allocates parameters, callee deallocates.
+               Function name has @N after it, where N is number of arg bytes
+               e.g.  _Foo@8
+
+ToDo: The stdcall calling convention is x86 (win32) specific,
+so perhaps we should emit a warning if it's being used on other
+platforms.
 
 \begin{code}
 data CCallConv = CCallConv | StdCallConv
@@ -125,10 +135,6 @@ ccallConvToInt CCallConv   = 1
 Generate the gcc attribute corresponding to the given
 calling convention (used by PprAbsC):
 
-ToDo: The stdcall calling convention is x86 (win32) specific,
-so perhaps we should emit a warning if it's being used on other
-platforms.
-
 \begin{code}
 ccallConvAttribute :: CCallConv -> String
 ccallConvAttribute StdCallConv = "__stdcall"