Subversion Repositories tendra.SVN

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 7u83 1
/*
2
    		 Crown Copyright (c) 1997
3
 
4
    This TenDRA(r) Computer Program is subject to Copyright
5
    owned by the United Kingdom Secretary of State for Defence
6
    acting through the Defence Evaluation and Research Agency
7
    (DERA).  It is made available to Recipients with a
8
    royalty-free licence for its use, reproduction, transfer
9
    to other parties and amendment for any purpose not excluding
10
    product development provided that any such use et cetera
11
    shall be deemed to be acceptance of the following conditions:-
12
 
13
        (1) Its Recipients shall ensure that this Notice is
14
        reproduced upon any copies or amended versions of it;
15
 
16
        (2) Any amended version of it shall be clearly marked to
17
        show both the nature of and the organisation responsible
18
        for the relevant amendment or amendments;
19
 
20
        (3) Its onward transfer from a recipient to another
21
        party shall be deemed to be that party's acceptance of
22
        these conditions;
23
 
24
        (4) DERA gives no warranty or assurance as to its
25
        quality or suitability for any purpose and DERA accepts
26
        no liability whatsoever in relation to any use to which
27
        it may be put.
28
*/
29
 
30
 
31
/*
32
			    VERSION INFORMATION
33
			    ===================
34
 
35
--------------------------------------------------------------------------
36
$Header: /u/g/release/CVSROOT/Source/src/installers/sparc/solaris/dw2_config.h,v 1.4 1998/03/15 16:00:50 pwe Exp $
37
--------------------------------------------------------------------------
38
$Log: dw2_config.h,v $
39
 * Revision 1.4  1998/03/15  16:00:50  pwe
40
 * regtrack dwarf dagnostics added
41
 *
42
 * Revision 1.3  1998/03/11  11:04:05  pwe
43
 * DWARF optimisation info
44
 *
45
 * Revision 1.2  1998/02/18  11:22:29  pwe
46
 * test corrections
47
 *
48
 * Revision 1.1.1.1  1998/01/17  15:55:53  release
49
 * First version to be checked into rolling release.
50
 *
51
 * Revision 1.8  1998/01/09  15:00:05  pwe
52
 * prep restructure
53
 *
54
 * Revision 1.7  1997/12/04  19:54:49  pwe
55
 * ANDF-DE V1.9
56
 *
57
 * Revision 1.6  1997/10/28  10:19:24  pwe
58
 * extra diags
59
 *
60
 * Revision 1.5  1997/10/23  09:33:41  pwe
61
 * prep extra_diags
62
 *
63
 * Revision 1.4  1997/10/10  18:33:32  pwe
64
 * prep ANDF-DE revision
65
 *
66
 * Revision 1.3  1997/08/23  13:55:16  pwe
67
 * initial ANDF-DE
68
 *
69
 * Revision 1.2  1997/05/02  11:09:28  pwe
70
 * dwarf2 re return address offset
71
 *
72
 * Revision 1.1  1997/04/17  12:00:27  pwe
73
 * dwarf2 support
74
 *
75
--------------------------------------------------------------------------
76
*/
77
 
78
#ifndef dw2_config_key
79
#define dw2_config_key 1
80
 
81
#include "config.h"
82
#include "common_types.h"
83
#include "out.h"
84
 
85
 
86
#ifdef NEEDS_DEBUG_ALIGN
87
 
88
#define DWARF_MOD_VERSION	( DWARF_VERSION * 101 )
89
#define DW_CIE_MOD_VERSION	( DW_CIE_VERSION * 101 )
90
 
91
#else
92
 
93
#define DWARF_MOD_VERSION	DWARF_VERSION
94
#define DW_CIE_MOD_VERSION	DW_CIE_VERSION
95
 
96
#endif
97
 
98
 
99
extern long instr_count;
100
extern long fde_count;
101
 
102
#define count_ins(n)		if (instr_count >= 0) instr_count += n; \
103
				if (fde_count >= 0) fde_count += n
104
#define lost_count_ins()	instr_count = fde_count = -1
105
#define any_output		instr_count
106
#define reset_any_output	instr_count = 0
107
 
108
 
109
#define d_outnl() outnl()
110
 
111
extern void out8 PROTO_S ((void));
112
extern void out16 PROTO_S ((void));
113
extern void out32 PROTO_S ((void));
114
extern void dot_align PROTO_S ((long n));
115
 
116
extern void out_string PROTO_S ((char * s));
117
extern void start_string PROTO_S ((char * s));
118
extern void end_string PROTO_S ((void));
119
extern void enter_section PROTO_S ((char * s));
120
extern void exit_section PROTO_S ((void));
121
extern void outnl_comment PROTO_S ((char * s));
122
extern void outnl_comment_i PROTO_S ((char * s, long i));
123
extern void out_dwf_label PROTO_S ((long l, int set));
124
extern void out_code_label PROTO_S ((long l));
125
extern void out_dwf_dist_to_label PROTO_S ((long l));
126
extern void out_dwf_labdiff PROTO_S ((long lo, long hi));
127
extern void out_ext_label PROTO_S ((char * s));
128
extern void out_producer PROTO_S ((char * s));
129
 
130
extern int dw_is_const PROTO_S ((exp e));
131
extern exp dw_has_location PROTO_S ((exp e));
132
extern void dw2_locate_exp PROTO_S ((exp e, int locate_const, int cx));
133
extern void dw2_prepare_locate PROTO_S ((exp id));
134
extern void dw_at_procdetails PROTO_S ((void));
135
extern void dw2_locate_result PROTO_S ((shape sha));
136
extern void dw2_locate_val PROTO_S ((dg_where v));
137
extern void dw2_offset_exp PROTO_S ((exp e));
138
extern void dw2_cie PROTO_S ((void));
139
 
140
extern void dw2_data_aranges PROTO_S ((void));
141
extern void trace_dw_branch_exits PROTO_S ((exp e));
142
 
143
extern int dw_loc_equivalence PROTO_S ((exp a, exp b));
144
extern void dw_allocated PROTO_S ((dg_name nm, exp id));
145
extern void dw_deallocated PROTO_S ((dg_name nm));
146
extern void dw_all_deallocated PROTO_S ((void));
147
 
148
 
149
extern long dwarf_lab_num;
150
 
151
#define min_instr_size 4
152
#define framecode_factor 4
153
#define framedata_factor 4
154
#define next_dwarf_label() (++dwarf_lab_num)
155
 
156
#define dw_line_base -2	/* small negative for short loop end-conditions */
157
#define dw_line_range 16
158
 
159
 
160
extern void note_data PROTO_S ((int ll, bool ro));
161
 
162
 
163
#endif