aboutsummaryrefslogtreecommitdiff
path: root/include/vms/dst.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/vms/dst.h')
-rw-r--r--include/vms/dst.h135
1 files changed, 122 insertions, 13 deletions
diff --git a/include/vms/dst.h b/include/vms/dst.h
index d179018..231d397 100644
--- a/include/vms/dst.h
+++ b/include/vms/dst.h
@@ -38,10 +38,11 @@ struct vms_dst_header
#define DST__K_MODBEG 188
/* Some well known languages. */
-#define DST__K_MACRO 0
-#define DST__K_BLISS 2
-#define DST__K_C 7
-#define DST__K_ADA 9
+#define DST__K_MACRO 0
+#define DST__K_BLISS 2
+#define DST__K_C 7
+#define DST__K_ADA 9
+#define DST__K_CXX 15
struct vms_dst_modbeg
{
@@ -79,15 +80,27 @@ struct vms_dst_pcline
unsigned char field[4];
};
-#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_LINUM_B 19
-#define DST__K_SET_LINUM_L 20
-#define DST__K_TERM 14
-#define DST__K_SET_ABS_PC 16
-#define DST__K_DELTA_PC_L 17
+#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_INCR 4
+#define DST__K_SET_LINUM_INCR_W 5
+#define DST__K_RESET_LINUM_INCR 6
+#define DST__K_BEG_STMT_MODE 7
+#define DST__K_END_STMT_MODE 8
+#define DST__K_SET_LINUM 9
+#define DST__K_SET_PC 10
+#define DST__K_SET_PC_W 11
+#define DST__K_SET_PC_L 12
+#define DST__K_SET_STMTNUM 13
+#define DST__K_TERM 14
+#define DST__K_TERM_W 15
+#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
+#define DST__K_TERM_L 21
/* Routine end. */
#define DST__K_RTNEND 191
@@ -146,6 +159,7 @@ struct vms_dst_blkend
#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
@@ -162,4 +176,99 @@ struct vms_dst_src_decl_src
/* Filename ASCIC. */
};
+/* Record begin. */
+#define DST__K_RECBEG 171
+
+struct vms_dst_recbeg
+{
+ unsigned char vflags;
+ unsigned char value[4];
+ /* Filename ASCIC. */
+};
+
+/* Record end. */
+#define DST__K_RECEND 172
+
+/* Enumeration begin. */
+#define DST__K_ENUMBEG 165
+
+/* Enumeration element. */
+#define DST__K_ENUMELT 164
+
+/* Enumeration end. */
+#define DST__K_ENUMEND 166
+
+/* Separate type specification. */
+#define DST__K_SEPTYP 163
+
+/* Type specification. */
+#define DST__K_TYPSPEC 175
+
+#define DST__K_TS_ATOM 1 /* Atomic. */
+#define DST__K_TS_DSC 2 /* VMS Standard descriptor. */
+#define DST__K_TS_IND 3 /* Indirect. */
+#define DST__K_TS_TPTR 4 /* Typed pointer. */
+#define DST__K_TS_PTR 5 /* Pointer. */
+#define DST__K_TS_PIC 6 /* Pictured. */
+#define DST__K_TS_ARRAY 7
+#define DST__K_TS_SET 8
+#define DST__K_TS_SUBRANGE 9 /* Subrange. */
+#define DST__K_TS_ADA_DSC 10 /* Ada descriptor. */
+#define DST__K_TS_FILE 11
+#define DST__K_TS_AREA 12 /* Area (PL/I). */
+#define DST__K_TS_OFFSET 13 /* Offset (PL/I). */
+#define DST__K_TS_NOV_LENG 14 /* Novel Length. */
+#define DST__K_TS_IND_TSPEC 15 /* Internal to debugger. */
+#define DST__K_TS_SELF_REL_LABEL 16 /* Self-relative label (PL/I). */
+#define DST__K_TS_RFA 17 /* (Basic). */
+#define DST__K_TS_TASK 18 /* (Ada). */
+#define DST__K_TS_ADA_ARRAY 19
+#define DST__K_TS_XMOD_IND 20 /* Cross-module indirect type spec. */
+#define DST__K_TS_CONSTRAINED 21 /* (Ada). */
+#define DST__K_TS_MAYBE_CONSTR 22 /* Might-be-constrained (Ada). */
+#define DST__K_TS_DYN_LOV_LENG 23
+#define DST__K_TS_TPTR_D 24 /* Typed pointer to descriptor. */
+#define DST__K_TS_SCAN_TREE 25
+#define DST__K_TS_SCAN_TREEPTR 26
+#define DST__K_TS_INCOMPLETE 27
+#define DST__K_TS_BLISS_BLOCK 28
+#define DST__K_TS_TPTR_64 29
+#define DST__K_TS_PTR_64 30
+#define DST__K_TS_REF 31 /* C++ referenced type. */
+#define DST__K_TS_REF_64 32
+
+/* Value Specification. */
+#define DST__K_VFLAGS_NOVAL 128 /* No value. */
+#define DST__K_VFLAGS_NOTACTIVE 248 /* Not active at current PC. */
+#define DST__K_VFLAGS_UNALLOC 249 /* Not allocated. */
+#define DST__K_VFLAGS_DSC 250 /* Descriptor format. */
+#define DST__K_VFLAGS_TVS 251 /* Trailing value spec. */
+#define DST__K_VS_FOLLOWS 253 /* Value specification follow. */
+#define DST__K_VFLAGS_BITOFFS 255 /* Value is a bit offset. */
+
+/* Vflags fields. */
+#define DST__K_VALKIND_MASK 0x03
+#define DST__K_INDIR 0x04
+#define DST__K_DISP 0x08
+#define DST__K_REGNUM_MASK 0xf0
+#define DST__K_REGNUM_SHIFT 4
+
+#define DST__K_VALKIND_LITERAL 0
+#define DST__K_VALKIND_ADDR 1
+#define DST__K_VALKIND_DESC 2
+#define DST__K_VALKIND_REG 3
+
+/* Label. */
+#define DST__K_LABEL 187
+
+struct vms_dst_label
+{
+ unsigned char unused;
+
+ unsigned char value[4];
+ unsigned char name[1];
+};
+
+/* Discontiguous range. */
+#define DST__K_DIS_RANGE 118
#endif /* _VMS_DST_H */