#PROG: objcopy #source: compressed-1.s #as: --32 --compress-debug-sections #objcopy: #readelf: -w #name: objcopy on compressed debug sections Contents of the .[z]?debug_abbrev section: Number TAG \(0x0\) 1 DW_TAG_compile_unit \[has children\] DW_AT_producer DW_FORM_strp DW_AT_language DW_FORM_data1 DW_AT_name DW_FORM_strp DW_AT_comp_dir DW_FORM_strp DW_AT_low_pc DW_FORM_addr DW_AT_high_pc DW_FORM_addr DW_AT_stmt_list DW_FORM_data4 2 DW_TAG_subprogram \[no children\] DW_AT_external DW_FORM_flag DW_AT_name DW_FORM_strp DW_AT_decl_file DW_FORM_data1 DW_AT_decl_line DW_FORM_data1 DW_AT_low_pc DW_FORM_addr DW_AT_high_pc DW_FORM_addr DW_AT_frame_base DW_FORM_block1 Contents of the .[z]?debug_info section: Compilation Unit @ offset 0x0: Length: 0x46 \(32-bit\) Version: 3 Abbrev Offset: 0x0 Pointer Size: 4 <0>: Abbrev Number: 1 \(DW_TAG_compile_unit\) DW_AT_producer : \(indirect string, offset: 0x0\): GNU C 4.4.4 <10> DW_AT_language : 1 \(ANSI C\) <11> DW_AT_name : \(indirect string, offset: 0x18\): compressed-1.c <15> DW_AT_comp_dir : \(indirect string, offset: 0x16\): . <19> DW_AT_low_pc : 0x0 <1d> DW_AT_high_pc : 0x1b <21> DW_AT_stmt_list : 0x0 <1><25>: Abbrev Number: 2 \(DW_TAG_subprogram\) <26> DW_AT_external : 1 <27> DW_AT_name : \(indirect string, offset: 0xc\): foo2 <2b> DW_AT_decl_file : 1 <2c> DW_AT_decl_line : 10 <2d> DW_AT_low_pc : 0x0 <31> DW_AT_high_pc : 0x2 <35> DW_AT_frame_base : 1 byte block: 9c \(DW_OP_call_frame_cfa\) <1><37>: Abbrev Number: 2 \(DW_TAG_subprogram\) <38> DW_AT_external : 1 <39> DW_AT_name : \(indirect string, offset: 0x11\): foo1 <3d> DW_AT_decl_file : 1 <3e> DW_AT_decl_line : 4 <3f> DW_AT_low_pc : 0x10 <43> DW_AT_high_pc : 0x1b <47> DW_AT_frame_base : 1 byte block: 9c \(DW_OP_call_frame_cfa\) Raw dump of debug contents of section .[z]?debug_line: Offset: 0x0 Length: 64 DWARF Version: 2 Prologue Length: 37 Minimum Instruction Length: 1 Initial value of 'is_stmt': 1 Line Base: -5 Line Range: 14 Opcode Base: 13 Opcodes: Opcode 1 has 0 args Opcode 2 has 1 args Opcode 3 has 1 args Opcode 4 has 1 args Opcode 5 has 1 args Opcode 6 has 0 args Opcode 7 has 0 args Opcode 8 has 0 args Opcode 9 has 1 args Opcode 10 has 0 args Opcode 11 has 0 args Opcode 12 has 1 args The Directory Table is empty. The File Name Table: Entry Dir Time Size Name 1 0 0 0 compressed-1.c Line Number Statements: Extended opcode 2: set Address to 0x0 Advance Line by 10 to 11 Copy Special opcode 6: advance Address by 0 to 0x0 and Line by 1 to 12 Advance Line by -7 to 5 Special opcode 229: advance Address by 16 to 0x10 and Line by 0 to 5 Special opcode 49: advance Address by 3 to 0x13 and Line by 2 to 7 Special opcode 46: advance Address by 3 to 0x16 and Line by -1 to 6 Advance PC by 5 to 0x1b Extended opcode 1: End of Sequence Contents of the .[z]?debug_pubnames section: Length: 32 Version: 2 Offset into .[z]?debug_info section: 0x0 Size of area in .[z]?debug_info section: 74 Offset Name 25 foo2 37 foo1 Contents of the .[z]?debug_aranges section: Length: 28 Version: 2 Offset into .[z]?debug_info: 0x0 Pointer Size: 4 Segment Size: 0 Address Length 00000000 0000001b 00000000 00000000 Contents of the .[z]?debug_str section: 0x00000000 474e5520 4320342e 342e3400 666f6f32 GNU C 4.4.4.foo2 0x00000010 00666f6f 31002e00 636f6d70 72657373 .foo1...compress 0x00000020 65642d31 2e6300 ed-1.c. Contents of the .[z]?debug_frame section: 00000000 00000010 ffffffff CIE Version: 1 Augmentation: "" Code alignment factor: 1 Data alignment factor: -4 Return address column: 8 DW_CFA_def_cfa: r4 \(esp\) ofs 4 DW_CFA_offset: r8 \(eip\) at cfa-4 DW_CFA_nop DW_CFA_nop 00000014 0000000c 00000000 FDE cie=00000000 pc=00000000..00000002 00000024 00000014 00000000 FDE cie=00000000 pc=00000010..0000001b DW_CFA_advance_loc: 3 to 00000013 DW_CFA_def_cfa_offset: 16 DW_CFA_advance_loc: 3 to 00000016 DW_CFA_def_cfa_offset: 4 DW_CFA_nop DW_CFA_nop