| ... | @@ -0,0 +1,621 @@ |
| 1 | pub const TAG_padding = 0x00; |
| 2 | pub const TAG_array_type = 0x01; |
| 3 | pub const TAG_class_type = 0x02; |
| 4 | pub const TAG_entry_point = 0x03; |
| 5 | pub const TAG_enumeration_type = 0x04; |
| 6 | pub const TAG_formal_parameter = 0x05; |
| 7 | pub const TAG_imported_declaration = 0x08; |
| 8 | pub const TAG_label = 0x0a; |
| 9 | pub const TAG_lexical_block = 0x0b; |
| 10 | pub const TAG_member = 0x0d; |
| 11 | pub const TAG_pointer_type = 0x0f; |
| 12 | pub const TAG_reference_type = 0x10; |
| 13 | pub const TAG_compile_unit = 0x11; |
| 14 | pub const TAG_string_type = 0x12; |
| 15 | pub const TAG_structure_type = 0x13; |
| 16 | pub const TAG_subroutine_type = 0x15; |
| 17 | pub const TAG_typedef = 0x16; |
| 18 | pub const TAG_union_type = 0x17; |
| 19 | pub const TAG_unspecified_parameters = 0x18; |
| 20 | pub const TAG_variant = 0x19; |
| 21 | pub const TAG_common_block = 0x1a; |
| 22 | pub const TAG_common_inclusion = 0x1b; |
| 23 | pub const TAG_inheritance = 0x1c; |
| 24 | pub const TAG_inlined_subroutine = 0x1d; |
| 25 | pub const TAG_module = 0x1e; |
| 26 | pub const TAG_ptr_to_member_type = 0x1f; |
| 27 | pub const TAG_set_type = 0x20; |
| 28 | pub const TAG_subrange_type = 0x21; |
| 29 | pub const TAG_with_stmt = 0x22; |
| 30 | pub const TAG_access_declaration = 0x23; |
| 31 | pub const TAG_base_type = 0x24; |
| 32 | pub const TAG_catch_block = 0x25; |
| 33 | pub const TAG_const_type = 0x26; |
| 34 | pub const TAG_constant = 0x27; |
| 35 | pub const TAG_enumerator = 0x28; |
| 36 | pub const TAG_file_type = 0x29; |
| 37 | pub const TAG_friend = 0x2a; |
| 38 | pub const TAG_namelist = 0x2b; |
| 39 | pub const TAG_namelist_item = 0x2c; |
| 40 | pub const TAG_packed_type = 0x2d; |
| 41 | pub const TAG_subprogram = 0x2e; |
| 42 | pub const TAG_template_type_param = 0x2f; |
| 43 | pub const TAG_template_value_param = 0x30; |
| 44 | pub const TAG_thrown_type = 0x31; |
| 45 | pub const TAG_try_block = 0x32; |
| 46 | pub const TAG_variant_part = 0x33; |
| 47 | pub const TAG_variable = 0x34; |
| 48 | pub const TAG_volatile_type = 0x35; |
| 49 | |
| 50 | // DWARF 3 |
| 51 | pub const TAG_dwarf_procedure = 0x36; |
| 52 | pub const TAG_restrict_type = 0x37; |
| 53 | pub const TAG_interface_type = 0x38; |
| 54 | pub const TAG_namespace = 0x39; |
| 55 | pub const TAG_imported_module = 0x3a; |
| 56 | pub const TAG_unspecified_type = 0x3b; |
| 57 | pub const TAG_partial_unit = 0x3c; |
| 58 | pub const TAG_imported_unit = 0x3d; |
| 59 | pub const TAG_condition = 0x3f; |
| 60 | pub const TAG_shared_type = 0x40; |
| 61 | |
| 62 | // DWARF 4 |
| 63 | pub const TAG_type_unit = 0x41; |
| 64 | pub const TAG_rvalue_reference_type = 0x42; |
| 65 | pub const TAG_template_alias = 0x43; |
| 66 | |
| 67 | pub const TAG_lo_user = 0x4080; |
| 68 | pub const TAG_hi_user = 0xffff; |
| 69 | |
| 70 | // SGI/MIPS Extensions. |
| 71 | pub const DW_TAG_MIPS_loop = 0x4081; |
| 72 | |
| 73 | // HP extensions. See: ftp://ftp.hp.com/pub/lang/tools/WDB/wdb-4.0.tar.gz . |
| 74 | pub const TAG_HP_array_descriptor = 0x4090; |
| 75 | pub const TAG_HP_Bliss_field = 0x4091; |
| 76 | pub const TAG_HP_Bliss_field_set = 0x4092; |
| 77 | |
| 78 | // GNU extensions. |
| 79 | pub const TAG_format_label = 0x4101; // For FORTRAN 77 and Fortran 90. |
| 80 | pub const TAG_function_template = 0x4102; // For C++. |
| 81 | pub const TAG_class_template = 0x4103; //For C++. |
| 82 | pub const TAG_GNU_BINCL = 0x4104; |
| 83 | pub const TAG_GNU_EINCL = 0x4105; |
| 84 | |
| 85 | // Template template parameter. |
| 86 | // See http://gcc.gnu.org/wiki/TemplateParmsDwarf . |
| 87 | pub const TAG_GNU_template_template_param = 0x4106; |
| 88 | |
| 89 | // Template parameter pack extension = specified at |
| 90 | // http://wiki.dwarfstd.org/index.php?title=C%2B%2B0x:_Variadic_templates |
| 91 | // The values of these two TAGS are in the DW_TAG_GNU_* space until the tags |
| 92 | // are properly part of DWARF 5. |
| 93 | pub const TAG_GNU_template_parameter_pack = 0x4107; |
| 94 | pub const TAG_GNU_formal_parameter_pack = 0x4108; |
| 95 | // The GNU call site extension = specified at |
| 96 | // http://www.dwarfstd.org/ShowIssue.php?issue=100909.2&type=open . |
| 97 | // The values of these two TAGS are in the DW_TAG_GNU_* space until the tags |
| 98 | // are properly part of DWARF 5. |
| 99 | pub const TAG_GNU_call_site = 0x4109; |
| 100 | pub const TAG_GNU_call_site_parameter = 0x410a; |
| 101 | // Extensions for UPC. See: http://dwarfstd.org/doc/DWARF4.pdf. |
| 102 | pub const TAG_upc_shared_type = 0x8765; |
| 103 | pub const TAG_upc_strict_type = 0x8766; |
| 104 | pub const TAG_upc_relaxed_type = 0x8767; |
| 105 | // PGI (STMicroelectronics; extensions. No documentation available. |
| 106 | pub const TAG_PGI_kanji_type = 0xA000; |
| 107 | pub const TAG_PGI_interface_block = 0xA020; |
| 108 | |
| 109 | pub const FORM_addr = 0x01; |
| 110 | pub const FORM_block2 = 0x03; |
| 111 | pub const FORM_block4 = 0x04; |
| 112 | pub const FORM_data2 = 0x05; |
| 113 | pub const FORM_data4 = 0x06; |
| 114 | pub const FORM_data8 = 0x07; |
| 115 | pub const FORM_string = 0x08; |
| 116 | pub const FORM_block = 0x09; |
| 117 | pub const FORM_block1 = 0x0a; |
| 118 | pub const FORM_data1 = 0x0b; |
| 119 | pub const FORM_flag = 0x0c; |
| 120 | pub const FORM_sdata = 0x0d; |
| 121 | pub const FORM_strp = 0x0e; |
| 122 | pub const FORM_udata = 0x0f; |
| 123 | pub const FORM_ref_addr = 0x10; |
| 124 | pub const FORM_ref1 = 0x11; |
| 125 | pub const FORM_ref2 = 0x12; |
| 126 | pub const FORM_ref4 = 0x13; |
| 127 | pub const FORM_ref8 = 0x14; |
| 128 | pub const FORM_ref_udata = 0x15; |
| 129 | pub const FORM_indirect = 0x16; |
| 130 | |
| 131 | // DWARF 4. |
| 132 | pub const FORM_sec_offset = 0x17; |
| 133 | pub const FORM_exprloc = 0x18; |
| 134 | pub const FORM_flag_present = 0x19; |
| 135 | pub const FORM_ref_sig8 = 0x20; |
| 136 | |
| 137 | // Extensions for Fission. See http://gcc.gnu.org/wiki/DebugFission. |
| 138 | pub const FORM_GNU_addr_index = 0x1f01; |
| 139 | pub const FORM_GNU_str_index = 0x1f02; |
| 140 | |
| 141 | // Extensions for DWZ multifile. |
| 142 | // See http://www.dwarfstd.org/ShowIssue.php?issue=120604.1&type=open . |
| 143 | pub const FORM_GNU_ref_alt = 0x1f20; |
| 144 | pub const FORM_GNU_strp_alt = 0x1f21; |
| 145 | |
| 146 | pub const AT_sibling = 0x01; |
| 147 | pub const AT_location = 0x02; |
| 148 | pub const AT_name = 0x03; |
| 149 | pub const AT_ordering = 0x09; |
| 150 | pub const AT_subscr_data = 0x0a; |
| 151 | pub const AT_byte_size = 0x0b; |
| 152 | pub const AT_bit_offset = 0x0c; |
| 153 | pub const AT_bit_size = 0x0d; |
| 154 | pub const AT_element_list = 0x0f; |
| 155 | pub const AT_stmt_list = 0x10; |
| 156 | pub const AT_low_pc = 0x11; |
| 157 | pub const AT_high_pc = 0x12; |
| 158 | pub const AT_language = 0x13; |
| 159 | pub const AT_member = 0x14; |
| 160 | pub const AT_discr = 0x15; |
| 161 | pub const AT_discr_value = 0x16; |
| 162 | pub const AT_visibility = 0x17; |
| 163 | pub const AT_import = 0x18; |
| 164 | pub const AT_string_length = 0x19; |
| 165 | pub const AT_common_reference = 0x1a; |
| 166 | pub const AT_comp_dir = 0x1b; |
| 167 | pub const AT_const_value = 0x1c; |
| 168 | pub const AT_containing_type = 0x1d; |
| 169 | pub const AT_default_value = 0x1e; |
| 170 | pub const AT_inline = 0x20; |
| 171 | pub const AT_is_optional = 0x21; |
| 172 | pub const AT_lower_bound = 0x22; |
| 173 | pub const AT_producer = 0x25; |
| 174 | pub const AT_prototyped = 0x27; |
| 175 | pub const AT_return_addr = 0x2a; |
| 176 | pub const AT_start_scope = 0x2c; |
| 177 | pub const AT_bit_stride = 0x2e; |
| 178 | pub const AT_upper_bound = 0x2f; |
| 179 | pub const AT_abstract_origin = 0x31; |
| 180 | pub const AT_accessibility = 0x32; |
| 181 | pub const AT_address_class = 0x33; |
| 182 | pub const AT_artificial = 0x34; |
| 183 | pub const AT_base_types = 0x35; |
| 184 | pub const AT_calling_convention = 0x36; |
| 185 | pub const AT_count = 0x37; |
| 186 | pub const AT_data_member_location = 0x38; |
| 187 | pub const AT_decl_column = 0x39; |
| 188 | pub const AT_decl_file = 0x3a; |
| 189 | pub const AT_decl_line = 0x3b; |
| 190 | pub const AT_declaration = 0x3c; |
| 191 | pub const AT_discr_list = 0x3d; |
| 192 | pub const AT_encoding = 0x3e; |
| 193 | pub const AT_external = 0x3f; |
| 194 | pub const AT_frame_base = 0x40; |
| 195 | pub const AT_friend = 0x41; |
| 196 | pub const AT_identifier_case = 0x42; |
| 197 | pub const AT_macro_info = 0x43; |
| 198 | pub const AT_namelist_items = 0x44; |
| 199 | pub const AT_priority = 0x45; |
| 200 | pub const AT_segment = 0x46; |
| 201 | pub const AT_specification = 0x47; |
| 202 | pub const AT_static_link = 0x48; |
| 203 | pub const AT_type = 0x49; |
| 204 | pub const AT_use_location = 0x4a; |
| 205 | pub const AT_variable_parameter = 0x4b; |
| 206 | pub const AT_virtuality = 0x4c; |
| 207 | pub const AT_vtable_elem_location = 0x4d; |
| 208 | |
| 209 | // DWARF 3 values. |
| 210 | pub const AT_allocated = 0x4e; |
| 211 | pub const AT_associated = 0x4f; |
| 212 | pub const AT_data_location = 0x50; |
| 213 | pub const AT_byte_stride = 0x51; |
| 214 | pub const AT_entry_pc = 0x52; |
| 215 | pub const AT_use_UTF8 = 0x53; |
| 216 | pub const AT_extension = 0x54; |
| 217 | pub const AT_ranges = 0x55; |
| 218 | pub const AT_trampoline = 0x56; |
| 219 | pub const AT_call_column = 0x57; |
| 220 | pub const AT_call_file = 0x58; |
| 221 | pub const AT_call_line = 0x59; |
| 222 | pub const AT_description = 0x5a; |
| 223 | pub const AT_binary_scale = 0x5b; |
| 224 | pub const AT_decimal_scale = 0x5c; |
| 225 | pub const AT_small = 0x5d; |
| 226 | pub const AT_decimal_sign = 0x5e; |
| 227 | pub const AT_digit_count = 0x5f; |
| 228 | pub const AT_picture_string = 0x60; |
| 229 | pub const AT_mutable = 0x61; |
| 230 | pub const AT_threads_scaled = 0x62; |
| 231 | pub const AT_explicit = 0x63; |
| 232 | pub const AT_object_pointer = 0x64; |
| 233 | pub const AT_endianity = 0x65; |
| 234 | pub const AT_elemental = 0x66; |
| 235 | pub const AT_pure = 0x67; |
| 236 | pub const AT_recursive = 0x68; |
| 237 | |
| 238 | // DWARF 4. |
| 239 | pub const AT_signature = 0x69; |
| 240 | pub const AT_main_subprogram = 0x6a; |
| 241 | pub const AT_data_bit_offset = 0x6b; |
| 242 | pub const AT_const_expr = 0x6c; |
| 243 | pub const AT_enum_class = 0x6d; |
| 244 | pub const AT_linkage_name = 0x6e; |
| 245 | |
| 246 | pub const AT_lo_user = 0x2000; // Implementation-defined range start. |
| 247 | pub const AT_hi_user = 0x3fff; // Implementation-defined range end. |
| 248 | |
| 249 | // SGI/MIPS extensions. |
| 250 | pub const AT_MIPS_fde = 0x2001; |
| 251 | pub const AT_MIPS_loop_begin = 0x2002; |
| 252 | pub const AT_MIPS_tail_loop_begin = 0x2003; |
| 253 | pub const AT_MIPS_epilog_begin = 0x2004; |
| 254 | pub const AT_MIPS_loop_unroll_factor = 0x2005; |
| 255 | pub const AT_MIPS_software_pipeline_depth = 0x2006; |
| 256 | pub const AT_MIPS_linkage_name = 0x2007; |
| 257 | pub const AT_MIPS_stride = 0x2008; |
| 258 | pub const AT_MIPS_abstract_name = 0x2009; |
| 259 | pub const AT_MIPS_clone_origin = 0x200a; |
| 260 | pub const AT_MIPS_has_inlines = 0x200b; |
| 261 | |
| 262 | // HP extensions. |
| 263 | pub const AT_HP_block_index = 0x2000; |
| 264 | pub const AT_HP_unmodifiable = 0x2001; // Same as DW_AT_MIPS_fde. |
| 265 | pub const AT_HP_prologue = 0x2005; // Same as DW_AT_MIPS_loop_unroll. |
| 266 | pub const AT_HP_epilogue = 0x2008; // Same as DW_AT_MIPS_stride. |
| 267 | pub const AT_HP_actuals_stmt_list = 0x2010; |
| 268 | pub const AT_HP_proc_per_section = 0x2011; |
| 269 | pub const AT_HP_raw_data_ptr = 0x2012; |
| 270 | pub const AT_HP_pass_by_reference = 0x2013; |
| 271 | pub const AT_HP_opt_level = 0x2014; |
| 272 | pub const AT_HP_prof_version_id = 0x2015; |
| 273 | pub const AT_HP_opt_flags = 0x2016; |
| 274 | pub const AT_HP_cold_region_low_pc = 0x2017; |
| 275 | pub const AT_HP_cold_region_high_pc = 0x2018; |
| 276 | pub const AT_HP_all_variables_modifiable = 0x2019; |
| 277 | pub const AT_HP_linkage_name = 0x201a; |
| 278 | pub const AT_HP_prof_flags = 0x201b; // In comp unit of procs_info for -g. |
| 279 | pub const AT_HP_unit_name = 0x201f; |
| 280 | pub const AT_HP_unit_size = 0x2020; |
| 281 | pub const AT_HP_widened_byte_size = 0x2021; |
| 282 | pub const AT_HP_definition_points = 0x2022; |
| 283 | pub const AT_HP_default_location = 0x2023; |
| 284 | pub const AT_HP_is_result_param = 0x2029; |
| 285 | |
| 286 | // GNU extensions. |
| 287 | pub const AT_sf_names = 0x2101; |
| 288 | pub const AT_src_info = 0x2102; |
| 289 | pub const AT_mac_info = 0x2103; |
| 290 | pub const AT_src_coords = 0x2104; |
| 291 | pub const AT_body_begin = 0x2105; |
| 292 | pub const AT_body_end = 0x2106; |
| 293 | pub const AT_GNU_vector = 0x2107; |
| 294 | // Thread-safety annotations. |
| 295 | // See http://gcc.gnu.org/wiki/ThreadSafetyAnnotation . |
| 296 | pub const AT_GNU_guarded_by = 0x2108; |
| 297 | pub const AT_GNU_pt_guarded_by = 0x2109; |
| 298 | pub const AT_GNU_guarded = 0x210a; |
| 299 | pub const AT_GNU_pt_guarded = 0x210b; |
| 300 | pub const AT_GNU_locks_excluded = 0x210c; |
| 301 | pub const AT_GNU_exclusive_locks_required = 0x210d; |
| 302 | pub const AT_GNU_shared_locks_required = 0x210e; |
| 303 | // One-definition rule violation detection. |
| 304 | // See http://gcc.gnu.org/wiki/DwarfSeparateTypeInfo . |
| 305 | pub const AT_GNU_odr_signature = 0x210f; |
| 306 | // Template template argument name. |
| 307 | // See http://gcc.gnu.org/wiki/TemplateParmsDwarf . |
| 308 | pub const AT_GNU_template_name = 0x2110; |
| 309 | // The GNU call site extension. |
| 310 | // See http://www.dwarfstd.org/ShowIssue.php?issue=100909.2&type=open . |
| 311 | pub const AT_GNU_call_site_value = 0x2111; |
| 312 | pub const AT_GNU_call_site_data_value = 0x2112; |
| 313 | pub const AT_GNU_call_site_target = 0x2113; |
| 314 | pub const AT_GNU_call_site_target_clobbered = 0x2114; |
| 315 | pub const AT_GNU_tail_call = 0x2115; |
| 316 | pub const AT_GNU_all_tail_call_sites = 0x2116; |
| 317 | pub const AT_GNU_all_call_sites = 0x2117; |
| 318 | pub const AT_GNU_all_source_call_sites = 0x2118; |
| 319 | // Section offset into .debug_macro section. |
| 320 | pub const AT_GNU_macros = 0x2119; |
| 321 | // Extensions for Fission. See http://gcc.gnu.org/wiki/DebugFission. |
| 322 | pub const AT_GNU_dwo_name = 0x2130; |
| 323 | pub const AT_GNU_dwo_id = 0x2131; |
| 324 | pub const AT_GNU_ranges_base = 0x2132; |
| 325 | pub const AT_GNU_addr_base = 0x2133; |
| 326 | pub const AT_GNU_pubnames = 0x2134; |
| 327 | pub const AT_GNU_pubtypes = 0x2135; |
| 328 | // VMS extensions. |
| 329 | pub const AT_VMS_rtnbeg_pd_address = 0x2201; |
| 330 | // GNAT extensions. |
| 331 | // GNAT descriptive type. |
| 332 | // See http://gcc.gnu.org/wiki/DW_AT_GNAT_descriptive_type . |
| 333 | pub const AT_use_GNAT_descriptive_type = 0x2301; |
| 334 | pub const AT_GNAT_descriptive_type = 0x2302; |
| 335 | // UPC extension. |
| 336 | pub const AT_upc_threads_scaled = 0x3210; |
| 337 | // PGI (STMicroelectronics) extensions. |
| 338 | pub const AT_PGI_lbase = 0x3a00; |
| 339 | pub const AT_PGI_soffset = 0x3a01; |
| 340 | pub const AT_PGI_lstride = 0x3a02; |
| 341 | |
| 342 | |
| 343 | pub const OP_addr = 0x03; |
| 344 | pub const OP_deref = 0x06; |
| 345 | pub const OP_const1u = 0x08; |
| 346 | pub const OP_const1s = 0x09; |
| 347 | pub const OP_const2u = 0x0a; |
| 348 | pub const OP_const2s = 0x0b; |
| 349 | pub const OP_const4u = 0x0c; |
| 350 | pub const OP_const4s = 0x0d; |
| 351 | pub const OP_const8u = 0x0e; |
| 352 | pub const OP_const8s = 0x0f; |
| 353 | pub const OP_constu = 0x10; |
| 354 | pub const OP_consts = 0x11; |
| 355 | pub const OP_dup = 0x12; |
| 356 | pub const OP_drop = 0x13; |
| 357 | pub const OP_over = 0x14; |
| 358 | pub const OP_pick = 0x15; |
| 359 | pub const OP_swap = 0x16; |
| 360 | pub const OP_rot = 0x17; |
| 361 | pub const OP_xderef = 0x18; |
| 362 | pub const OP_abs = 0x19; |
| 363 | pub const OP_and = 0x1a; |
| 364 | pub const OP_div = 0x1b; |
| 365 | pub const OP_minus = 0x1c; |
| 366 | pub const OP_mod = 0x1d; |
| 367 | pub const OP_mul = 0x1e; |
| 368 | pub const OP_neg = 0x1f; |
| 369 | pub const OP_not = 0x20; |
| 370 | pub const OP_or = 0x21; |
| 371 | pub const OP_plus = 0x22; |
| 372 | pub const OP_plus_uconst = 0x23; |
| 373 | pub const OP_shl = 0x24; |
| 374 | pub const OP_shr = 0x25; |
| 375 | pub const OP_shra = 0x26; |
| 376 | pub const OP_xor = 0x27; |
| 377 | pub const OP_bra = 0x28; |
| 378 | pub const OP_eq = 0x29; |
| 379 | pub const OP_ge = 0x2a; |
| 380 | pub const OP_gt = 0x2b; |
| 381 | pub const OP_le = 0x2c; |
| 382 | pub const OP_lt = 0x2d; |
| 383 | pub const OP_ne = 0x2e; |
| 384 | pub const OP_skip = 0x2f; |
| 385 | pub const OP_lit0 = 0x30; |
| 386 | pub const OP_lit1 = 0x31; |
| 387 | pub const OP_lit2 = 0x32; |
| 388 | pub const OP_lit3 = 0x33; |
| 389 | pub const OP_lit4 = 0x34; |
| 390 | pub const OP_lit5 = 0x35; |
| 391 | pub const OP_lit6 = 0x36; |
| 392 | pub const OP_lit7 = 0x37; |
| 393 | pub const OP_lit8 = 0x38; |
| 394 | pub const OP_lit9 = 0x39; |
| 395 | pub const OP_lit10 = 0x3a; |
| 396 | pub const OP_lit11 = 0x3b; |
| 397 | pub const OP_lit12 = 0x3c; |
| 398 | pub const OP_lit13 = 0x3d; |
| 399 | pub const OP_lit14 = 0x3e; |
| 400 | pub const OP_lit15 = 0x3f; |
| 401 | pub const OP_lit16 = 0x40; |
| 402 | pub const OP_lit17 = 0x41; |
| 403 | pub const OP_lit18 = 0x42; |
| 404 | pub const OP_lit19 = 0x43; |
| 405 | pub const OP_lit20 = 0x44; |
| 406 | pub const OP_lit21 = 0x45; |
| 407 | pub const OP_lit22 = 0x46; |
| 408 | pub const OP_lit23 = 0x47; |
| 409 | pub const OP_lit24 = 0x48; |
| 410 | pub const OP_lit25 = 0x49; |
| 411 | pub const OP_lit26 = 0x4a; |
| 412 | pub const OP_lit27 = 0x4b; |
| 413 | pub const OP_lit28 = 0x4c; |
| 414 | pub const OP_lit29 = 0x4d; |
| 415 | pub const OP_lit30 = 0x4e; |
| 416 | pub const OP_lit31 = 0x4f; |
| 417 | pub const OP_reg0 = 0x50; |
| 418 | pub const OP_reg1 = 0x51; |
| 419 | pub const OP_reg2 = 0x52; |
| 420 | pub const OP_reg3 = 0x53; |
| 421 | pub const OP_reg4 = 0x54; |
| 422 | pub const OP_reg5 = 0x55; |
| 423 | pub const OP_reg6 = 0x56; |
| 424 | pub const OP_reg7 = 0x57; |
| 425 | pub const OP_reg8 = 0x58; |
| 426 | pub const OP_reg9 = 0x59; |
| 427 | pub const OP_reg10 = 0x5a; |
| 428 | pub const OP_reg11 = 0x5b; |
| 429 | pub const OP_reg12 = 0x5c; |
| 430 | pub const OP_reg13 = 0x5d; |
| 431 | pub const OP_reg14 = 0x5e; |
| 432 | pub const OP_reg15 = 0x5f; |
| 433 | pub const OP_reg16 = 0x60; |
| 434 | pub const OP_reg17 = 0x61; |
| 435 | pub const OP_reg18 = 0x62; |
| 436 | pub const OP_reg19 = 0x63; |
| 437 | pub const OP_reg20 = 0x64; |
| 438 | pub const OP_reg21 = 0x65; |
| 439 | pub const OP_reg22 = 0x66; |
| 440 | pub const OP_reg23 = 0x67; |
| 441 | pub const OP_reg24 = 0x68; |
| 442 | pub const OP_reg25 = 0x69; |
| 443 | pub const OP_reg26 = 0x6a; |
| 444 | pub const OP_reg27 = 0x6b; |
| 445 | pub const OP_reg28 = 0x6c; |
| 446 | pub const OP_reg29 = 0x6d; |
| 447 | pub const OP_reg30 = 0x6e; |
| 448 | pub const OP_reg31 = 0x6f; |
| 449 | pub const OP_breg0 = 0x70; |
| 450 | pub const OP_breg1 = 0x71; |
| 451 | pub const OP_breg2 = 0x72; |
| 452 | pub const OP_breg3 = 0x73; |
| 453 | pub const OP_breg4 = 0x74; |
| 454 | pub const OP_breg5 = 0x75; |
| 455 | pub const OP_breg6 = 0x76; |
| 456 | pub const OP_breg7 = 0x77; |
| 457 | pub const OP_breg8 = 0x78; |
| 458 | pub const OP_breg9 = 0x79; |
| 459 | pub const OP_breg10 = 0x7a; |
| 460 | pub const OP_breg11 = 0x7b; |
| 461 | pub const OP_breg12 = 0x7c; |
| 462 | pub const OP_breg13 = 0x7d; |
| 463 | pub const OP_breg14 = 0x7e; |
| 464 | pub const OP_breg15 = 0x7f; |
| 465 | pub const OP_breg16 = 0x80; |
| 466 | pub const OP_breg17 = 0x81; |
| 467 | pub const OP_breg18 = 0x82; |
| 468 | pub const OP_breg19 = 0x83; |
| 469 | pub const OP_breg20 = 0x84; |
| 470 | pub const OP_breg21 = 0x85; |
| 471 | pub const OP_breg22 = 0x86; |
| 472 | pub const OP_breg23 = 0x87; |
| 473 | pub const OP_breg24 = 0x88; |
| 474 | pub const OP_breg25 = 0x89; |
| 475 | pub const OP_breg26 = 0x8a; |
| 476 | pub const OP_breg27 = 0x8b; |
| 477 | pub const OP_breg28 = 0x8c; |
| 478 | pub const OP_breg29 = 0x8d; |
| 479 | pub const OP_breg30 = 0x8e; |
| 480 | pub const OP_breg31 = 0x8f; |
| 481 | pub const OP_regx = 0x90; |
| 482 | pub const OP_fbreg = 0x91; |
| 483 | pub const OP_bregx = 0x92; |
| 484 | pub const OP_piece = 0x93; |
| 485 | pub const OP_deref_size = 0x94; |
| 486 | pub const OP_xderef_size = 0x95; |
| 487 | pub const OP_nop = 0x96; |
| 488 | |
| 489 | // DWARF 3 extensions. |
| 490 | pub const OP_push_object_address = 0x97; |
| 491 | pub const OP_call2 = 0x98; |
| 492 | pub const OP_call4 = 0x99; |
| 493 | pub const OP_call_ref = 0x9a; |
| 494 | pub const OP_form_tls_address = 0x9b; |
| 495 | pub const OP_call_frame_cfa = 0x9c; |
| 496 | pub const OP_bit_piece = 0x9d; |
| 497 | |
| 498 | // DWARF 4 extensions. |
| 499 | pub const OP_implicit_value = 0x9e; |
| 500 | pub const OP_stack_value = 0x9f; |
| 501 | |
| 502 | pub const OP_lo_user = 0xe0; // Implementation-defined range start. |
| 503 | pub const OP_hi_user = 0xff; // Implementation-defined range end. |
| 504 | |
| 505 | // GNU extensions. |
| 506 | pub const OP_GNU_push_tls_address = 0xe0; |
| 507 | // The following is for marking variables that are uninitialized. |
| 508 | pub const OP_GNU_uninit = 0xf0; |
| 509 | pub const OP_GNU_encoded_addr = 0xf1; |
| 510 | // The GNU implicit pointer extension. |
| 511 | // See http://www.dwarfstd.org/ShowIssue.php?issue=100831.1&type=open . |
| 512 | pub const OP_GNU_implicit_pointer = 0xf2; |
| 513 | // The GNU entry value extension. |
| 514 | // See http://www.dwarfstd.org/ShowIssue.php?issue=100909.1&type=open . |
| 515 | pub const OP_GNU_entry_value = 0xf3; |
| 516 | // The GNU typed stack extension. |
| 517 | // See http://www.dwarfstd.org/doc/040408.1.html . |
| 518 | pub const OP_GNU_const_type = 0xf4; |
| 519 | pub const OP_GNU_regval_type = 0xf5; |
| 520 | pub const OP_GNU_deref_type = 0xf6; |
| 521 | pub const OP_GNU_convert = 0xf7; |
| 522 | pub const OP_GNU_reinterpret = 0xf9; |
| 523 | // The GNU parameter ref extension. |
| 524 | pub const OP_GNU_parameter_ref = 0xfa; |
| 525 | // Extension for Fission. See http://gcc.gnu.org/wiki/DebugFission. |
| 526 | pub const OP_GNU_addr_index = 0xfb; |
| 527 | pub const OP_GNU_const_index = 0xfc; |
| 528 | // HP extensions. |
| 529 | pub const OP_HP_unknown = 0xe0; // Ouch, the same as GNU_push_tls_address. |
| 530 | pub const OP_HP_is_value = 0xe1; |
| 531 | pub const OP_HP_fltconst4 = 0xe2; |
| 532 | pub const OP_HP_fltconst8 = 0xe3; |
| 533 | pub const OP_HP_mod_range = 0xe4; |
| 534 | pub const OP_HP_unmod_range = 0xe5; |
| 535 | pub const OP_HP_tls = 0xe6; |
| 536 | // PGI (STMicroelectronics) extensions. |
| 537 | pub const OP_PGI_omp_thread_num = 0xf8; |
| 538 | |
| 539 | pub const ATE_void = 0x0; |
| 540 | pub const ATE_address = 0x1; |
| 541 | pub const ATE_boolean = 0x2; |
| 542 | pub const ATE_complex_float = 0x3; |
| 543 | pub const ATE_float = 0x4; |
| 544 | pub const ATE_signed = 0x5; |
| 545 | pub const ATE_signed_char = 0x6; |
| 546 | pub const ATE_unsigned = 0x7; |
| 547 | pub const ATE_unsigned_char = 0x8; |
| 548 | |
| 549 | // DWARF 3. |
| 550 | pub const ATE_imaginary_float = 0x9; |
| 551 | pub const ATE_packed_decimal = 0xa; |
| 552 | pub const ATE_numeric_string = 0xb; |
| 553 | pub const ATE_edited = 0xc; |
| 554 | pub const ATE_signed_fixed = 0xd; |
| 555 | pub const ATE_unsigned_fixed = 0xe; |
| 556 | pub const ATE_decimal_float = 0xf; |
| 557 | |
| 558 | // DWARF 4. |
| 559 | pub const ATE_UTF = 0x10; |
| 560 | |
| 561 | pub const ATE_lo_user = 0x80; |
| 562 | pub const ATE_hi_user = 0xff; |
| 563 | |
| 564 | // HP extensions. |
| 565 | pub const ATE_HP_float80 = 0x80; // Floating-point (80 bit). |
| 566 | pub const ATE_HP_complex_float80 = 0x81; // Complex floating-point (80 bit). |
| 567 | pub const ATE_HP_float128 = 0x82; // Floating-point (128 bit). |
| 568 | pub const ATE_HP_complex_float128 = 0x83; // Complex fp (128 bit). |
| 569 | pub const ATE_HP_floathpintel = 0x84; // Floating-point (82 bit IA64). |
| 570 | pub const ATE_HP_imaginary_float80 = 0x85; |
| 571 | pub const ATE_HP_imaginary_float128 = 0x86; |
| 572 | pub const ATE_HP_VAX_float = 0x88; // F or G floating. |
| 573 | pub const ATE_HP_VAX_float_d = 0x89; // D floating. |
| 574 | pub const ATE_HP_packed_decimal = 0x8a; // Cobol. |
| 575 | pub const ATE_HP_zoned_decimal = 0x8b; // Cobol. |
| 576 | pub const ATE_HP_edited = 0x8c; // Cobol. |
| 577 | pub const ATE_HP_signed_fixed = 0x8d; // Cobol. |
| 578 | pub const ATE_HP_unsigned_fixed = 0x8e; // Cobol. |
| 579 | pub const ATE_HP_VAX_complex_float = 0x8f; // F or G floating complex. |
| 580 | pub const ATE_HP_VAX_complex_float_d = 0x90; // D floating complex. |
| 581 | |
| 582 | |
| 583 | pub const CFA_advance_loc = 0x40; |
| 584 | pub const CFA_offset = 0x80; |
| 585 | pub const CFA_restore = 0xc0; |
| 586 | pub const CFA_nop = 0x00; |
| 587 | pub const CFA_set_loc = 0x01; |
| 588 | pub const CFA_advance_loc1 = 0x02; |
| 589 | pub const CFA_advance_loc2 = 0x03; |
| 590 | pub const CFA_advance_loc4 = 0x04; |
| 591 | pub const CFA_offset_extended = 0x05; |
| 592 | pub const CFA_restore_extended = 0x06; |
| 593 | pub const CFA_undefined = 0x07; |
| 594 | pub const CFA_same_value = 0x08; |
| 595 | pub const CFA_register = 0x09; |
| 596 | pub const CFA_remember_state = 0x0a; |
| 597 | pub const CFA_restore_state = 0x0b; |
| 598 | pub const CFA_def_cfa = 0x0c; |
| 599 | pub const CFA_def_cfa_register = 0x0d; |
| 600 | pub const CFA_def_cfa_offset = 0x0e; |
| 601 | |
| 602 | // DWARF 3. |
| 603 | pub const CFA_def_cfa_expression = 0x0f; |
| 604 | pub const CFA_expression = 0x10; |
| 605 | pub const CFA_offset_extended_sf = 0x11; |
| 606 | pub const CFA_def_cfa_sf = 0x12; |
| 607 | pub const CFA_def_cfa_offset_sf = 0x13; |
| 608 | pub const CFA_val_offset = 0x14; |
| 609 | pub const CFA_val_offset_sf = 0x15; |
| 610 | pub const CFA_val_expression = 0x16; |
| 611 | |
| 612 | pub const CFA_lo_user = 0x1c; |
| 613 | pub const CFA_hi_user = 0x3f; |
| 614 | |
| 615 | // SGI/MIPS specific. |
| 616 | pub const CFA_MIPS_advance_loc8 = 0x1d; |
| 617 | |
| 618 | // GNU extensions. |
| 619 | pub const CFA_GNU_window_save = 0x2d; |
| 620 | pub const CFA_GNU_args_size = 0x2e; |
| 621 | pub const CFA_GNU_negative_offset_extended = 0x2f; |