1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-18 03:46:03 +00:00

Fix gcc3.2.2 compile

This commit is contained in:
Martin Blapp 2003-03-27 23:13:08 +00:00
parent 71330591d0
commit 6e2b9e5b70
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=77560
3 changed files with 18 additions and 18 deletions

View File

@ -1255,7 +1255,9 @@
+ if (! pThis) dummy_can_throw_anything("xxx"); // address something
+
+ volatile long edx = 0, eax = 0; // for register returns
+ void * stackptr;
+ asm volatile (
+ "mov %%esp, %6\n\t"
+ // copy values
+ "mov %0, %%eax\n\t"
+ "mov %%eax, %%edx\n\t"
@ -1279,13 +1281,11 @@
+ "mov %%eax, %4\n\t"
+ "mov %%edx, %5\n\t"
+ // cleanup stack
+ "mov %0, %%eax\n\t"
+ "shl $2, %%eax\n\t"
+ "add %%eax, %%esp\n\t"
+ "mov %6, %%esp\n\t"
+ :
+ : "m"(nStackLongs), "m"(pStackLongs), "m"(pThis), "m"(nVtableIndex), "m"(eax), "m"(edx)
+ : "eax", "edx" );
+
+ : "m"(nStackLongs), "m"(pStackLongs), "m"(pThis), "m"(nVtableIndex),
+ "m"(eax), "m"(edx), "m"(stackptr)
+ : "eax", "edx" );
+ switch( eReturnType )
+ {
+ case typelib_TypeClass_HYPER:

View File

@ -1255,7 +1255,9 @@
+ if (! pThis) dummy_can_throw_anything("xxx"); // address something
+
+ volatile long edx = 0, eax = 0; // for register returns
+ void * stackptr;
+ asm volatile (
+ "mov %%esp, %6\n\t"
+ // copy values
+ "mov %0, %%eax\n\t"
+ "mov %%eax, %%edx\n\t"
@ -1279,13 +1281,11 @@
+ "mov %%eax, %4\n\t"
+ "mov %%edx, %5\n\t"
+ // cleanup stack
+ "mov %0, %%eax\n\t"
+ "shl $2, %%eax\n\t"
+ "add %%eax, %%esp\n\t"
+ "mov %6, %%esp\n\t"
+ :
+ : "m"(nStackLongs), "m"(pStackLongs), "m"(pThis), "m"(nVtableIndex), "m"(eax), "m"(edx)
+ : "eax", "edx" );
+
+ : "m"(nStackLongs), "m"(pStackLongs), "m"(pThis), "m"(nVtableIndex),
+ "m"(eax), "m"(edx), "m"(stackptr)
+ : "eax", "edx" );
+ switch( eReturnType )
+ {
+ case typelib_TypeClass_HYPER:

View File

@ -1255,7 +1255,9 @@
+ if (! pThis) dummy_can_throw_anything("xxx"); // address something
+
+ volatile long edx = 0, eax = 0; // for register returns
+ void * stackptr;
+ asm volatile (
+ "mov %%esp, %6\n\t"
+ // copy values
+ "mov %0, %%eax\n\t"
+ "mov %%eax, %%edx\n\t"
@ -1279,13 +1281,11 @@
+ "mov %%eax, %4\n\t"
+ "mov %%edx, %5\n\t"
+ // cleanup stack
+ "mov %0, %%eax\n\t"
+ "shl $2, %%eax\n\t"
+ "add %%eax, %%esp\n\t"
+ "mov %6, %%esp\n\t"
+ :
+ : "m"(nStackLongs), "m"(pStackLongs), "m"(pThis), "m"(nVtableIndex), "m"(eax), "m"(edx)
+ : "eax", "edx" );
+
+ : "m"(nStackLongs), "m"(pStackLongs), "m"(pThis), "m"(nVtableIndex),
+ "m"(eax), "m"(edx), "m"(stackptr)
+ : "eax", "edx" );
+ switch( eReturnType )
+ {
+ case typelib_TypeClass_HYPER: