2009-09-02 Tristan Gingold <gingold@adacore.com>
[binutils.git] / binutils / testsuite / binutils-all / testranges.s
blobb7fd7bbf2706e593b560add6e980bc047bc328f4
1 # Test .debug_info can reference .debug_ranges entries without ordering the
2 # offsets strictly as increasing.
4 .text
5 start:
6 .byte 1
7 sub:
8 .byte 2
9 end:
11 .section .debug_ranges,"",%progbits
12 range:
14 range_sub:
15 .long sub, end
16 .long 0, 0 ;# range terminator
18 range_cu:
19 .long start, end
20 .long 0, 0 ;# range terminator
22 .section .debug_info,"",%progbits
23 .long debugE - debugS ;# Length of Compilation Unit Info
24 debugS:
25 .short 0x2 ;# DWARF version number
26 .long abbrev0 ;# Offset Into Abbrev. Section
27 .byte 0x4 ;# Pointer Size (in bytes)
29 .uleb128 0x1 ;# (DIE (0xb) DW_TAG_compile_unit)
30 .long range_cu - range ;# DW_AT_ranges
32 .uleb128 0x2 ;# (DIE (0x6d) DW_TAG_subprogram)
33 .ascii "A\0" ;# DW_AT_name
34 .long range_sub - range ;# DW_AT_ranges
35 debugE:
37 .section .debug_abbrev,"",%progbits
38 abbrev0:
39 .uleb128 0x1 ;# (abbrev code)
40 .uleb128 0x11 ;# (TAG: DW_TAG_compile_unit)
41 .byte 0x0 ;# DW_children_no
42 .uleb128 0x55 ;# (DW_AT_ranges)
43 .uleb128 0x6 ;# (DW_FORM_data4)
44 .byte 0x0
45 .byte 0x0
47 .uleb128 0x2 ;# (abbrev code)
48 .uleb128 0x2e ;# (TAG: DW_TAG_subprogram)
49 .byte 0x0 ;# DW_children_no
50 .uleb128 0x3 ;# (DW_AT_name)
51 .uleb128 0x8 ;# (DW_FORM_string)
52 .uleb128 0x55 ;# (DW_AT_ranges)
53 .uleb128 0x6 ;# (DW_FORM_data4)
54 .byte 0x0
55 .byte 0x0
57 .byte 0x0 ;# abbrevs terminator