summaryrefslogtreecommitdiff
path: root/sysdeps/i386/__longjmp.S
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1995-09-01 22:25:08 +0000
committerRoland McGrath <roland@gnu.org>1995-09-01 22:25:08 +0000
commit44c8d1a2a8775ad8c67fa1c46ccc67cccf585d93 (patch)
treec77e32c88b64caccdd673fc54efdba189361a6e6 /sysdeps/i386/__longjmp.S
parente3726b056b3b1cfde7019e29d5d3c50ce70e08e9 (diff)
Fri Sep 1 16:16:12 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* libc-symbols.h (link_warning): Take new first arg SYMBOL; ask for a warning on references to that specific symbol, not the entire containing object file. (stub_warning): Pass symbol name to link_warning. * stdio/gets.c: Pass function name in link_warning invocation. * hurd/intr-msg.c: Treat apparent EINTR return from msg trap like MACH_SEND_INTERRUPTED. That indicates interrupt_operation was sent, but failed. * stdlib/msort.c: Include memcopy.h. (msort_with_tmp): If operating on aligned op_t words, use direct word fetches and stores. * sysdeps/i386/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): Add missing backslash.
Diffstat (limited to 'sysdeps/i386/__longjmp.S')
-rw-r--r--sysdeps/i386/__longjmp.S12
1 files changed, 6 insertions, 6 deletions
diff --git a/sysdeps/i386/__longjmp.S b/sysdeps/i386/__longjmp.S
index f546622828..77916cdc38 100644
--- a/sysdeps/i386/__longjmp.S
+++ b/sysdeps/i386/__longjmp.S
@@ -25,11 +25,11 @@ ENTRY (__longjmp)
movl 4(%esp), %ecx /* User's jmp_buf in %ecx. */
movl 8(%esp), %eax /* Second argument is return value. */
/* Restore registers. */
- movl JB_BX(%ecx), %ebx
- movl JB_SI(%ecx), %esi
- movl JB_DI(%ecx), %edi
- movl JB_BP(%ecx), %ebp
- movl JB_SP(%ecx), %esp
+ movl (JB_BX*4)(%ecx), %ebx
+ movl (JB_SI*4)(%ecx), %esi
+ movl (JB_DI*4)(%ecx), %edi
+ movl (JB_BP*4)(%ecx), %ebp
+ movl (JB_SP*4)(%ecx), %esp
/* Jump to saved PC. */
- movl JB_PC(%ecx), %ecx
+ movl (JB_PC*4)(%ecx), %ecx
jmp *%ecx