aboutsummaryrefslogtreecommitdiff
path: root/gcc/vmsdbg.h
blob: 65147a6cf5d4720180091e2b1dd6f0f653e407b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
/* This file contains definitions for the data structures and codes used in
   VMS debugging information.  */

#ifndef VMSDBG_H
#define VMSDBG_H 1
	
typedef unsigned short int DST_DTYPE;
#define DST_K_SOURCE 155
#define DST_K_PROLOG 162
#define DST_K_BLKBEG 176
#define DST_K_BLKEND 177
#define DST_K_LINE_NUM 185
#define DST_K_MODBEG 188
#define DST_K_MODEND 189
#define DST_K_RTNBEG 190
#define DST_K_RTNEND 191

typedef struct _DST_HEADER {
  union  {
    unsigned short int dst_w_length;
    unsigned short int dst_x_length;
  } dst__header_length;
  union  {
    DST_DTYPE dst_w_type;
    DST_DTYPE dst_x_type;
  } dst__header_type;
} DST_HEADER;
#define DST_K_DST_HEADER_SIZE 4
	
typedef unsigned int DST_LANGUAGE;
#define DST_K_FORTRAN 1
#define DST_K_C 7
#define DST_K_ADA 9
#define DST_K_UNKNOWN 10
#define DST_K_CXX 15
typedef struct _DST_MODULE_BEGIN {
  DST_HEADER dst_a_modbeg_header;
  struct  {
    unsigned dst_v_modbeg_hide : 1;
    unsigned dst_v_modbeg_version : 1;
    unsigned dst_v_modbeg_unused : 6;
  } dst_b_modbeg_flags;
  unsigned char dst_b_modbeg_unused;
  DST_LANGUAGE dst_l_modbeg_language;
  unsigned short int dst_w_version_major;
  unsigned short int dst_w_version_minor;
  unsigned char dst_b_modbeg_name;
} DST_MODULE_BEGIN;
#define DST_K_MODBEG_SIZE 15
	
typedef struct _DST_MB_TRLR {
  unsigned char dst_b_compiler;
} DST_MB_TRLR;
#define DST_K_MB_TRLR_SIZE 1
#define DST_K_VERSION_MAJOR 1
#define DST_K_VERSION_MINOR 13
typedef struct _DST_MODULE_END {
  DST_HEADER dst_a_modend_header;
} DST_MODULE_END;
#define DST_K_MODEND_SIZE 4
typedef struct _DST_ROUTINE_BEGIN {
  DST_HEADER dst_a_rtnbeg_header;
  struct  {
    unsigned dst_v_rtnbeg_unused : 4;
    unsigned dst_v_rtnbeg_unalloc : 1;
    unsigned dst_v_rtnbeg_prototype : 1;
    unsigned dst_v_rtnbeg_inlined : 1;
    unsigned dst_v_rtnbeg_no_call : 1;
  } dst_b_rtnbeg_flags;
  int *dst_l_rtnbeg_address;
  int *dst_l_rtnbeg_pd_address;
  unsigned char dst_b_rtnbeg_name;
} DST_ROUTINE_BEGIN;
#define DST_K_RTNBEG_SIZE 14
typedef struct _DST_ROUTINE_END {
  DST_HEADER dst_a_rtnend_header;
  char dst_b_rtnend_unused;
  unsigned int dst_l_rtnend_size;
} DST_ROUTINE_END;
#define DST_K_RTNEND_SIZE 9
typedef struct _DST_BLOCK_BEGIN {
  DST_HEADER dst_a_blkbeg_header;
  unsigned char dst_b_blkbeg_unused;
  int *dst_l_blkbeg_address;
  unsigned char dst_b_blkbeg_name;
} DST_BLOCK_BEGIN;
#define DST_K_BLKBEG_SIZE 10
typedef struct _DST_BLOCK_END {
  DST_HEADER dst_a_blkend_header;
  unsigned char dst_b_blkend_unused;
  unsigned int dst_l_blkend_size;
} DST_BLOCK_END;
#define DST_K_BLKEND_SIZE 9
typedef struct _DST_LINE_NUM_HEADER {
  DST_HEADER dst_a_line_num_header;
} DST_LINE_NUM_HEADER;
#define DST_K_LINE_NUM_HEADER_SIZE 4

typedef struct _DST_PCLINE_COMMANDS {
  char dst_b_pcline_command;
  union  {
    unsigned int dst_l_pcline_unslong;
    unsigned short int dst_w_pcline_unsword;
    unsigned char dst_b_pcline_unsbyte;
  } dst_a_pcline_access_fields;
} DST_PCLINE_COMMANDS;
#define DST_K_PCLINE_COMMANDS_SIZE 5
#define DST_K_PCLINE_COMMANDS_SIZE_MIN 2
#define DST_K_PCLINE_COMMANDS_SIZE_MAX 5
#define DST_K_DELTA_PC_LOW -128
#define DST_K_DELTA_PC_HIGH 0
#define DST_K_DELTA_PC_W 1
#define DST_K_INCR_LINUM 2
#define DST_K_INCR_LINUM_W 3
#define DST_K_SET_LINUM 9
#define DST_K_SET_ABS_PC 16
#define DST_K_DELTA_PC_L 17
#define DST_K_INCR_LINUM_L 18
#define DST_K_SET_LINUM_B 19
#define DST_K_SET_LINUM_L 20
typedef struct _DST_SOURCE_CORR {
  DST_HEADER dst_a_source_corr_header;
} DST_SOURCE_CORR;
#define DST_K_SOURCE_CORR_HEADER_SIZE 4
	
#define DST_K_SRC_DECLFILE 1
#define DST_K_SRC_SETFILE 2
#define DST_K_SRC_SETREC_L 3
#define DST_K_SRC_SETREC_W 4
#define DST_K_SRC_SETLNUM_L 5
#define DST_K_SRC_SETLNUM_W 6
#define DST_K_SRC_INCRLNUM_B 7
#define DST_K_SRC_DEFLINES_W 10
#define DST_K_SRC_DEFLINES_B 11
#define DST_K_SRC_FORMFEED 16
#define DST_K_SRC_MIN_CMD 1
#define DST_K_SRC_MAX_CMD 16
typedef struct _DST_SRC_COMMAND {
  unsigned char dst_b_src_command;
  union  {
    struct  {
      unsigned char dst_b_src_df_length;
      unsigned char dst_b_src_df_flags;
      unsigned short int dst_w_src_df_fileid;
#ifdef __GNUC__
      long long dst_q_src_df_rms_cdt;
#else
      __int64 dst_q_src_df_rms_cdt;
#endif
      unsigned int dst_l_src_df_rms_ebk;
      unsigned short int dst_w_src_df_rms_ffb;
      unsigned char dst_b_src_df_rms_rfo;
      unsigned char dst_b_src_df_filename;
    } dst_a_src_decl_src;
    unsigned int dst_l_src_unslong;
    unsigned short int dst_w_src_unsword;
    unsigned char dst_b_src_unsbyte;
  } dst_a_src_cmd_fields;
} DST_SRC_COMMAND;
#define DST_K_SRC_COMMAND_SIZE 21
	
typedef struct _DST_SRC_CMDTRLR {
  unsigned char dst_b_src_df_libmodname;
} DST_SRC_CMDTRLR;
#define DST_K_SRC_CMDTRLR_SIZE 1
	
typedef struct _DST_PROLOG {
  DST_HEADER dst_a_prolog_header;
  unsigned int dst_l_prolog_bkpt_addr;
} DST_PROLOG;
#define DST_K_PROLOG_SIZE 8
	
#endif /* VMSDBG_H */