sigsetjmp.S (234115) | sigsetjmp.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: sigsetjmp.S,v 1.4 1998/10/03 12:30:38 tsubai 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: sigsetjmp.S,v 1.4 1998/10/03 12:30:38 tsubai Exp $ */ 27 28#include <machine/asm.h> |
29__FBSDID("$FreeBSD: head/lib/libc/powerpc/gen/sigsetjmp.S 234115 2012-04-11 00:00:40Z nwhitehorn $"); | 29__FBSDID("$FreeBSD: head/lib/libc/powerpc/gen/sigsetjmp.S 272362 2014-10-01 15:00:21Z bapt $"); |
30 31/* 32 * C library -- sigsetjmp, siglongjmp 33 * 34 * siglongjmp(a,v) 35 * will generate a "return(v?v:1)" from the last call to 36 * sigsetjmp(a, savemask) 37 * by restoring registers from the stack. --- 30 unchanged lines hidden (view full) --- 681: 69 mflr %r11 70 mfcr %r12 71 mr %r10,%r1 72 mr %r9,%r2 73 stmw %r9,20(%r6) 74 li %r3,0 75 blr | 30 31/* 32 * C library -- sigsetjmp, siglongjmp 33 * 34 * siglongjmp(a,v) 35 * will generate a "return(v?v:1)" from the last call to 36 * sigsetjmp(a, savemask) 37 * by restoring registers from the stack. --- 30 unchanged lines hidden (view full) --- 681: 69 mflr %r11 70 mfcr %r12 71 mr %r10,%r1 72 mr %r9,%r2 73 stmw %r9,20(%r6) 74 li %r3,0 75 blr |
76END(sigsetjmp) |
|
76 77ENTRY(siglongjmp) 78 lmw %r9,20(%r3) 79 lwz %r7,0(%r3) 80 mr %r6,%r4 81 mtlr %r11 82 mtcr %r12 83 mr %r1,%r10 --- 5 unchanged lines hidden (view full) --- 89 li %r5,0 /* oset = NULL */ 90 li %r0,SYS_sigprocmask /* sigprocmask(SIG_SET, &set, NULL) */ 91 sc /* assume no error XXX */ 921: 93 or. %r3,%r6,%r6 94 bnelr 95 li %r3,1 96 blr | 77 78ENTRY(siglongjmp) 79 lmw %r9,20(%r3) 80 lwz %r7,0(%r3) 81 mr %r6,%r4 82 mtlr %r11 83 mtcr %r12 84 mr %r1,%r10 --- 5 unchanged lines hidden (view full) --- 90 li %r5,0 /* oset = NULL */ 91 li %r0,SYS_sigprocmask /* sigprocmask(SIG_SET, &set, NULL) */ 92 sc /* assume no error XXX */ 931: 94 or. %r3,%r6,%r6 95 bnelr 96 li %r3,1 97 blr |
98END(siglongjmp) |
|
97 98 .section .note.GNU-stack,"",%progbits | 99 100 .section .note.GNU-stack,"",%progbits |