Displaying 3 results from an estimated 3 matches for "jmp_ptr".
Did you mean:
tmp_ptr
2011 Apr 14
0
[PATCH] setjmp.S: longjmp() must not cause setjmp() to return zero
...eming at linux.intel.com>
---
com32/lib/setjmp.S | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/com32/lib/setjmp.S b/com32/lib/setjmp.S
index 658df48..344c62a 100644
--- a/com32/lib/setjmp.S
+++ b/com32/lib/setjmp.S
@@ -53,6 +53,10 @@ longjmp:
movl 4(%esp),%edx # jmp_ptr address
movl 8(%esp),%eax # Return value
#endif
+ cmpl $0,%eax
+ jnz 1f
+ inc %eax
+1:
movl (%edx),%ebx
movl 4(%edx),%esp
movl 8(%edx),%ebp
--
1.7.4.2
2006 Jun 26
0
[klibc 24/43] i386 support for klibc
...he call/return stack happy
+ movl %ebp,8(%edx)
+ movl %esi,12(%edx)
+ movl %edi,16(%edx)
+ movl %ecx,20(%edx) # Return address
+ ret
+
+ .size setjmp,.-setjmp
+
+ .text
+ .align 4
+ .globl longjmp
+ .type longjmp, @function
+longjmp:
+#ifdef _REGPARM
+ xchgl %eax,%edx
+#else
+ movl 4(%esp),%edx # jmp_ptr address
+ movl 8(%esp),%eax # Return value
+#endif
+ movl (%edx),%ebx
+ movl 4(%edx),%esp
+ movl 8(%edx),%ebp
+ movl 12(%edx),%esi
+ movl 16(%edx),%edi
+ jmp *20(%edx)
+
+ .size longjmp,.-longjmp
diff --git a/usr/klibc/arch/i386/sigreturn.S b/usr/klibc/arch/i386/sigreturn.S
new file mode 100644
in...
2006 Jun 28
35
[klibc 00/31] klibc as a historyless patchset (updated and reorganized)
I have updated the klibc patchset based on feedback received. In
particular, the patchset has been reorganized so as not to break
git-bisect.
Additionally, this updates the patch base to 2.6.17-git12
(d38b69689c349f35502b92e20dafb30c62d49d63) and klibc 1.4.8; the main
difference on the klibc side is removal of obsolete code.
This is also available as a git tree at: