ucontext.h (190616) | ucontext.h (227399) |
---|---|
1/*- 2 * Copyright (c) 2003 Peter Wemm 3 * Copyright (c) 1999 Marcel Moolenaar 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 12 unchanged lines hidden (view full) --- 21 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 22 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 23 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 * | 1/*- 2 * Copyright (c) 2003 Peter Wemm 3 * Copyright (c) 1999 Marcel Moolenaar 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 12 unchanged lines hidden (view full) --- 21 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 22 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 23 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 * |
29 * $FreeBSD: head/sys/amd64/include/ucontext.h 190616 2009-04-01 12:44:17Z kib $ | 29 * $FreeBSD: head/sys/amd64/include/ucontext.h 227399 2011-11-09 18:25:50Z kib $ |
30 */ 31 32#ifndef _MACHINE_UCONTEXT_H_ 33#define _MACHINE_UCONTEXT_H_ 34 35/* 36 * mc_trapno bits. Shall be in sync with TF_XXX. 37 */ 38#define _MC_HASSEGS 0x1 39#define _MC_HASBASES 0x2 40#define _MC_FLAG_MASK (_MC_HASSEGS | _MC_HASBASES) 41 42typedef struct __mcontext { 43 /* | 30 */ 31 32#ifndef _MACHINE_UCONTEXT_H_ 33#define _MACHINE_UCONTEXT_H_ 34 35/* 36 * mc_trapno bits. Shall be in sync with TF_XXX. 37 */ 38#define _MC_HASSEGS 0x1 39#define _MC_HASBASES 0x2 40#define _MC_FLAG_MASK (_MC_HASSEGS | _MC_HASBASES) 41 42typedef struct __mcontext { 43 /* |
44 * The first 24 fields must match the definition of 45 * sigcontext. So that we can support sigcontext 46 * and ucontext_t at the same time. | 44 * The definition of mcontext_t must match the layout of 45 * struct sigcontext after the sc_mask member. This is so 46 * that we can support sigcontext and ucontext_t at the same 47 * time. |
47 */ | 48 */ |
48 __register_t mc_onstack; /* XXX - sigcontext compat. */ 49 __register_t mc_rdi; /* machine state (struct trapframe) */ | 49 __register_t mc_onstack; /* XXX - sigcontext compat. */ 50 __register_t mc_rdi; /* machine state (struct trapframe) */ |
50 __register_t mc_rsi; 51 __register_t mc_rdx; 52 __register_t mc_rcx; 53 __register_t mc_r8; 54 __register_t mc_r9; 55 __register_t mc_rax; 56 __register_t mc_rbx; 57 __register_t mc_rbp; --- 41 unchanged lines hidden --- | 51 __register_t mc_rsi; 52 __register_t mc_rdx; 53 __register_t mc_rcx; 54 __register_t mc_r8; 55 __register_t mc_r9; 56 __register_t mc_rax; 57 __register_t mc_rbx; 58 __register_t mc_rbp; --- 41 unchanged lines hidden --- |