Deleted Added
full compact
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 ---