Commit | Line | Data |
---|---|---|
01a8f077 JK |
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 | ||
cf2a6cfa | 11 | .section .debug_ranges,"",%progbits |
01a8f077 JK |
12 | range: |
13 | ||
14 | range_sub: | |
15 | .long sub, end | |
cf2a6cfa | 16 | .long 0, 0 ;# range terminator |
01a8f077 JK |
17 | |
18 | range_cu: | |
19 | .long start, end | |
cf2a6cfa | 20 | .long 0, 0 ;# range terminator |
01a8f077 | 21 | |
cf2a6cfa DJ |
22 | .section .debug_info,"",%progbits |
23 | .long debugE - debugS ;# Length of Compilation Unit Info | |
01a8f077 | 24 | debugS: |
cf2a6cfa DJ |
25 | .short 0x2 ;# DWARF version number |
26 | .long abbrev0 ;# Offset Into Abbrev. Section | |
27 | .byte 0x4 ;# Pointer Size (in bytes) | |
01a8f077 | 28 | |
cf2a6cfa DJ |
29 | .uleb128 0x1 ;# (DIE (0xb) DW_TAG_compile_unit) |
30 | .long range_cu - range ;# DW_AT_ranges | |
01a8f077 | 31 | |
cf2a6cfa DJ |
32 | .uleb128 0x2 ;# (DIE (0x6d) DW_TAG_subprogram) |
33 | .ascii "A\0" ;# DW_AT_name | |
34 | .long range_sub - range ;# DW_AT_ranges | |
01a8f077 JK |
35 | debugE: |
36 | ||
cf2a6cfa | 37 | .section .debug_abbrev,"",%progbits |
01a8f077 | 38 | abbrev0: |
cf2a6cfa DJ |
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) | |
01a8f077 JK |
44 | .byte 0x0 |
45 | .byte 0x0 | |
46 | ||
cf2a6cfa DJ |
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) | |
01a8f077 JK |
54 | .byte 0x0 |
55 | .byte 0x0 | |
56 | ||
cf2a6cfa | 57 | .byte 0x0 ;# abbrevs terminator |