#as: --compress-debug-sections
#readelf: -w
#name: DWARF2 debugging information 1

Contents of the .zdebug_info section:

  Compilation Unit @ offset 0x0:
   Length:        0x4e \(32-bit\)
   Version:       2
   Abbrev Offset: 0
   Pointer Size:  4
 <0><b>: Abbrev Number: 1 \(DW_TAG_compile_unit\)
    < c>   DW_AT_stmt_list   : 0x0	
    <10>   DW_AT_high_pc     : 0x4	
    <14>   DW_AT_low_pc      : 0x0	
    <18>   DW_AT_name        : file1.txt	
    <22>   DW_AT_producer    : GNU C 3.3.3	
    <2e>   DW_AT_language    : 1	\(ANSI C\)
 <1><2f>: Abbrev Number: 2 \(DW_TAG_subprogram\)
    <30>   DW_AT_external    : 1	
    <31>   DW_AT_decl_file   : 1	
    <32>   DW_AT_decl_line   : 2	
    <33>   DW_AT_name        : func_cu1	
    <3c>   DW_AT_type        : <0x4a>	
    <40>   DW_AT_low_pc      : 0x0	
    <44>   DW_AT_high_pc     : 0x4	
    <48>   DW_AT_frame_base  : 1 byte block: 55 	\(DW_OP_reg5 \([^()]*\)\)
 <1><4a>: Abbrev Number: 3 \(DW_TAG_base_type\)
    <4b>   DW_AT_name        : int	
    <4f>   DW_AT_byte_size   : 4	
    <50>   DW_AT_encoding    : 5	\(signed\)

Contents of the .zdebug_abbrev section:

  Number TAG
   1      DW_TAG_compile_unit    \[has children\]
    DW_AT_stmt_list    DW_FORM_data4
    DW_AT_high_pc      DW_FORM_addr
    DW_AT_low_pc       DW_FORM_addr
    DW_AT_name         DW_FORM_string
    DW_AT_producer     DW_FORM_string
    DW_AT_language     DW_FORM_data1
   2      DW_TAG_subprogram    \[no children\]
    DW_AT_external     DW_FORM_flag
    DW_AT_decl_file    DW_FORM_data1
    DW_AT_decl_line    DW_FORM_data1
    DW_AT_name         DW_FORM_string
    DW_AT_type         DW_FORM_ref4
    DW_AT_low_pc       DW_FORM_addr
    DW_AT_high_pc      DW_FORM_addr
    DW_AT_frame_base   DW_FORM_block1
   3      DW_TAG_base_type    \[no children\]
    DW_AT_name         DW_FORM_string
    DW_AT_byte_size    DW_FORM_data1
    DW_AT_encoding     DW_FORM_data1

Raw dump of debug contents of section .zdebug_line:

  Offset:                      0x0
  Length:                      62
  DWARF Version:               2
  Prologue Length:             35
  Minimum Instruction Length:  1
  Initial value of 'is_stmt':  1
  Line Base:                   1
  Line Range:                  1
  Opcode Base:                 16

 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
  Opcode 13 has 0 args
  Opcode 14 has 0 args
  Opcode 15 has 0 args

 The Directory Table is empty.

 The File Name Table:
  Entry	Dir	Time	Size	Name
  1	0	0	0	file1.txt

 Line Number Statements:
  Extended opcode 2: set Address to 0x0
  Advance Line by 3 to 4
  Copy
  Copy
  Extended opcode 2: set Address to 0x4
  Extended opcode 1: End of Sequence


