Home | History | Annotate | Download | only in binutils-all
      1 # Test .debug_info can reference .debug_ranges entries without ordering the
      2 # offsets strictly as increasing.
      3 
      4 	.text
      5 start:
      6 	.byte	1
      7 sub:
      8 	.byte	2
      9 end:
     10 
     11 	.section	.debug_ranges,"",%progbits
     12 range:
     13 
     14 range_sub:
     15 	.4byte	sub, end
     16 	.4byte	0, 0	;# range terminator
     17 
     18 range_cu:
     19 	.4byte	start, end
     20 	.4byte	0, 0	;# range terminator
     21 
     22 	.section	.debug_info,"",%progbits
     23 	.4byte	debugE - debugS	;# Length of Compilation Unit Info
     24 debugS:
     25 	.short	0x2	;# DWARF version number
     26 	.4byte	abbrev0	;# Offset Into Abbrev. Section
     27 	.byte	0x4	;# Pointer Size (in bytes)
     28 
     29 	.uleb128 0x1	;# (DIE (0xb) DW_TAG_compile_unit)
     30 	.4byte	range_cu - range	;# DW_AT_ranges
     31 
     32 	.uleb128 0x2	;# (DIE (0x6d) DW_TAG_subprogram)
     33 	.ascii "A\0"	;# DW_AT_name
     34 	.4byte	range_sub - range	;# DW_AT_ranges
     35 
     36 	;# minimal section alignment on alpha-* is 2, ensure no new invalid CU
     37 	;# will be started.
     38 	.balign	2
     39 debugE:
     40 
     41 	.section	.debug_abbrev,"",%progbits
     42 abbrev0:
     43 	.uleb128 0x1	;# (abbrev code)
     44 	.uleb128 0x11	;# (TAG: DW_TAG_compile_unit)
     45 	.byte	0x0	;# DW_children_no
     46 	.uleb128 0x55	;# (DW_AT_ranges)
     47 	.uleb128 0x6	;# (DW_FORM_data4)
     48 	.byte	0x0
     49 	.byte	0x0
     50 
     51 	.uleb128 0x2	;# (abbrev code)
     52 	.uleb128 0x2e	;# (TAG: DW_TAG_subprogram)
     53 	.byte	0x0	;# DW_children_no
     54 	.uleb128 0x3	;# (DW_AT_name)
     55 	.uleb128 0x8	;# (DW_FORM_string)
     56 	.uleb128 0x55	;# (DW_AT_ranges)
     57 	.uleb128 0x6	;# (DW_FORM_data4)
     58 	.byte	0x0
     59 	.byte	0x0
     60 
     61 	.byte	0x0	;# abbrevs terminator
     62