1994-12-29 18:35:47 -05:00
|
|
|
/*
|
|
|
|
* SCHEME->C
|
|
|
|
*
|
|
|
|
* x86 assembly code.
|
|
|
|
*
|
|
|
|
* This code originally came from the Linux port, so someone else gets
|
|
|
|
* the credit for writing it.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifdef __i486__
|
|
|
|
.align 4
|
|
|
|
#else
|
|
|
|
.align 2
|
|
|
|
#endif
|
2000-03-01 04:57:06 -05:00
|
|
|
.globl sc_geti386regs
|
1994-12-29 18:35:47 -05:00
|
|
|
|
2000-03-01 04:57:06 -05:00
|
|
|
sc_geti386regs:
|
1994-12-29 18:35:47 -05:00
|
|
|
pushl %ebp
|
|
|
|
movl %esp,%ebp
|
|
|
|
pushl %ecx
|
|
|
|
movl %eax,%ecx
|
|
|
|
movl 8(%ebp),%eax
|
|
|
|
movl %ecx,(%eax)
|
|
|
|
popl %ecx
|
|
|
|
movl %ecx,4(%eax)
|
|
|
|
movl %edx,8(%eax)
|
|
|
|
movl %ebx,12(%eax)
|
|
|
|
movl %esi,16(%eax)
|
|
|
|
movl %edi,20(%eax)
|
|
|
|
movl %ebp,%esp
|
|
|
|
popl %ebp
|
|
|
|
ret
|
|
|
|
|