Contents of the .debug_info section:

  Compilation Unit @ offset 0x0:
   Length:        0x243 (32-bit)
   Version:       2
   Abbrev Offset: 0x0
   Pointer Size:  4
 <0><b>: Abbrev Number: 1 (DW_TAG_compile_unit)
    <c>   DW_AT_producer    : (indirect string, offset: 0xf6): GNU C 4.8.4 -m32 -mtune=generic -march=i686 -gdwarf-2 -fstack-protector	
    <10>   DW_AT_language    : 1	(ANSI C)
    <11>   DW_AT_name        : (indirect string, offset: 0x229): mpers-m32/struct_loop_info.c	
    <15>   DW_AT_comp_dir    : (indirect string, offset: 0x18a): /usr/local/google/home/enh/Downloads/strace-4.16	
    <19>   DW_AT_stmt_list   : 0x0	
 <1><1d>: Abbrev Number: 2 (DW_TAG_base_type)
    <1e>   DW_AT_byte_size   : 1	
    <1f>   DW_AT_encoding    : 6	(signed char)
    <20>   DW_AT_name        : (indirect string, offset: 0x20b): signed char	
 <1><24>: Abbrev Number: 2 (DW_TAG_base_type)
    <25>   DW_AT_byte_size   : 2	
    <26>   DW_AT_encoding    : 5	(signed)
    <27>   DW_AT_name        : (indirect string, offset: 0x1f8): short int	
 <1><2b>: Abbrev Number: 3 (DW_TAG_base_type)
    <2c>   DW_AT_byte_size   : 4	
    <2d>   DW_AT_encoding    : 5	(signed)
    <2e>   DW_AT_name        : int	
 <1><32>: Abbrev Number: 2 (DW_TAG_base_type)
    <33>   DW_AT_byte_size   : 8	
    <34>   DW_AT_encoding    : 5	(signed)
    <35>   DW_AT_name        : (indirect string, offset: 0x1ce): long long int	
 <1><39>: Abbrev Number: 2 (DW_TAG_base_type)
    <3a>   DW_AT_byte_size   : 1	
    <3b>   DW_AT_encoding    : 8	(unsigned char)
    <3c>   DW_AT_name        : (indirect string, offset: 0x95): unsigned char	
 <1><40>: Abbrev Number: 2 (DW_TAG_base_type)
    <41>   DW_AT_byte_size   : 2	
    <42>   DW_AT_encoding    : 7	(unsigned)
    <43>   DW_AT_name        : (indirect string, offset: 0x23): short unsigned int	
 <1><47>: Abbrev Number: 2 (DW_TAG_base_type)
    <48>   DW_AT_byte_size   : 4	
    <49>   DW_AT_encoding    : 7	(unsigned)
    <4a>   DW_AT_name        : (indirect string, offset: 0x14d): unsigned int	
 <1><4e>: Abbrev Number: 2 (DW_TAG_base_type)
    <4f>   DW_AT_byte_size   : 8	
    <50>   DW_AT_encoding    : 7	(unsigned)
    <51>   DW_AT_name        : (indirect string, offset: 0x76): long long unsigned int	
 <1><55>: Abbrev Number: 2 (DW_TAG_base_type)
    <56>   DW_AT_byte_size   : 4	
    <57>   DW_AT_encoding    : 5	(signed)
    <58>   DW_AT_name        : (indirect string, offset: 0x202): long int	
 <1><5c>: Abbrev Number: 2 (DW_TAG_base_type)
    <5d>   DW_AT_byte_size   : 4	
    <5e>   DW_AT_encoding    : 7	(unsigned)
    <5f>   DW_AT_name        : (indirect string, offset: 0xa3): long unsigned int	
 <1><63>: Abbrev Number: 2 (DW_TAG_base_type)
    <64>   DW_AT_byte_size   : 4	
    <65>   DW_AT_encoding    : 7	(unsigned)
    <66>   DW_AT_name        : (indirect string, offset: 0x1c5): sizetype	
 <1><6a>: Abbrev Number: 2 (DW_TAG_base_type)
    <6b>   DW_AT_byte_size   : 1	
    <6c>   DW_AT_encoding    : 6	(signed char)
    <6d>   DW_AT_name        : (indirect string, offset: 0x168): char	
 <1><71>: Abbrev Number: 4 (DW_TAG_array_type)
    <72>   DW_AT_type        : <0x6a>	
    <76>   DW_AT_sibling     : <0x81>	
 <2><7a>: Abbrev Number: 5 (DW_TAG_subrange_type)
    <7b>   DW_AT_type        : <0x63>	
    <7f>   DW_AT_upper_bound : 3	
 <2><80>: Abbrev Number: 0
 <1><81>: Abbrev Number: 6 (DW_TAG_pointer_type)
    <82>   DW_AT_byte_size   : 4	
    <83>   DW_AT_type        : <0x87>	
 <1><87>: Abbrev Number: 7 (DW_TAG_const_type)
    <88>   DW_AT_type        : <0x6a>	
 <1><8c>: Abbrev Number: 8 (DW_TAG_typedef)
    <8d>   DW_AT_name        : (indirect string, offset: 0xbc): __kernel_old_dev_t	
    <91>   DW_AT_decl_file   : 2	
    <92>   DW_AT_decl_line   : 20	
    <93>   DW_AT_type        : <0x40>	
 <1><97>: Abbrev Number: 9 (DW_TAG_structure_type)
    <98>   DW_AT_name        : (indirect string, offset: 0xb5): sysent	
    <9c>   DW_AT_byte_size   : 20	
    <9d>   DW_AT_decl_file   : 1	
    <9e>   DW_AT_decl_line   : 4	
    <9f>   DW_AT_sibling     : <0xea>	
 <2><a3>: Abbrev Number: 10 (DW_TAG_member)
    <a4>   DW_AT_name        : (indirect string, offset: 0xf0): nargs	
    <a8>   DW_AT_decl_file   : 1	
    <a9>   DW_AT_decl_line   : 5	
    <aa>   DW_AT_type        : <0x47>	
    <ae>   DW_AT_data_member_location: 2 byte block: 23 0 	(DW_OP_plus_uconst: 0)
 <2><b1>: Abbrev Number: 10 (DW_TAG_member)
    <b2>   DW_AT_name        : (indirect string, offset: 0x6c): sys_flags	
    <b6>   DW_AT_decl_file   : 1	
    <b7>   DW_AT_decl_line   : 6	
    <b8>   DW_AT_type        : <0x2b>	
    <bc>   DW_AT_data_member_location: 2 byte block: 23 4 	(DW_OP_plus_uconst: 4)
 <2><bf>: Abbrev Number: 11 (DW_TAG_member)
    <c0>   DW_AT_name        : sen	
    <c4>   DW_AT_decl_file   : 1	
    <c5>   DW_AT_decl_line   : 7	
    <c6>   DW_AT_type        : <0x2b>	
    <ca>   DW_AT_data_member_location: 2 byte block: 23 8 	(DW_OP_plus_uconst: 8)
 <2><cd>: Abbrev Number: 10 (DW_TAG_member)
    <ce>   DW_AT_name        : (indirect string, offset: 0x220): sys_func	
    <d2>   DW_AT_decl_file   : 1	
    <d3>   DW_AT_decl_line   : 8	
    <d4>   DW_AT_type        : <0xf5>	
    <d8>   DW_AT_data_member_location: 2 byte block: 23 c 	(DW_OP_plus_uconst: 12)
 <2><db>: Abbrev Number: 10 (DW_TAG_member)
    <dc>   DW_AT_name        : (indirect string, offset: 0x36): sys_name	
    <e0>   DW_AT_decl_file   : 1	
    <e1>   DW_AT_decl_line   : 9	
    <e2>   DW_AT_type        : <0x81>	
    <e6>   DW_AT_data_member_location: 2 byte block: 23 10 	(DW_OP_plus_uconst: 16)
 <2><e9>: Abbrev Number: 0
 <1><ea>: Abbrev Number: 12 (DW_TAG_subroutine_type)
    <eb>   DW_AT_type        : <0x2b>	
    <ef>   DW_AT_sibling     : <0xf5>	
 <2><f3>: Abbrev Number: 13 (DW_TAG_unspecified_parameters)
 <2><f4>: Abbrev Number: 0
 <1><f5>: Abbrev Number: 6 (DW_TAG_pointer_type)
    <f6>   DW_AT_byte_size   : 4	
    <f7>   DW_AT_type        : <0xea>	
 <1><fb>: Abbrev Number: 8 (DW_TAG_typedef)
    <fc>   DW_AT_name        : (indirect string, offset: 0x15a): struct_sysent	
    <100>   DW_AT_decl_file   : 1	
    <101>   DW_AT_decl_line   : 10	
    <102>   DW_AT_type        : <0x97>	
 <1><106>: Abbrev Number: 6 (DW_TAG_pointer_type)
    <107>   DW_AT_byte_size   : 4	
    <108>   DW_AT_type        : <0x10c>	
 <1><10c>: Abbrev Number: 7 (DW_TAG_const_type)
    <10d>   DW_AT_type        : <0xfb>	
 <1><111>: Abbrev Number: 2 (DW_TAG_base_type)
    <112>   DW_AT_byte_size   : 1	
    <113>   DW_AT_encoding    : 2	(boolean)
    <114>   DW_AT_name        : (indirect string, offset: 0x14): _Bool	
 <1><118>: Abbrev Number: 9 (DW_TAG_structure_type)
    <119>   DW_AT_name        : (indirect string, offset: 0xa): loop_info	
    <11d>   DW_AT_byte_size   : 140	
    <11e>   DW_AT_decl_file   : 3	
    <11f>   DW_AT_decl_line   : 30	
    <120>   DW_AT_sibling     : <0x1cf>	
 <2><124>: Abbrev Number: 10 (DW_TAG_member)
    <125>   DW_AT_name        : (indirect string, offset: 0x1ee): lo_number	
    <129>   DW_AT_decl_file   : 3	
    <12a>   DW_AT_decl_line   : 31	
    <12b>   DW_AT_type        : <0x2b>	
    <12f>   DW_AT_data_member_location: 2 byte block: 23 0 	(DW_OP_plus_uconst: 0)
 <2><132>: Abbrev Number: 10 (DW_TAG_member)
    <133>   DW_AT_name        : (indirect string, offset: 0x1e4): lo_device	
    <137>   DW_AT_decl_file   : 3	
    <138>   DW_AT_decl_line   : 32	
    <139>   DW_AT_type        : <0x8c>	
    <13d>   DW_AT_data_member_location: 2 byte block: 23 4 	(DW_OP_plus_uconst: 4)
 <2><140>: Abbrev Number: 10 (DW_TAG_member)
    <141>   DW_AT_name        : (indirect string, offset: 0x217): lo_inode	
    <145>   DW_AT_decl_file   : 3	
    <146>   DW_AT_decl_line   : 33	
    <147>   DW_AT_type        : <0x5c>	
    <14b>   DW_AT_data_member_location: 2 byte block: 23 8 	(DW_OP_plus_uconst: 8)
 <2><14e>: Abbrev Number: 10 (DW_TAG_member)
    <14f>   DW_AT_name        : (indirect string, offset: 0x3f): lo_rdevice	
    <153>   DW_AT_decl_file   : 3	
    <154>   DW_AT_decl_line   : 34	
    <155>   DW_AT_type        : <0x8c>	
    <159>   DW_AT_data_member_location: 2 byte block: 23 c 	(DW_OP_plus_uconst: 12)
 <2><15c>: Abbrev Number: 10 (DW_TAG_member)
    <15d>   DW_AT_name        : (indirect string, offset: 0x0): lo_offset	
    <161>   DW_AT_decl_file   : 3	
    <162>   DW_AT_decl_line   : 35	
    <163>   DW_AT_type        : <0x2b>	
    <167>   DW_AT_data_member_location: 2 byte block: 23 10 	(DW_OP_plus_uconst: 16)
 <2><16a>: Abbrev Number: 10 (DW_TAG_member)
    <16b>   DW_AT_name        : (indirect string, offset: 0xcf): lo_encrypt_type	
    <16f>   DW_AT_decl_file   : 3	
    <170>   DW_AT_decl_line   : 36	
    <171>   DW_AT_type        : <0x2b>	
    <175>   DW_AT_data_member_location: 2 byte block: 23 14 	(DW_OP_plus_uconst: 20)
 <2><178>: Abbrev Number: 10 (DW_TAG_member)
    <179>   DW_AT_name        : (indirect string, offset: 0x176): lo_encrypt_key_size	
    <17d>   DW_AT_decl_file   : 3	
    <17e>   DW_AT_decl_line   : 37	
    <17f>   DW_AT_type        : <0x2b>	
    <183>   DW_AT_data_member_location: 2 byte block: 23 18 	(DW_OP_plus_uconst: 24)
 <2><186>: Abbrev Number: 10 (DW_TAG_member)
    <187>   DW_AT_name        : (indirect string, offset: 0x16d): lo_flags	
    <18b>   DW_AT_decl_file   : 3	
    <18c>   DW_AT_decl_line   : 38	
    <18d>   DW_AT_type        : <0x2b>	
    <191>   DW_AT_data_member_location: 2 byte block: 23 1c 	(DW_OP_plus_uconst: 28)
 <2><194>: Abbrev Number: 10 (DW_TAG_member)
    <195>   DW_AT_name        : (indirect string, offset: 0x8d): lo_name	
    <199>   DW_AT_decl_file   : 3	
    <19a>   DW_AT_decl_line   : 39	
    <19b>   DW_AT_type        : <0x1cf>	
    <19f>   DW_AT_data_member_location: 2 byte block: 23 20 	(DW_OP_plus_uconst: 32)
 <2><1a2>: Abbrev Number: 10 (DW_TAG_member)
    <1a3>   DW_AT_name        : (indirect string, offset: 0x13e): lo_encrypt_key	
    <1a7>   DW_AT_decl_file   : 3	
    <1a8>   DW_AT_decl_line   : 40	
    <1a9>   DW_AT_type        : <0x1df>	
    <1ad>   DW_AT_data_member_location: 2 byte block: 23 60 	(DW_OP_plus_uconst: 96)
 <2><1b0>: Abbrev Number: 10 (DW_TAG_member)
    <1b1>   DW_AT_name        : (indirect string, offset: 0x1dc): lo_init	
    <1b5>   DW_AT_decl_file   : 3	
    <1b6>   DW_AT_decl_line   : 41	
    <1b7>   DW_AT_type        : <0x1ef>	
    <1bb>   DW_AT_data_member_location: 3 byte block: 23 80 1 	(DW_OP_plus_uconst: 128)
 <2><1bf>: Abbrev Number: 10 (DW_TAG_member)
    <1c0>   DW_AT_name        : (indirect string, offset: 0x1a): reserved	
    <1c4>   DW_AT_decl_file   : 3	
    <1c5>   DW_AT_decl_line   : 42	
    <1c6>   DW_AT_type        : <0x71>	
    <1ca>   DW_AT_data_member_location: 3 byte block: 23 88 1 	(DW_OP_plus_uconst: 136)
 <2><1ce>: Abbrev Number: 0
 <1><1cf>: Abbrev Number: 4 (DW_TAG_array_type)
    <1d0>   DW_AT_type        : <0x6a>	
    <1d4>   DW_AT_sibling     : <0x1df>	
 <2><1d8>: Abbrev Number: 5 (DW_TAG_subrange_type)
    <1d9>   DW_AT_type        : <0x63>	
    <1dd>   DW_AT_upper_bound : 63	
 <2><1de>: Abbrev Number: 0
 <1><1df>: Abbrev Number: 4 (DW_TAG_array_type)
    <1e0>   DW_AT_type        : <0x39>	
    <1e4>   DW_AT_sibling     : <0x1ef>	
 <2><1e8>: Abbrev Number: 5 (DW_TAG_subrange_type)
    <1e9>   DW_AT_type        : <0x63>	
    <1ed>   DW_AT_upper_bound : 31	
 <2><1ee>: Abbrev Number: 0
 <1><1ef>: Abbrev Number: 4 (DW_TAG_array_type)
    <1f0>   DW_AT_type        : <0x5c>	
    <1f4>   DW_AT_sibling     : <0x1ff>	
 <2><1f8>: Abbrev Number: 5 (DW_TAG_subrange_type)
    <1f9>   DW_AT_type        : <0x63>	
    <1fd>   DW_AT_upper_bound : 1	
 <2><1fe>: Abbrev Number: 0
 <1><1ff>: Abbrev Number: 8 (DW_TAG_typedef)
    <200>   DW_AT_name        : (indirect string, offset: 0x4a): struct_loop_info	
    <204>   DW_AT_decl_file   : 4	
    <205>   DW_AT_decl_line   : 32	
    <206>   DW_AT_type        : <0x118>	
 <1><20a>: Abbrev Number: 14 (DW_TAG_variable)
    <20b>   DW_AT_name        : (indirect string, offset: 0xdf): current_wordsize	
    <20f>   DW_AT_decl_file   : 5	
    <210>   DW_AT_decl_line   : 757	
    <212>   DW_AT_type        : <0x47>	
    <216>   DW_AT_external    : 1	
    <217>   DW_AT_declaration : 1	
 <1><218>: Abbrev Number: 14 (DW_TAG_variable)
    <219>   DW_AT_name        : (indirect string, offset: 0xb5): sysent	
    <21d>   DW_AT_decl_file   : 5	
    <21e>   DW_AT_decl_line   : 892	
    <220>   DW_AT_type        : <0x106>	
    <224>   DW_AT_external    : 1	
    <225>   DW_AT_declaration : 1	
 <1><226>: Abbrev Number: 14 (DW_TAG_variable)
    <227>   DW_AT_name        : (indirect string, offset: 0x1bb): nsyscalls	
    <22b>   DW_AT_decl_file   : 5	
    <22c>   DW_AT_decl_line   : 903	
    <22e>   DW_AT_type        : <0x47>	
    <232>   DW_AT_external    : 1	
    <233>   DW_AT_declaration : 1	
 <1><234>: Abbrev Number: 15 (DW_TAG_variable)
    <235>   DW_AT_name        : (indirect string, offset: 0x5b): mpers_target_var	
    <239>   DW_AT_decl_file   : 4	
    <23a>   DW_AT_decl_line   : 35	
    <23b>   DW_AT_type        : <0x1ff>	
    <23f>   DW_AT_external    : 1	
    <240>   DW_AT_location    : 5 byte block: 3 20 0 0 0 	(DW_OP_addr: 20)
 <1><246>: Abbrev Number: 0

