summaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.dwarf2/dw4-sig-type-unused.S
blob: e5e799a140a508755038c2788c168671354ab459 (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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
/* Copyright 2011-2018 Free Software Foundation, Inc.

   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3 of the License, or
   (at your option) any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */

	.section	.debug_info
debug_start:
	.4byte	debug_end - 1f	/* Length of Compilation Unit Info */
1:
	.2byte	0x4	/* DWARF version number */
	.4byte	.Ldebug_abbrev0	/* Offset Into Abbrev. Section */
	.byte	0x4	/* Pointer Size (in bytes) */
	.uleb128 0x3	/* (DIE (0xb) DW_TAG_compile_unit) */
	.ascii "GNU C 4.4.3\0"	/* DW_AT_producer */
	.byte	0x0c	/* DW_AT_language = DW_LANG_C99 */
	.ascii "1.c\0"	/* DW_AT_name */
debug_end:

	.section	.debug_types
types_start:
	.macro	unit sig1 sig2 name
	.4byte	2f - 1f	/* Length of Compilation Unit Info */
1:
	.2byte	0x4	/* DWARF version number */
	.4byte	.Ldebug_abbrev0	/* Offset Into Abbrev. Section */
	.byte	0x4	/* Pointer Size (in bytes) */
	/* signature */
	.4byte	\sig1
	.4byte	\sig2
	.4byte	3f-types_start	/* offset into type DIE */
	.uleb128 0x1	/* DW_TAG_type_unit) */
	.byte	0x0c	/* DW_AT_language = DW_LANG_C99 */
3:
	.uleb128 0x2	/* DW_TAG_structure_type */
	.ascii	"\name"	/* DW_AT_name ... */
	.byte	0	/* ... DW_AT_name */
	.4byte	0	/* DW_AT_byte_size */
	.byte	0x0	/* end of children of CU */
2:
	.endm

	unit	0x01234567, 0x01234567, foo
	/* One duplicate.  */
	unit	0x01234567, 0x01234567, foo
	/* One different, but still unused.  */
	unit	0x89abcdef, 0x89abcdef, bar

	.section	.debug_abbrev
.Ldebug_abbrev0:
	.uleb128 0x1	/* (abbrev code) */
	.uleb128 0x41	/* (TAG: DW_TAG_type_unit) */
	.byte	0x1	/* DW_children_yes */
	.uleb128 0x13	/* (DW_AT_language) */
	.uleb128 0xb	/* (DW_FORM_data1) */
	.byte	0x0
	.byte	0x0
	.uleb128 0x2	/* (abbrev code) */
	.uleb128 0x13	/* (TAG: DW_TAG_structure_type) */
	.byte	0x0	/* DW_children_no */
	.uleb128 0x3	/* (DW_AT_name) */
	.uleb128 0x8	/* (DW_FORM_string) */
	.uleb128 0x0b	/* (DW_AT_byte_size) */
	.uleb128 0x6	/* (DW_FORM_data4) */
	.byte	0x0
	.byte	0x0
	.uleb128 0x3	/* (abbrev code) */
	.uleb128 0x11	/* (TAG: DW_TAG_compile_unit) */
	.byte	0x0	/* DW_children_no */
	.uleb128 0x25	/* (DW_AT_producer) */
	.uleb128 0x8	/* (DW_FORM_string) */
	.uleb128 0x13	/* (DW_AT_language) */
	.uleb128 0xb	/* (DW_FORM_data1) */
	.uleb128 0x3	/* (DW_AT_name) */
	.uleb128 0x8	/* (DW_FORM_string) */
	.byte	0x0
	.byte	0x0
	.byte	0x0