Deleted Added
full compact
_setjmp.S (234115) _setjmp.S (272362)
1/*-
2 * Copyright (c) 2002 Peter Grehan.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

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

21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 */
26/* $NetBSD: _setjmp.S,v 1.1 1997/03/29 20:55:53 thorpej Exp $ */
27
28#include <machine/asm.h>
1/*-
2 * Copyright (c) 2002 Peter Grehan.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

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

21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 */
26/* $NetBSD: _setjmp.S,v 1.1 1997/03/29 20:55:53 thorpej Exp $ */
27
28#include <machine/asm.h>
29__FBSDID("$FreeBSD: head/lib/libc/powerpc/gen/_setjmp.S 234115 2012-04-11 00:00:40Z nwhitehorn $");
29__FBSDID("$FreeBSD: head/lib/libc/powerpc/gen/_setjmp.S 272362 2014-10-01 15:00:21Z bapt $");
30
31/*
32 * C library -- _setjmp, _longjmp
33 *
34 * _longjmp(a,v)
35 * will generate a "return(v?v:1)" from the last call to
36 * _setjmp(a)
37 * by restoring registers from the stack.

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

53ENTRY(_setjmp)
54 mflr %r11
55 mfcr %r12
56 mr %r10,%r1
57 mr %r9,%r2
58 stmw %r9,20(%r3)
59 li %r3,0
60 blr
30
31/*
32 * C library -- _setjmp, _longjmp
33 *
34 * _longjmp(a,v)
35 * will generate a "return(v?v:1)" from the last call to
36 * _setjmp(a)
37 * by restoring registers from the stack.

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

53ENTRY(_setjmp)
54 mflr %r11
55 mfcr %r12
56 mr %r10,%r1
57 mr %r9,%r2
58 stmw %r9,20(%r3)
59 li %r3,0
60 blr
61END(_setjmp)
61
62ENTRY(_longjmp)
63 lmw %r9,20(%r3)
64 mtlr %r11
65 mtcr %r12
66 mr %r1,%r10
67 or. %r3,%r4,%r4
68 bnelr
69 li %r3,1
70 blr
62
63ENTRY(_longjmp)
64 lmw %r9,20(%r3)
65 mtlr %r11
66 mtcr %r12
67 mr %r1,%r10
68 or. %r3,%r4,%r4
69 bnelr
70 li %r3,1
71 blr
72END(_longjmp)
71
72 .section .note.GNU-stack,"",%progbits
73
74 .section .note.GNU-stack,"",%progbits