]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - gdb/config/i386/nm-fbsd.h
Initial creation of sourceware repository
[thirdparty/binutils-gdb.git] / gdb / config / i386 / nm-fbsd.h
1 /* Native-dependent definitions for Intel 386 running BSD Unix, for GDB.
2 Copyright 1986, 1987, 1989, 1992, 1996 Free Software Foundation, Inc.
3
4 This file is part of GDB.
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
19
20 #ifndef NM_FREEBSD_H
21 #define NM_FREEBSD_H
22
23 /* Be shared lib aware */
24 #include "solib.h"
25
26 /* This is the amount to subtract from u.u_ar0
27 to get the offset in the core file of the register values. */
28
29 #include <machine/vmparam.h>
30 #define KERNEL_U_ADDR USRSTACK
31
32 #define REGISTER_U_ADDR(addr, blockend, regno) \
33 (addr) = i386_register_u_addr ((blockend),(regno));
34
35 extern int
36 i386_register_u_addr PARAMS ((int, int));
37
38 #define PTRACE_ARG3_TYPE char*
39
40 /* make structure definitions match up with those expected in solib.c */
41 #define link_object sod
42 #define lo_name sod_name
43 #define lo_library sod_library
44 #define lo_unused sod_reserved
45 #define lo_major sod_major
46 #define lo_minor sod_minor
47 #define lo_next sod_next
48
49 #define link_map so_map
50 #define lm_addr som_addr
51 #define lm_name som_path
52 #define lm_next som_next
53 #define lm_lop som_sod
54 #define lm_lob som_sodbase
55 #define lm_rwt som_write
56 #define lm_ld som_dynamic
57 #define lm_lpd som_spd
58
59 #define link_dynamic_2 section_dispatch_table
60 #define ld_loaded sdt_loaded
61 #define ld_need sdt_sods
62 #define ld_rules sdt_filler1
63 #define ld_got sdt_got
64 #define ld_plt sdt_plt
65 #define ld_rel sdt_rel
66 #define ld_hash sdt_hash
67 #define ld_stab sdt_nzlist
68 #define ld_stab_hash sdt_filler2
69 #define ld_buckets sdt_buckets
70 #define ld_symbols sdt_strings
71 #define ld_symb_size sdt_str_sz
72 #define ld_text sdt_text_sz
73 #define ld_plt_sz sdt_plt_sz
74
75 #define rtc_symb rt_symbol
76 #define rtc_sp rt_sp
77 #define rtc_next rt_next
78
79 #define ld_debug so_debug
80 #define ldd_version dd_version
81 #define ldd_in_debugger dd_in_debugger
82 #define ldd_sym_loaded dd_sym_loaded
83 #define ldd_bp_addr dd_bpt_addr
84 #define ldd_bp_inst dd_bpt_shadow
85 #define ldd_cp dd_cc
86
87 #define link_dynamic _dynamic
88 #define ld_version d_version
89 #define ldd d_debug
90 #define ld_un d_un
91 #define ld_2 d_sdt
92
93 /* Return sizeof user struct to callers in less machine dependent routines */
94
95 #define KERNEL_U_SIZE kernel_u_size()
96 extern int kernel_u_size PARAMS ((void));
97
98 #endif /* NM_FREEBSD_H */