aboutsummaryrefslogtreecommitdiffstats
path: root/debug
diff options
context:
space:
mode:
authorBernhard Schommer <bernhardschommer@gmail.com>2014-10-15 10:56:03 +0200
committerBernhard Schommer <bernhardschommer@gmail.com>2014-10-15 10:56:03 +0200
commit5023487c601dcee8917cab0a3b303c6d91dde294 (patch)
tree63397c6d2c1e80739b556c923320b99e339fd25b /debug
parent9a262b34da8960fc644674d8b8dcadcd7e51b829 (diff)
downloadcompcert-5023487c601dcee8917cab0a3b303c6d91dde294.tar.gz
compcert-5023487c601dcee8917cab0a3b303c6d91dde294.zip
Added the rest of the type for the tags mentioned in appendix 1 of the dwarf 2 standard.
Diffstat (limited to 'debug')
-rw-r--r--debug/DwarfTypes.ml57
1 files changed, 56 insertions, 1 deletions
diff --git a/debug/DwarfTypes.ml b/debug/DwarfTypes.ml
index 61a6e768..51497121 100644
--- a/debug/DwarfTypes.ml
+++ b/debug/DwarfTypes.ml
@@ -219,7 +219,7 @@ type dw_tag_subprogram =
dw_at_calling_convention: calling_convention option;
dw_at_declaration: flag option;
dw_at_external: flag option;
- dw_frame_base: location_value option;
+ dw_at_frame_base: location_value option;
dw_at_high_pc: address option;
dw_at_inline: inline option;
dw_at_low_pc: address option;
@@ -244,3 +244,58 @@ type dw_subrange_type =
dw_at_type: reference option;
dw_at_upper_bound: bound_value option;
}
+
+type dw_tag_subroutine_type =
+ {
+ dw_at_address_class: constant option;
+ dw_at_declaration: flag option;
+ dw_at_name: string option;
+ dw_at_prototyped: flag option;
+ dw_at_sibling: reference option;
+ dw_at_type: reference option;
+ }
+
+type dw_tag_typedef =
+ {
+ dw_at_declaration: flag option;
+ dw_at_name: string option;
+ dw_at_sibling: reference option;
+ dw_at_start_scope: constant option;
+ dw_at_type: reference option;
+ }
+
+type dw_tag_union_type =
+ {
+ dw_at_byte_size: constant option;
+ dw_at_declaration: flag option;
+ dw_at_name: string option;
+ dw_at_sibling: reference option;
+ dw_at_start_scope: constant option;
+ dw_at_type: reference option;
+ }
+
+type dw_tag_unspecified_parameter =
+ {
+ dw_at_artificial: flag option;
+ dw_at_sibling: reference option;
+ }
+
+type dw_tag_variable =
+ {
+ dw_at_const_value: constant option;
+ dw_at_declaration: flag option;
+ dw_at_external: flag option;
+ dw_at_location: location_value option;
+ dw_at_name: string option;
+ dw_at_segment: location_value option;
+ dw_at_sibling: reference option;
+ dw_at_start_scope: constant option;
+ dw_at_type: reference option;
+ }
+
+type dw_tag_volatile_type =
+ {
+ dw_at_sibling: reference option;
+ dw_at_type: reference option;
+
+ }