From 1ad7f9cff1b3fceb6a5feb6c573bb46d5982e22a Mon Sep 17 00:00:00 2001 From: Tim Angus Date: Mon, 26 Sep 2005 13:47:59 +0000 Subject: [PATCH] * Fix to broken win32 fix patch --- code/qcommon/vm_x86.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/code/qcommon/vm_x86.c b/code/qcommon/vm_x86.c index a1e33179..a86e6673 100644 --- a/code/qcommon/vm_x86.c +++ b/code/qcommon/vm_x86.c @@ -79,8 +79,8 @@ int qftol0F7F( void ); static int ftolPtr = (int)qftol0F7F; #endif // FTOL_PTR -void AsmCall( void ); -static int asmCallPtr = (int)AsmCall; +void doAsmCall( void ); +static int asmCallPtr = (int)doAsmCall; #endif // !_WIN32 @@ -197,8 +197,11 @@ void callAsmCall(void) currentVM = savedVM; } +// Note the C space function AsmCall is never actually called, and is in fact +// arbitarily named (though this is not true for the MSC version). When a vm +// makes a system call, control jumps straight to the doAsmCall label. void AsmCall( void ) { - asm( CMANG(AsmCall) ": \n\t" \ + asm( CMANG(doAsmCall) ": \n\t" \ " movl (%%edi),%%eax \n\t" \ " subl $4,%%edi \n\t" \ " orl %%eax,%%eax \n\t" \