Subversion Repositories tendra.SVN

Rev

Rev 6 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 7u83 1
/*
6 7u83 2
 * Copyright (c) 2002-2005 The TenDRA Project <http://www.tendra.org/>.
3
 * All rights reserved.
4
 *
5
 * Redistribution and use in source and binary forms, with or without
6
 * modification, are permitted provided that the following conditions are met:
7
 *
8
 * 1. Redistributions of source code must retain the above copyright notice,
9
 *    this list of conditions and the following disclaimer.
10
 * 2. Redistributions in binary form must reproduce the above copyright notice,
11
 *    this list of conditions and the following disclaimer in the documentation
12
 *    and/or other materials provided with the distribution.
13
 * 3. Neither the name of The TenDRA Project nor the names of its contributors
14
 *    may be used to endorse or promote products derived from this software
15
 *    without specific, prior written permission.
16
 *
17
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
18
 * IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
19
 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
21
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22
 * EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
24
 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
26
 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
27
 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
 *
29
 * $Id$
30
 */
31
/*
2 7u83 32
    		 Crown Copyright (c) 1997
6 7u83 33
 
2 7u83 34
    This TenDRA(r) Computer Program is subject to Copyright
35
    owned by the United Kingdom Secretary of State for Defence
36
    acting through the Defence Evaluation and Research Agency
37
    (DERA).  It is made available to Recipients with a
38
    royalty-free licence for its use, reproduction, transfer
39
    to other parties and amendment for any purpose not excluding
40
    product development provided that any such use et cetera
41
    shall be deemed to be acceptance of the following conditions:-
6 7u83 42
 
2 7u83 43
        (1) Its Recipients shall ensure that this Notice is
44
        reproduced upon any copies or amended versions of it;
6 7u83 45
 
2 7u83 46
        (2) Any amended version of it shall be clearly marked to
47
        show both the nature of and the organisation responsible
48
        for the relevant amendment or amendments;
6 7u83 49
 
2 7u83 50
        (3) Its onward transfer from a recipient to another
51
        party shall be deemed to be that party's acceptance of
52
        these conditions;
6 7u83 53
 
2 7u83 54
        (4) DERA gives no warranty or assurance as to its
55
        quality or suitability for any purpose and DERA accepts
56
        no liability whatsoever in relation to any use to which
57
        it may be put.
58
*/
59
 
60
 
61
/**********************************************************************
62
$Author: pwe $
63
$Date: 1998/03/17 16:35:00 $
64
$Revision: 1.4 $
65
$Log: dg_aux.h,v $
66
 * Revision 1.4  1998/03/17  16:35:00  pwe
67
 * correction for non-NEWDIAGS
68
 *
69
 * Revision 1.3  1998/03/11  11:03:29  pwe
70
 * DWARF optimisation info
71
 *
72
 * Revision 1.2  1998/02/18  11:22:14  pwe
73
 * test corrections
74
 *
75
 * Revision 1.1.1.1  1998/01/17  15:55:46  release
76
 * First version to be checked into rolling release.
77
 *
78
 * Revision 1.3  1997/12/04  19:36:19  pwe
79
 * ANDF-DE V1.9
80
 *
81
 * Revision 1.2  1997/10/23  09:21:01  pwe
82
 * ANDF-DE V1.7 and extra diags
83
 *
84
 * Revision 1.1  1997/08/23  13:26:40  pwe
85
 * initial ANDF-DE
86
 *
87
***********************************************************************/
88
 
89
#ifndef dg_aux_key
90
#define dg_aux_key
91
 
6 7u83 92
extern dg_name new_dg_name(dg_name_key k);
93
extern dg_type new_dg_type(dg_type_key k);
94
extern dg_info new_dg_info(dg_info_key k);
95
extern void extend_dg_name(dg_name nm);
96
extern void extend_dg_type(dg_type nm);
97
extern void init_dgtag(dg_tag tg);
98
extern dg_tag gen_tg_tag(void);
99
extern dg_type get_qual_dg_type(dg_qual_type_key qual, dg_type typ);
100
extern dg_type get_dg_bitfield_type(dg_type typ, shape sha,
101
				    bitfield_variety bv);
102
extern char *idname_chars(dg_idname nam);
103
extern dg_filename get_filename(long dat, char *host, char *path, char *name);
104
extern short_sourcepos shorten_sourcepos(dg_sourcepos pos);
105
extern short_sourcepos end_sourcepos(dg_sourcepos pos);
106
extern dg_type find_proc_type(dg_type t);
2 7u83 107
 
6 7u83 108
extern exp diaginfo_exp(exp e);
2 7u83 109
 
110
#ifdef NEWDIAGS
111
 
6 7u83 112
extern void diag_kill_id(exp id);
113
extern void set_obj_ref(dg_name nm);
114
extern exp copy_res_diag(exp e, dg_info d, exp var, exp lab);
115
extern exp diag_hold_check(exp e);
116
extern void start_diag_inlining(exp e, dg_name dn);
117
extern void end_diag_inlining(exp e, dg_name dn);
118
extern dg_info combine_diaginfo(dg_info d1, dg_info d2);
119
extern void diag_inline_result(exp e);
120
extern void dg_whole_comp(exp whole, exp comp);
121
extern void dg_complete_inline(exp whole, exp comp);
122
extern void dg_dead_code(exp dead, exp prev);
123
extern void dg_rdnd_code(exp rdnd, exp next);
124
extern void dg_detach_const(exp part, exp whole);
125
extern void dg_rem_ass(exp ass);
126
extern void dg_restruct_code(exp outer, exp inner, int posn);
127
extern void dg_extracted(exp nm, exp old);
128
extern void strip_dg_context(exp e);
129
extern void make_optim_dg(int reason, exp e);
130
extern exp copy_dg_separate(exp e);
2 7u83 131
 
132
#endif
133
 
6 7u83 134
extern exp relative_exp(shape s, token t);
2 7u83 135
 
136
#endif