Module: ElfUtils::Types::Dwarf Private
- Extended by:
- CTypes::Helpers, Dwarf
- Defined in:
- lib/elf_utils/types/dwarf.rb
This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.
Defined Under Namespace
Classes: AbbreviationDeclaration, Expression, UnitHeader
Constant Summary collapse
- UnitType =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
CTypes::Enum.new(Types::ULEB128, { compile: 0x01, type: 0x02, partial: 0x03, skeleton: 0x04, split_compile: 0x05, split_type: 0x06, lo_user: 0x80, hi_user: 0xff }).permissive
- Tag =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
CTypes::Enum.new(Types::ULEB128, { invalid: 0, array_type: 0x01, class_type: 0x02, entry_point: 0x03, enumeration_type: 0x04, formal_parameter: 0x05, imported_declaration: 0x08, label: 0x0a, lexical_block: 0x0b, member: 0x0d, pointer_type: 0x0f, reference_type: 0x10, compile_unit: 0x11, string_type: 0x12, structure_type: 0x13, subroutine_type: 0x15, typedef: 0x16, union_type: 0x17, unspecified_parameters: 0x18, variant: 0x19, common_block: 0x1a, common_inclusion: 0x1b, inheritance: 0x1c, inlined_subroutine: 0x1d, module: 0x1e, ptr_to_member_type: 0x1f, set_type: 0x20, subrange_type: 0x21, with_stmt: 0x22, access_declaration: 0x23, base_type: 0x24, catch_block: 0x25, const_type: 0x26, constant: 0x27, enumerator: 0x28, file_type: 0x29, friend: 0x2a, namelist: 0x2b, namelist_item: 0x2c, packed_type: 0x2d, subprogram: 0x2e, template_type_parameter: 0x2f, template_value_parameter: 0x30, thrown_type: 0x31, try_block: 0x32, variant_part: 0x33, variable: 0x34, volatile_type: 0x35, dwarf_procedure: 0x36, restrict_type: 0x37, interface_type: 0x38, namespace: 0x39, imported_module: 0x3a, unspecified_type: 0x3b, partial_unit: 0x3c, imported_unit: 0x3d, condition: 0x3f, shared_type: 0x40, type_unit: 0x41, rvalue_reference_type: 0x42, template_alias: 0x43, coarray_type: 0x44, generic_subrange: 0x45, dynamic_type: 0x46, atomic_type: 0x47, call_site: 0x48, call_site_parameter: 0x49, skeleton_unit: 0x4a, immutable_type: 0x4b }).permissive
- Form =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
CTypes::Enum.new(Types::ULEB128, { zero: 0, addr: 0x01, block2: 0x03, block4: 0x04, data2: 0x05, data4: 0x06, data8: 0x07, string: 0x08, block: 0x09, block1: 0x0a, data1: 0x0b, flag: 0x0c, sdata: 0x0d, strp: 0x0e, udata: 0x0f, ref_addr: 0x10, ref1: 0x11, ref2: 0x12, ref4: 0x13, ref8: 0x14, ref_udata: 0x15, indirect: 0x16, sec_offset: 0x17, exprloc: 0x18, flag_present: 0x19, strx: 0x1a, addrx: 0x1b, ref_sup4: 0x1c, strp_sup: 0x1d, data16: 0x1e, line_strp: 0x1f, ref_sig8: 0x20, implicit_const: 0x21, loclistx: 0x22, rnglistx: 0x23, ref_sup8: 0x24, strx1: 0x25, strx2: 0x26, strx3: 0x27, strx4: 0x28, addrx1: 0x29, addrx2: 0x2a, addrx3: 0x2b, addrx4: 0x2c }).permissive
- Attribute =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
CTypes::Enum.new(Types::ULEB128, { zero: 0, sibling: 0x01, location: 0x02, name: 0x03, ordering: 0x09, byte_size: 0x0b, bit_offset: 0x0c, bit_size: 0x0d, stmt_list: 0x10, low_pc: 0x11, high_pc: 0x12, language: 0x13, discr: 0x15, discr_value: 0x16, visibility: 0x17, import: 0x18, string_length: 0x19, common_reference: 0x1a, comp_dir: 0x1b, const_value: 0x1c, containing_type: 0x1d, default_value: 0x1e, inline: 0x20, is_optional: 0x21, lower_bound: 0x22, producer: 0x25, prototyped: 0x27, return_addr: 0x2a, start_scope: 0x2c, bit_stride: 0x2e, upper_bound: 0x2f, abstract_origin: 0x31, accessibility: 0x32, address_class: 0x33, artificial: 0x34, base_types: 0x35, calling_convention: 0x36, count: 0x37, data_member_location: 0x38, decl_column: 0x39, decl_file: 0x3a, decl_line: 0x3b, declaration: 0x3c, discr_list: 0x3d, encoding: 0x3e, external: 0x3f, frame_base: 0x40, friend: 0x41, identifier_case: 0x42, macro_info: 0x43, namelist_item: 0x44, priority: 0x45, segment: 0x46, specification: 0x47, static_link: 0x48, type: 0x49, use_location: 0x4a, variable_parameter: 0x4b, virtuality: 0x4c, vtable_elem_location: 0x4d, allocated: 0x4e, associated: 0x4f, data_location: 0x50, byte_stride: 0x51, entry_pc: 0x52, use_UTF8: 0x53, extension: 0x54, ranges: 0x55, trampoline: 0x56, call_column: 0x57, call_file: 0x58, call_line: 0x59, description: 0x5a, binary_scale: 0x5b, decimal_scale: 0x5c, small: 0x5d, decimal_sign: 0x5e, digit_count: 0x5f, picture_string: 0x60, mutable: 0x61, threads_scaled: 0x62, explicit: 0x63, object_pointer: 0x64, endianity: 0x65, elemental: 0x66, pure: 0x67, recursive: 0x68, signature: 0x69, main_subprogram: 0x6a, data_bit_offset: 0x6b, const_expr: 0x6c, enum_class: 0x6d, linkage_name: 0x6e, string_length_bit_size: 0x6f, string_length_byte_size: 0x70, rank: 0x71, str_offsets_base: 0x72, addr_base: 0x73, rnglists_base: 0x74, dwo_name: 0x76, reference: 0x77, rvalue_reference: 0x78, macros: 0x79, call_all_calls: 0x7a, call_all_source_calls: 0x7b, call_all_tail_calls: 0x7c, call_return_pc: 0x7d, call_value: 0x7e, call_origin: 0x7f, call_parameter: 0x80, call_pc: 0x81, call_tail_call: 0x82, call_target: 0x83, call_target_clobbered: 0x84, call_data_location: 0x85, call_data_value: 0x86, noreturn: 0x87, alignment: 0x88, export_symbols: 0x89, deleted: 0x8a, defaulted: 0x8b, loclists_base: 0x8c, MIPS_fde: 0x2001, MIPS_loop_begin: 0x2002, MIPS_tail_loop_begin: 0x2003, MIPS_epilog_begin: 0x2004, MIPS_loop_unroll_factor: 0x2005, MIPS_software_pipeline_depth: 0x2006, MIPS_linkage_name: 0x2007, MIPS_stride: 0x2008, MIPS_abstract_name: 0x2009, MIPS_clone_origin: 0x200a, MIPS_has_inlines: 0x200b, MIPS_stride_byte: 0x200c, MIPS_stride_elem: 0x200d, MIPS_ptr_dopetype: 0x200e, MIPS_allocatable_dopetype: 0x200f, MIPS_assumed_shape_dopetype: 0x2010, MIPS_assumed_size: 0x2011, sf_names: 0x2101, src_info: 0x2102, mac_info: 0x2103, src_coords: 0x2104, body_begin: 0x2105, body_end: 0x2106, GNU_vector: 0x2107, GNU_guarded_by: 0x2108, GNU_pt_guarded_by: 0x2109, GNU_guarded: 0x210a, GNU_pt_guarded: 0x210b, GNU_locks_excluded: 0x210c, GNU_exclusive_locks_required: 0x210d, GNU_shared_locks_required: 0x210e, GNU_odr_signature: 0x210f, GNU_template_name: 0x2110, GNU_call_site_value: 0x2111, GNU_call_site_data_value: 0x2112, GNU_call_site_target: 0x2113, GNU_call_site_target_clobbered: 0x2114, GNU_tail_call: 0x2115, GNU_all_tail_call_sites: 0x2116, GNU_all_call_sites: 0x2117, GNU_all_source_call_sites: 0x2118, GNU_locviews: 0x2137, GNU_entry_view: 0x2138, GNU_macros: 0x2119, GNU_deleted: 0x211a, GNU_dwo_name: 0x2130, GNU_dwo_id: 0x2131, GNU_ranges_base: 0x2132, GNU_addr_base: 0x2133, GNU_pubnames: 0x2134, GNU_pubtypes: 0x2135 }).permissive
- Encoding =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
CTypes::Enum.new(uint8, { void: 0x0, address: 0x1, boolean: 0x2, complex_float: 0x3, float: 0x4, signed: 0x5, signed_char: 0x6, unsigned: 0x7, unsigned_char: 0x8, imaginary_float: 0x9, packed_decimal: 0xa, numeric_string: 0xb, edited: 0xc, signed_fixed: 0xd, unsigned_fixed: 0xe, decimal_float: 0xf, UTF: 0x10, UCS: 0x11, ASCII: 0x12 }).permissive
- EntryFormatType =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Line Number Program ‘directory_entry_format` and `file_name_entry_format` type field
CTypes::Enum.new(Types::ULEB128, { path: 1, directory_index: 2, timestamp: 3, size: 4, md5: 5 }).permissive
- Operation =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
CTypes::Enum.new(uint8, { addr: 0x03, deref: 0x06, const1u: 0x08, const1s: 0x09, const2u: 0x0a, const2s: 0x0b, const4u: 0x0c, const4s: 0x0d, const8u: 0x0e, const8s: 0x0f, constu: 0x10, consts: 0x11, dup: 0x12, drop: 0x13, over: 0x14, pick: 0x15, swap: 0x16, rot: 0x17, xderef: 0x18, abs: 0x19, and: 0x1a, div: 0x1b, minus: 0x1c, mod: 0x1d, mul: 0x1e, neg: 0x1f, not: 0x20, or: 0x21, plus: 0x22, plus_uconst: 0x23, shl: 0x24, shr: 0x25, shra: 0x26, xor: 0x27, bra: 0x28, eq: 0x29, ge: 0x2a, gt: 0x2b, le: 0x2c, lt: 0x2d, ne: 0x2e, skip: 0x2f, lit0: 0x30, lit1: 0x31, lit2: 0x32, lit3: 0x33, lit4: 0x34, lit5: 0x35, lit6: 0x36, lit7: 0x37, lit8: 0x38, lit9: 0x39, lit10: 0x3a, lit11: 0x3b, lit12: 0x3c, lit13: 0x3d, lit14: 0x3e, lit15: 0x3f, lit16: 0x40, lit17: 0x41, lit18: 0x42, lit19: 0x43, lit20: 0x44, lit21: 0x45, lit22: 0x46, lit23: 0x47, lit24: 0x48, lit25: 0x49, lit26: 0x4a, lit27: 0x4b, lit28: 0x4c, lit29: 0x4d, lit30: 0x4e, lit31: 0x4f, reg0: 0x50, reg1: 0x51, reg2: 0x52, reg3: 0x53, reg4: 0x54, reg5: 0x55, reg6: 0x56, reg7: 0x57, reg8: 0x58, reg9: 0x59, reg10: 0x5a, reg11: 0x5b, reg12: 0x5c, reg13: 0x5d, reg14: 0x5e, reg15: 0x5f, reg16: 0x60, reg17: 0x61, reg18: 0x62, reg19: 0x63, reg20: 0x64, reg21: 0x65, reg22: 0x66, reg23: 0x67, reg24: 0x68, reg25: 0x69, reg26: 0x6a, reg27: 0x6b, reg28: 0x6c, reg29: 0x6d, reg30: 0x6e, reg31: 0x6f, breg0: 0x70, breg1: 0x71, breg2: 0x72, breg3: 0x73, breg4: 0x74, breg5: 0x75, breg6: 0x76, breg7: 0x77, breg8: 0x78, breg9: 0x79, breg10: 0x7a, breg11: 0x7b, breg12: 0x7c, breg13: 0x7d, breg14: 0x7e, breg15: 0x7f, breg16: 0x80, breg17: 0x81, breg18: 0x82, breg19: 0x83, breg20: 0x84, breg21: 0x85, breg22: 0x86, breg23: 0x87, breg24: 0x88, breg25: 0x89, breg26: 0x8a, breg27: 0x8b, breg28: 0x8c, breg29: 0x8d, breg30: 0x8e, breg31: 0x8f, regx: 0x90, fbreg: 0x91, bregx: 0x92, piece: 0x93, deref_size: 0x94, xderef_size: 0x95, nop: 0x96, push_object_address: 0x97, call2: 0x98, call4: 0x99, call_ref: 0x9a, form_tls_address: 0x9b, call_frame_cfa: 0x9c, bit_piece: 0x9d, implicit_value: 0x9e, stack_value: 0x9f, implicit_pointer: 0xa0, addrx: 0xa1, constx: 0xa2, entry_value: 0xa3, const_type: 0xa4, regval_type: 0xa5, deref_type: 0xa6, xderef_type: 0xa7, convert: 0xa8, reinterpret: 0xa9, GNU_push_tls_address: 0xe0, GNU_uninit: 0xf0, GNU_encoded_addr: 0xf1, GNU_implicit_pointer: 0xf2, GNU_entry_value: 0xf3, GNU_const_type: 0xf4, GNU_regval_type: 0xf5, GNU_deref_type: 0xf6, GNU_convert: 0xf7, GNU_reinterpret: 0xf9, GNU_parameter_ref: 0xfa, GNU_addr_index: 0xfb, GNU_const_index: 0xfc, GNU_variable_value: 0xfd }).permissive
- StandardOpCodes =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Line Number Program Standard Opcodes
CTypes::Enum.new(uint8, { copy: 1, advance_pc: 2, advance_line: 3, set_file: 4, set_column: 5, negate_stmt: 6, set_basic_block: 7, const_add_pc: 8, fixed_advance_pc: 9, set_prologue_end: 10, set_epilogue_begin: 11, set_isa: 12 }).permissive
- ExtendedOpCodes =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Line Number Program Extended Opcodes
CTypes::Enum.new(uint8, { end_sequence: 1, set_address: 2, define_file: 3, set_discriminator: 4, lo_user: 128, hi_user: 255 }).permissive