aboutsummaryrefslogtreecommitdiff
path: root/binutils/testsuite/binutils-all/testranges.s
blob: 1d02846b429a52db17c17617ec61bc260b724a45 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# 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:
	.long	sub, end
	.long	0, 0	# range terminator

range_cu:
	.long	start, end
	.long	0, 0	# range terminator

	.section	.debug_info,"",@progbits
	.long	debugE - debugS	# Length of Compilation Unit Info
debugS:
	.short	0x2	# DWARF version number
	.long	abbrev0	# Offset Into Abbrev. Section
	.byte	0x4	# Pointer Size (in bytes)

	.uleb128 0x1	# (DIE (0xb) DW_TAG_compile_unit)
	.long	range_cu - range	# DW_AT_ranges

	.uleb128 0x2	# (DIE (0x6d) DW_TAG_subprogram)
	.ascii "A\0"	# DW_AT_name
	.long	range_sub - range	# DW_AT_ranges
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