X-Git-Url: http://git.buserror.net/cgi-bin/gitweb.cgi?p=polintos%2Fscott%2Fpriv.git;a=blobdiff_plain;f=doc%2Fabi%2Fx86;h=7a11bd11a47a813b1a6962e25d1953da52ff9563;hp=1f9dbef6a1c6ea93e3bd70ce6f65f4e8ee9f2d5c;hb=00929a1561b0f510a582f9876affa96e4fccb72a;hpb=9cd5b143a255c39bf26b3accae3f15edda03ccc7 diff --git a/doc/abi/x86 b/doc/abi/x86 index 1f9dbef..7a11bd1 100644 --- a/doc/abi/x86 +++ b/doc/abi/x86 @@ -4,7 +4,7 @@ Out-of-Process Method Invocation: Caller: eax: pointer to parameter info block (PIB) - Call the 32-bit address stored at 0x7fff0000 to invoke the method. + Call 0x7fff0000 to invoke the method. Upon return: ebx, esi, edi, ebp, esp: preserved @@ -13,7 +13,7 @@ Out-of-Process Method Invocation: function will search for an exception handling function that covers the calling address. If none is found, it will assume that it is a language without exception - handling, and return the exception to the caller in eax. + handling, an5Ad return the exception to the caller in eax. edx: length of exception segment, if any ecx: may be clobbered @@ -23,9 +23,17 @@ Out-of-Process Method Invocation: requested esp: NULL. - Jump to the 32-bit address stored at 0x7fff0004 to return. + Jump to 0x7fff0080 to return. Upon return: eax: pointer to exception, or NULL if none edx: length of exception segment, if any - ebx, esi, edi, ebp, esp: may be clobbered + ebx, ecx, esi, edi, ebp, esp: may be clobbered + +Other system calls: + eax, edx, ecx: syscall arguments. + + Call 0x7fff0000 + 0x80 * syscallnum + + eax: return value + edx, ecx: may be clobbered