Deleted Added
full compact
frame.h (50477) frame.h (51792)
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * William Jolitz.
7 *
8 * Redistribution and use in source and binary forms, with or without

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

29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * SUCH DAMAGE.
35 *
36 * from: @(#)frame.h 5.2 (Berkeley) 1/18/91
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * William Jolitz.
7 *
8 * Redistribution and use in source and binary forms, with or without

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

29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * SUCH DAMAGE.
35 *
36 * from: @(#)frame.h 5.2 (Berkeley) 1/18/91
37 * $FreeBSD: head/sys/amd64/include/frame.h 50477 1999-08-28 01:08:13Z peter $
37 * $FreeBSD: head/sys/amd64/include/frame.h 51792 1999-09-29 15:06:27Z marcel $
38 */
39
40#ifndef _MACHINE_FRAME_H_
41#define _MACHINE_FRAME_H_ 1
42
38 */
39
40#ifndef _MACHINE_FRAME_H_
41#define _MACHINE_FRAME_H_ 1
42
43#include <sys/signal.h>
44
45/*
46 * System stack frames.
47 */
48
49/*
50 * Exception/Trap Stack Frame
51 */
52

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

152 int cf_eip;
153 int cf_cs;
154 int cf_eflags;
155 /* below only when crossing rings (e.g. user to kernel) */
156 int cf_esp;
157 int cf_ss;
158};
159
43/*
44 * System stack frames.
45 */
46
47/*
48 * Exception/Trap Stack Frame
49 */
50

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

150 int cf_eip;
151 int cf_cs;
152 int cf_eflags;
153 /* below only when crossing rings (e.g. user to kernel) */
154 int cf_esp;
155 int cf_ss;
156};
157
160/*
161 * Signal frame, arguments passed to application signal handlers.
162 */
163struct sigframe {
164 /*
165 * The first three members may be used by applications.
166 */
167
168 register_t sf_signum;
169
170 /*
171 * Either 'int' for old-style FreeBSD handler or 'siginfo_t *'
172 * pointing to sf_siginfo for SA_SIGINFO handlers.
173 */
174 register_t sf_arg2;
175
176 /* Points to sf_siginfo.si_sc. */
177 register_t sf_scp;
178
179 /*
180 * The following arguments are not constrained by the
181 * function call protocol.
182 * Applications are not supposed to access these members,
183 * except using the pointers we provide in the first three
184 * arguments.
185 */
186 char *sf_addr;
187 union {
188 __siginfohandler_t *sf_action;
189 __sighandler_t *sf_handler;
190 } sf_ahu;
191
192 /* In the SA_SIGINFO case, sf_arg2 points here. */
193 siginfo_t sf_siginfo;
194};
195
196int kdb_trap __P((int, int, struct trapframe *));
197extern int (*pmath_emulate) __P((struct trapframe *));
198
199#define INTR_TO_TRAPFRAME(frame) ((struct trapframe *)&(frame)->if_fs)
200
201#endif /* _MACHINE_FRAME_H_ */
158int kdb_trap __P((int, int, struct trapframe *));
159extern int (*pmath_emulate) __P((struct trapframe *));
160
161#define INTR_TO_TRAPFRAME(frame) ((struct trapframe *)&(frame)->if_fs)
162
163#endif /* _MACHINE_FRAME_H_ */