[quake3-commits] r2282 - trunk/code/qcommon

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Tue Jun 19 10:57:51 EDT 2012


Author: ztm
Date: 2012-06-19 10:57:51 -0400 (Tue, 19 Jun 2012)
New Revision: 2282

Modified:
   trunk/code/qcommon/vm.c
Log:
when interacting with QVMs, Clang/LLVM requires the standard use of the va_*() macros instead of (fast) call hacks

>From /dev/humancontroller.

Modified: trunk/code/qcommon/vm.c
===================================================================
--- trunk/code/qcommon/vm.c	2012-06-19 14:53:40 UTC (rev 2281)
+++ trunk/code/qcommon/vm.c	2012-06-19 14:57:51 UTC (rev 2282)
@@ -336,7 +336,7 @@
 ============
 */
 intptr_t QDECL VM_DllSyscall( intptr_t arg, ... ) {
-#if !id386
+#if !id386 || defined __clang__
   // rcg010206 - see commentary above
   intptr_t args[16];
   int i;
@@ -835,7 +835,7 @@
                             args[4],  args[5],  args[6], args[7],
                             args[8],  args[9]);
 	} else {
-#if id386 || idsparc // i386/sparc calling convention doesn't need conversion
+#if ( id386 || idsparc ) && !defined __clang__ // calling convention doesn't need conversion in some cases
 #ifndef NO_VM_COMPILED
 		if ( vm->compiled )
 			r = VM_CallCompiled( vm, (int*)&callnum );



More information about the quake3-commits mailing list