Deleted Added
full compact
sigsetjmp.S (85528) sigsetjmp.S (106755)
1/* $NetBSD: sigsetjmp.S,v 1.2 1996/10/17 03:08:07 cgd Exp $ */
1/* $NetBSD: sigsetjmp.S,v 1.2 1996/10/17 03:08:07 cgd Exp $ */
2/* $FreeBSD: head/lib/libc/ia64/gen/sigsetjmp.S 85528 2001-10-26 08:26:45Z dfr $ */
2/* $FreeBSD: head/lib/libc/ia64/gen/sigsetjmp.S 106755 2002-11-11 08:11:44Z marcel $ */
3
4/*
5 * Copyright (c) 1994, 1995 Carnegie-Mellon University.
6 * All rights reserved.
7 *
8 * Author: Chris G. Demetriou
9 *
10 * Permission to use, copy, modify and distribute this software and

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

40 * the last call to
41 * sigsetjmp(a, mask)
42 * by restoring registers from the stack.
43 * If `mask' is non-zero, the previous signal
44 * state will be restored.
45 */
46
47ENTRY(sigsetjmp, 2)
3
4/*
5 * Copyright (c) 1994, 1995 Carnegie-Mellon University.
6 * All rights reserved.
7 *
8 * Author: Chris G. Demetriou
9 *
10 * Permission to use, copy, modify and distribute this software and

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

40 * the last call to
41 * sigsetjmp(a, mask)
42 * by restoring registers from the stack.
43 * If `mask' is non-zero, the previous signal
44 * state will be restored.
45 */
46
47ENTRY(sigsetjmp, 2)
48 //
49 // Compensate for the pointer twiddling that setjmp does.
50 //
51 dep r14=r0,r32,0,4
52 ;;
53 add r14=J_SIGMASK+0x10,r14 // place to save mask
48 add r14=J_SIGMASK,in0 // place to save mask
49 cmp.ne p6,p7=0,in1 // save signal state?
54 ;;
55 st8 [r14]=in1 // save mask value
50 ;;
51 st8 [r14]=in1 // save mask value
56 cmp.ne p6,p7=0,in1 // save signal state?
57(p6) br.cond.dptk.many setjmp
58(p7) br.cond.dpnt.many _setjmp
59END(sigsetjmp)
60
61 WEAK_ALIAS(siglongjmp,__siglongjmp)
62ENTRY(__siglongjmp, 2)
52(p6) br.cond.dptk.many setjmp
53(p7) br.cond.dpnt.many _setjmp
54END(sigsetjmp)
55
56 WEAK_ALIAS(siglongjmp,__siglongjmp)
57ENTRY(__siglongjmp, 2)
63 //
64 // Compensate for the pointer twiddling that setjmp does.
65 //
66 dep r14=r0,r32,0,4
67 ;;
68 add r14=J_SIGMASK+0x10,r14 // address of mask value
58 add r14=J_SIGMASK,in0 // address of mask value
69 ;;
70 ld8 r14=[r14]
71 ;;
72 cmp.ne p6,p7=0,r14 // did we save signals?
73(p6) br.cond.dptk.many longjmp
74(p7) br.cond.dpnt.many _longjmp
75END(__siglongjmp)
59 ;;
60 ld8 r14=[r14]
61 ;;
62 cmp.ne p6,p7=0,r14 // did we save signals?
63(p6) br.cond.dptk.many longjmp
64(p7) br.cond.dpnt.many _longjmp
65END(__siglongjmp)