X-Git-Url: https://oss.titaniummirror.com/gitweb?p=msp430-binutils.git;a=blobdiff_plain;f=binutils%2Ftestsuite%2Fbinutils-all%2Ftestranges.s;fp=binutils%2Ftestsuite%2Fbinutils-all%2Ftestranges.s;h=e1f9931b999f9f2506ffe99b51bfba40b9ebe548;hp=0000000000000000000000000000000000000000;hb=88750007d7869f178f0ba528f41efd3b74c424cf;hpb=6df9443a374e2b81278c61b8afc0a1eef7db280b diff --git a/binutils/testsuite/binutils-all/testranges.s b/binutils/testsuite/binutils-all/testranges.s new file mode 100644 index 0000000..e1f9931 --- /dev/null +++ b/binutils/testsuite/binutils-all/testranges.s @@ -0,0 +1,61 @@ +# Test .debug_info can reference .debug_ranges entries without ordering the +# offsets strictly as increasing. + + .text +start: + .byte 1 +sub: + .byte 2 +end: + + .section .debug_ranges,"",%progbits +range: + +range_sub: + .4byte sub, end + .4byte 0, 0 ;# range terminator + +range_cu: + .4byte start, end + .4byte 0, 0 ;# range terminator + + .section .debug_info,"",%progbits + .4byte debugE - debugS ;# Length of Compilation Unit Info +debugS: + .short 0x2 ;# DWARF version number + .4byte abbrev0 ;# Offset Into Abbrev. Section + .byte 0x4 ;# Pointer Size (in bytes) + + .uleb128 0x1 ;# (DIE (0xb) DW_TAG_compile_unit) + .4byte range_cu - range ;# DW_AT_ranges + + .uleb128 0x2 ;# (DIE (0x6d) DW_TAG_subprogram) + .ascii "A\0" ;# DW_AT_name + .4byte range_sub - range ;# DW_AT_ranges + + ;# minimal section alignment on alpha-* is 2, ensure no new invalid CU + ;# will be started. + .balign 2 +debugE: + + .section .debug_abbrev,"",%progbits +abbrev0: + .uleb128 0x1 ;# (abbrev code) + .uleb128 0x11 ;# (TAG: DW_TAG_compile_unit) + .byte 0x0 ;# DW_children_no + .uleb128 0x55 ;# (DW_AT_ranges) + .uleb128 0x6 ;# (DW_FORM_data4) + .byte 0x0 + .byte 0x0 + + .uleb128 0x2 ;# (abbrev code) + .uleb128 0x2e ;# (TAG: DW_TAG_subprogram) + .byte 0x0 ;# DW_children_no + .uleb128 0x3 ;# (DW_AT_name) + .uleb128 0x8 ;# (DW_FORM_string) + .uleb128 0x55 ;# (DW_AT_ranges) + .uleb128 0x6 ;# (DW_FORM_data4) + .byte 0x0 + .byte 0x0 + + .byte 0x0 ;# abbrevs terminator