Upload Tizen:Base source
[external/binutils.git] / binutils / testsuite / binutils-all / testranges-ia64.s
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         data4.ua        @secrel(sub), @secrel(end)
16         data4.ua        0, 0    /* range terminator  */
17
18 range_cu:
19         data4.ua        @secrel(start), @secrel(end)
20         data4.ua        0, 0    /* range terminator  */
21
22         .section        .debug_info,"",@progbits
23         data4.ua        debugE - debugS /* Length of Compilation Unit Info  */
24 debugS:
25         .short  0x2     /* DWARF version number  */
26         data4.ua        @secrel(abbrev0) /* Offset Into Abbrev. Section  */
27         .byte   0x4     /* Pointer Size (in bytes)  */
28
29         .uleb128 0x1    /* (DIE (0xb) DW_TAG_compile_unit)  */
30         data4.ua        range_cu - range        /* DW_AT_ranges  */
31
32         .uleb128 0x2    /* (DIE (0x6d) DW_TAG_subprogram)  */
33         .ascii "A\0"    /* DW_AT_name */
34         data4.ua        range_sub - range       /* DW_AT_ranges  */
35 debugE:
36
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
46
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
56
57         .byte   0x0     /* abbrevs terminator  */