mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 10:22:45 -04:00
implicit underscores
This commit is contained in:
parent
ecad9e186e
commit
8d06089d88
@ -88,15 +88,28 @@ switch_to_thread_context(struct ThreadContext *context) {
|
|||||||
then call setjmp() to record that stack pointer in the
|
then call setjmp() to record that stack pointer in the
|
||||||
_jmp_context. Then restore back to the original stack pointer. */
|
_jmp_context. Then restore back to the original stack pointer. */
|
||||||
|
|
||||||
#if defined(__i386__)
|
#if defined(_M_IX86)
|
||||||
|
/* Here is own own implementation of setjmp and longjmp for I386, via
|
||||||
|
Windows syntax. */
|
||||||
|
|
||||||
|
int cs_setjmp(cs_jmp_buf env);
|
||||||
|
void cs_longjmp(cs_jmp_buf env);
|
||||||
|
|
||||||
|
#elif defined(__i386__)
|
||||||
/* Here is own own implementation of setjmp and longjmp for I386, via
|
/* Here is own own implementation of setjmp and longjmp for I386, via
|
||||||
GNU syntax. */
|
GNU syntax. */
|
||||||
|
|
||||||
|
#if defined(IS_LINUX)
|
||||||
|
/* On Linux, the underscores are not implicit. */
|
||||||
|
#define cs_setjmp _cs_setjmp
|
||||||
|
#define cs_longjmp _cs_longjmp
|
||||||
|
#endif
|
||||||
|
|
||||||
int cs_setjmp(cs_jmp_buf env);
|
int cs_setjmp(cs_jmp_buf env);
|
||||||
void cs_longjmp(cs_jmp_buf env);
|
void cs_longjmp(cs_jmp_buf env);
|
||||||
|
|
||||||
__asm__
|
__asm__
|
||||||
("cs_setjmp:\n"
|
("_cs_setjmp:\n"
|
||||||
"popl %edx\n"
|
"popl %edx\n"
|
||||||
"popl %eax\n"
|
"popl %eax\n"
|
||||||
"pushl %eax\n"
|
"pushl %eax\n"
|
||||||
@ -111,7 +124,7 @@ __asm__
|
|||||||
"jmp *%edx\n");
|
"jmp *%edx\n");
|
||||||
|
|
||||||
__asm__
|
__asm__
|
||||||
("cs_longjmp:\n"
|
("_cs_longjmp:\n"
|
||||||
"popl %edx\n"
|
"popl %edx\n"
|
||||||
"popl %eax\n"
|
"popl %eax\n"
|
||||||
"movl 0(%eax),%ebx\n"
|
"movl 0(%eax),%ebx\n"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user