Subversion Repositories tendra.SVN

Rev

Rev 2 | Go to most recent revision | Details | Compare with Previous | 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
$Author: pwe $
33
$Date: 1998/03/15 16:00:28 $
34
$Revision: 1.4 $
35
$Log: dw2_config.h,v $
36
 * Revision 1.4  1998/03/15  16:00:28  pwe
37
 * regtrack dwarf dagnostics added
38
 *
39
 * Revision 1.3  1998/03/11  11:03:14  pwe
40
 * DWARF optimisation info
41
 *
42
 * Revision 1.2  1998/02/18  11:22:07  pwe
43
 * test corrections
44
 *
45
 * Revision 1.1.1.1  1998/01/17  15:55:53  release
46
 * First version to be checked into rolling release.
47
 *
48
 * Revision 1.10  1998/01/09  14:47:57  pwe
49
 * prep restructure
50
 *
51
 * Revision 1.9  1997/12/04  20:01:33  pwe
52
 * ANDF-DE V1.9
53
 *
54
 * Revision 1.8  1997/10/28  10:26:51  pwe
55
 * correct extra diags / locations
56
 *
57
 * Revision 1.7  1997/10/23  09:37:32  pwe
58
 * extra_diags
59
 *
60
 * Revision 1.6  1997/10/10  18:26:05  pwe
61
 * prep ANDF-DE revision
62
 *
63
 * Revision 1.5  1997/08/23  13:46:07  pwe
64
 * initial ANDF-DE
65
 *
66
 * Revision 1.4  1997/04/17  11:56:09  pwe
67
 * dwarf2 improvements
68
 *
69
 * Revision 1.3  1997/04/02  10:33:46  pwe
70
 * diagnose pl_tests
71
 *
72
 * Revision 1.2  1997/03/24  11:15:50  pwe
73
 * dwarf2 option/default
74
 *
75
 * Revision 1.1  1997/03/20  16:24:41  pwe
76
 * dwarf2
77
 *
78
**********************************************************************/
79
 
80
#ifndef dw2_config_key
81
#define dw2_config_key 1
82
 
83
#include "config.h"
84
#include "common_types.h"
85
#include "out.h"
86
#include "assembler.h"
87
#include "localflags.h"
88
#include "dw2_iface.h"
89
 
90
#define	DWARF_MOD_VERSION	DWARF_VERSION
91
#define	DW_CIE_MOD_VERSION	DW_CIE_VERSION
92
 
93
 
94
#define d_outnl() outs("\n")
95
 
96
extern void out_string PROTO_S ((char * s));
97
extern void start_string PROTO_S ((char * s));
98
extern void end_string PROTO_S ((void));
99
extern void enter_section PROTO_S ((char * s));
100
extern void exit_section PROTO_S ((void));
101
extern void outnl_comment PROTO_S ((char * s));
102
extern void outnl_comment_i PROTO_S ((char * s, long i));
103
extern void out_dwf_label PROTO_S ((long l, int set));
104
extern void out_code_label PROTO_S ((long l));
105
extern void out_dwf_dist_to_label PROTO_S ((long l));
106
extern void out_dwf_labdiff PROTO_S ((long lo, long hi));
107
extern void out_ext_label PROTO_S ((char * s));
108
extern void out_producer PROTO_S ((char * s));
109
 
110
extern int dw_is_const PROTO_S ((exp e));
111
extern exp dw_has_location PROTO_S ((exp e));
112
extern void dw2_locate_exp PROTO_S ((exp e, int locate_const, int cx));
113
extern void dw2_prepare_locate PROTO_S ((exp id));
114
extern void dw_at_procdetails PROTO_S ((void));
115
extern void dw2_locate_result PROTO_S ((shape sha));
116
extern void dw2_locate_val PROTO_S ((dg_where v));
117
extern void dw2_offset_exp PROTO_S ((exp e));
118
extern void dw2_data_aranges PROTO_S ((void));
119
 
120
extern void dw2_cie PROTO_S ((void));
121
extern void trace_dw_branch_exits PROTO_S ((exp e));
122
 
123
extern int dw_loc_equivalence PROTO_S ((exp a, exp b));
124
extern void dw_allocated PROTO_S ((dg_name nm, exp id));
125
extern void dw_deallocated PROTO_S ((dg_name nm));
126
extern void dw_all_deallocated PROTO_S ((void));
127
 
128
 
129
extern long dwarf_lab_num;
130
 
131
#define min_instr_size 1
132
#define framecode_factor 1
133
#define framedata_factor -4	/* registers are stored -ve from CFA */
134
#define next_dwarf_label() (++dwarf_lab_num)
135
#define out8() outbyte ()
136
#define out16() outshort ()
137
#define out32() outlong ()
138
 
139
#define dw_line_base -16	/* small negative for short loop end-conditions */
140
#define dw_line_range 128	/* large, since we don't calculate instruction lengths */
141
 
142
 
143
extern long instr_count;
144
#define any_output		instr_count
145
#define reset_any_output	instr_count = 0
146
 
147
 
148
extern void note_data PROTO_S ((char * s));
149
extern void note_ro PROTO_S ((char * s));
150
 
151
 
152
 
153
#endif