]> git.saurik.com Git - apple/xnu.git/blob - osfmk/ddb/db_coff.h
xnu-344.23.tar.gz
[apple/xnu.git] / osfmk / ddb / db_coff.h
1 /*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
11 *
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
18 * under the License.
19 *
20 * @APPLE_LICENSE_HEADER_END@
21 */
22 /*
23 * @OSF_COPYRIGHT@
24 *
25 */
26 /*
27 * HISTORY
28 *
29 * Revision 1.1.1.1 1998/09/22 21:05:47 wsanchez
30 * Import of Mac OS X kernel (~semeria)
31 *
32 * Revision 1.1.1.1 1998/03/07 02:26:09 wsanchez
33 * Import of OSF Mach kernel (~mburg)
34 *
35 * Revision 1.1.2.1 1995/02/23 16:34:08 alanl
36 * Initial file creation.
37 * [95/02/06 sjs]
38 *
39 * $EndLog$
40 */
41
42 #ifndef _DDB_DB_COFF_H_
43 #define _DDB_DB_COFF_H_
44
45 #define DB_NO_AOUT 1
46
47
48 /*
49 * Symbol table routines for COFF format files.
50 */
51
52 boolean_t coff_db_sym_init(
53 char * symtab,
54 char * esymtab,
55 char * name,
56 char * task_addr);
57
58 db_sym_t coff_db_lookup(
59 db_symtab_t *stab,
60 char * symstr);
61
62 int coff_db_lookup_incomplete(
63 db_symtab_t *stab,
64 char * symstr,
65 char ** name,
66 int *len,
67 int *toadd);
68
69 int coff_db_print_completion(
70 db_symtab_t *stab,
71 char * symstr);
72
73 db_sym_t coff_db_search_symbol(
74 db_symtab_t *symtab,
75 db_addr_t off,
76 db_strategy_t strategy,
77 db_expr_t *diffp); /* in/out */
78
79 void coff_db_symbol_values(
80 db_sym_t sym,
81 char **namep,
82 db_expr_t *valuep);
83
84 db_sym_t coff_db_search_by_addr(
85 db_symtab_t *stab,
86 db_addr_t addr,
87 char **file,
88 char **func,
89 int *line,
90 db_expr_t *diff,
91 int *args);
92
93 boolean_t coff_db_line_at_pc(
94 db_symtab_t *stab,
95 db_sym_t sym,
96 char **file,
97 int *line,
98 db_expr_t pc);
99
100 int coff_db_qualified_print_completion(
101 db_symtab_t *stab,
102 char *sym);
103
104 void coff_db_init(void);
105
106 #endif /* !_DDB_DB_COFF_H_ */