Mercurial > illumos > onarm
comparison usr/src/cmd/abi/spectrans/spec2trace/symtab.h @ 0:c9caec207d52 b86
Initial porting based on b86
author | Koji Uno <koji.uno@sun.com> |
---|---|
date | Tue, 02 Jun 2009 18:56:50 +0900 |
parents | |
children | 1a15d5aaf794 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:c9caec207d52 |
---|---|
1 /* | |
2 * CDDL HEADER START | |
3 * | |
4 * The contents of this file are subject to the terms of the | |
5 * Common Development and Distribution License, Version 1.0 only | |
6 * (the "License"). You may not use this file except in compliance | |
7 * with the License. | |
8 * | |
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE | |
10 * or http://www.opensolaris.org/os/licensing. | |
11 * See the License for the specific language governing permissions | |
12 * and limitations under the License. | |
13 * | |
14 * When distributing Covered Code, include this CDDL HEADER in each | |
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. | |
16 * If applicable, add the following below this CDDL HEADER, with the | |
17 * fields enclosed by brackets "[]" replaced with your own identifying | |
18 * information: Portions Copyright [yyyy] [name of copyright owner] | |
19 * | |
20 * CDDL HEADER END | |
21 */ | |
22 /* | |
23 * Copyright (c) 1997-1999 by Sun Microsystems, Inc. | |
24 * All rights reserved. | |
25 */ | |
26 | |
27 #ifndef _SYMTAB_H | |
28 #define _SYMTAB_H | |
29 | |
30 #pragma ident "@(#)symtab.h 1.3 05/06/08 SMI" | |
31 | |
32 | |
33 #ifdef __cplusplus | |
34 extern "C" { | |
35 #endif | |
36 | |
37 typedef struct entry_t ENTRY; /* Forward declaration */ | |
38 | |
39 extern void symtab_new_function(const int, const char *); | |
40 extern void symtab_clear_function(void); | |
41 extern void symtab_clear_includes(void); | |
42 extern void symtab_clear_errval(void); | |
43 extern void symtab_clear_exception(void); | |
44 | |
45 /* Generated by m4 -- character string values */ | |
46 extern void symtab_set_prototype(char *p); | |
47 extern char *symtab_get_prototype(void); | |
48 extern void symtab_set_formals(char *); | |
49 extern char *symtab_get_formals(void); | |
50 extern void symtab_set_actuals(char *); | |
51 extern char *symtab_get_actuals(void); | |
52 extern char *symtab_get_cast(void); | |
53 extern void symtab_set_cast(char *); | |
54 extern void symtab_set_filename(char const *); | |
55 extern char *symtab_get_filename(void); | |
56 | |
57 extern int symtab_get_nonreturn(void); | |
58 extern void symtab_set_line(int); | |
59 extern int symtab_get_line(void); | |
60 extern void symtab_set_skip(int); | |
61 extern int symtab_get_skip(void); | |
62 | |
63 /* Manual code */ | |
64 extern void symtab_set_function(char *, int, char *, char *, char *, int); | |
65 extern ENTRY *symtab_get_function(void); | |
66 | |
67 extern void symtab_set_exception(char *, int, char *); | |
68 extern ENTRY *symtab_get_exception(void); | |
69 | |
70 extern void symtab_set_errval(char *, int, char *, char *, char *, int); | |
71 extern ENTRY *symtab_get_errval(void); | |
72 | |
73 extern void symtab_add_args(char *, int, char *, char *, char *, int); | |
74 extern ENTRY *symtab_get_first_arg(void); | |
75 extern ENTRY *symtab_get_next_arg(void); | |
76 extern ENTRY *symtab_get_last_arg(void); | |
77 | |
78 extern void symtab_add_varargs(char *, int, char *, char *, char *); | |
79 extern ENTRY *symtab_get_first_vararg(void); | |
80 extern ENTRY *symtab_get_next_vararg(void); | |
81 extern void symtab_print_varargs(void); | |
82 | |
83 extern void symtab_add_globals(char *, int, char *, char *, char *, int); | |
84 extern ENTRY *symtab_get_first_global(void); | |
85 extern ENTRY *symtab_get_next_global(void); | |
86 | |
87 extern void symtab_add_print_types(char *, char *); | |
88 extern char *symtab_get_first_print_type(void); | |
89 extern char *symtab_get_next_print_type(void); | |
90 | |
91 extern void symtab_add_includes(char *); | |
92 extern char *symtab_get_first_include(void); | |
93 extern char *symtab_get_next_include(void); | |
94 extern void symtab_sort_includes(void); | |
95 | |
96 /* ENTRYs */ | |
97 extern char *name_of(ENTRY *); | |
98 extern int validity_of(ENTRY *); | |
99 extern int line_of(ENTRY *); | |
100 extern char *file_of(ENTRY *); | |
101 extern char *type_of(ENTRY *); | |
102 extern char *x_type_of(ENTRY *); | |
103 extern char *basetype_of(ENTRY *); | |
104 extern int levels_of(ENTRY *); | |
105 extern char *inverse_of(ENTRY *); | |
106 extern char *selector_of(ENTRY *); | |
107 extern int preuses_of(ENTRY *); | |
108 extern int postuses_of(ENTRY *); | |
109 | |
110 #ifdef __cplusplus | |
111 } | |
112 #endif | |
113 | |
114 #endif /* _SYMTAB_H */ |