#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
    DW_AT value: 0     DW_FORM value: 0
   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
    DW_AT value: 0     DW_FORM value: 0

Contents of the .[z]?debug_info section:

  Compilation Unit @ offset 0x0:
   Length:        0x46 \(32-bit\)
   Version:       3
   Abbrev Offset: 0x0
   Pointer Size:  4
 <0><b>: Abbrev Number: 1 \(DW_TAG_compile_unit\)
    <c>   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\)
 <1><49>: Abbrev Number: 0

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 \(offset 0x.*\):
  Entry	Dir	Time	Size	Name
  1	0	0	0	compressed-1.c

 Line Number Statements:
  \[0x.*\]  Extended opcode 2: set Address to 0x0
  \[0x.*\]  Advance Line by 10 to 11
  \[0x.*\]  Copy
  \[0x.*\]  Special opcode 6: advance Address by 0 to 0x0 and Line by 1 to 12
  \[0x.*\]  Advance Line by -7 to 5
  \[0x.*\]  Special opcode 229: advance Address by 16 to 0x10 and Line by 0 to 5
  \[0x.*\]  Special opcode 49: advance Address by 3 to 0x13 and Line by 2 to 7
  \[0x.*\]  Special opcode 46: advance Address by 3 to 0x16 and Line by -1 to 6
  \[0x.*\]  Advance PC by 5 to 0x1b
  \[0x.*\]  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

