Deleted Added
full compact
_setjmp.S (180081) _setjmp.S (184548)
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * William Jolitz.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 20 unchanged lines hidden (view full) ---

29 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 * SUCH DAMAGE.
31 */
32
33#if defined(LIBC_SCCS) && !defined(lint)
34 .asciz "@(#)_setjmp.s 5.1 (Berkeley) 4/23/90"
35#endif /* LIBC_SCCS and not lint */
36#include <machine/asm.h>
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * William Jolitz.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 20 unchanged lines hidden (view full) ---

29 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 * SUCH DAMAGE.
31 */
32
33#if defined(LIBC_SCCS) && !defined(lint)
34 .asciz "@(#)_setjmp.s 5.1 (Berkeley) 4/23/90"
35#endif /* LIBC_SCCS and not lint */
36#include <machine/asm.h>
37__FBSDID("$FreeBSD: head/lib/libc/i386/gen/_setjmp.S 180081 2008-06-28 17:58:06Z das $");
37__FBSDID("$FreeBSD: head/lib/libc/i386/gen/_setjmp.S 184548 2008-11-02 01:28:47Z peter $");
38
39/*
40 * C library -- _setjmp, _longjmp
41 *
42 * _longjmp(a,v)
43 * will generate a "return(v)" from the last call to
44 * _setjmp(a)
45 * by restoring registers from the environment 'a'.

--- 7 unchanged lines hidden (view full) ---

53 movl %ebx, 4(%eax)
54 movl %esp, 8(%eax)
55 movl %ebp,12(%eax)
56 movl %esi,16(%eax)
57 movl %edi,20(%eax)
58 fnstcw 24(%eax)
59 xorl %eax,%eax
60 ret
38
39/*
40 * C library -- _setjmp, _longjmp
41 *
42 * _longjmp(a,v)
43 * will generate a "return(v)" from the last call to
44 * _setjmp(a)
45 * by restoring registers from the environment 'a'.

--- 7 unchanged lines hidden (view full) ---

53 movl %ebx, 4(%eax)
54 movl %esp, 8(%eax)
55 movl %ebp,12(%eax)
56 movl %esi,16(%eax)
57 movl %edi,20(%eax)
58 fnstcw 24(%eax)
59 xorl %eax,%eax
60 ret
61END(_setjmp)
61
62 .weak CNAME(_longjmp)
63 .set CNAME(_longjmp),CNAME(___longjmp)
64ENTRY(___longjmp)
65 movl 4(%esp),%edx
66 movl 8(%esp),%eax
67 movl 0(%edx),%ecx
68 movl 4(%edx),%ebx
69 movl 8(%edx),%esp
70 movl 12(%edx),%ebp
71 movl 16(%edx),%esi
72 movl 20(%edx),%edi
73 fldcw 24(%edx)
74 testl %eax,%eax
75 jnz 1f
76 incl %eax
771: movl %ecx,0(%esp)
78 ret
62
63 .weak CNAME(_longjmp)
64 .set CNAME(_longjmp),CNAME(___longjmp)
65ENTRY(___longjmp)
66 movl 4(%esp),%edx
67 movl 8(%esp),%eax
68 movl 0(%edx),%ecx
69 movl 4(%edx),%ebx
70 movl 8(%edx),%esp
71 movl 12(%edx),%ebp
72 movl 16(%edx),%esi
73 movl 20(%edx),%edi
74 fldcw 24(%edx)
75 testl %eax,%eax
76 jnz 1f
77 incl %eax
781: movl %ecx,0(%esp)
79 ret
80END(___longjmp)