summaryrefslogtreecommitdiffstats
path: root/newlib/libc/machine/i386/setjmp.S
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libc/machine/i386/setjmp.S')
-rw-r--r--newlib/libc/machine/i386/setjmp.S4
1 files changed, 4 insertions, 0 deletions
diff --git a/newlib/libc/machine/i386/setjmp.S b/newlib/libc/machine/i386/setjmp.S
index 7cabba4d0..9ecef385b 100644
--- a/newlib/libc/machine/i386/setjmp.S
+++ b/newlib/libc/machine/i386/setjmp.S
@@ -67,6 +67,10 @@ SYM (longjmp):
movl 8(ebp),edi /* get jmp_buf */
movl 12(ebp),eax /* store retval in j->eax */
+ testl eax,eax
+ jne 0f
+ incl eax
+0:
movl eax,0(edi)
movl 24(edi),ebp