File: debug-macro-gnu.s

package info (click to toggle)
llvm-toolchain-14 1%3A14.0.6-12
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 1,496,180 kB
  • sloc: cpp: 5,593,972; ansic: 986,872; asm: 585,869; python: 184,223; objc: 72,530; lisp: 31,119; f90: 27,793; javascript: 9,780; pascal: 9,762; sh: 9,482; perl: 7,468; ml: 5,432; awk: 3,523; makefile: 2,538; xml: 953; cs: 573; fortran: 567
file content (59 lines) | stat: -rw-r--r-- 2,615 bytes parent folder | download | duplicates (19)
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
## This test checks that llvm-dwarfdump can dump a .debug_macro section
## with the GNU extension format.

# RUN: llvm-mc -triple x86_64-unknown-linux -filetype=obj %s -o -| \
# RUN:   llvm-dwarfdump -debug-macro - | FileCheck -strict-whitespace -match-full-lines %s

#      CHECK:.debug_macro contents:
# CHECK-NEXT:0x00000000:
# CHECK-NEXT:macro header: version = 0x0004, flags = 0x02, format = DWARF32, debug_line_offset = 0x00000000
# CHECK-NEXT:DW_MACRO_GNU_start_file - lineno: 0 filenum: 0
# CHECK-NEXT:  DW_MACRO_GNU_start_file - lineno: 1 filenum: 6
# CHECK-NEXT:    DW_MACRO_GNU_define_indirect - lineno: 1 macro: FOO 5
# CHECK-NEXT:  DW_MACRO_GNU_end_file
# CHECK-NEXT:  DW_MACRO_GNU_undef_indirect - lineno: 8 macro: WORLD1
# CHECK-NEXT:  DW_MACRO_GNU_transparent_include - import offset: 0x[[OFFSET:[0-9]+]]
# CHECK-NEXT:DW_MACRO_GNU_end_file

#      CHECK:0x[[OFFSET]]:
# CHECK-NEXT:macro header: version = 0x0004, flags = 0x00, format = DWARF32
# CHECK-NEXT:DW_MACRO_GNU_define_indirect - lineno: 0 macro: WORLD 2

	.section	.debug_macro,"",@progbits
.Lcu_macro_begin0:
	.short	4                      # Macro information version
	.byte	2                       # Flags: 32 bit, debug_line_offset present
	.long	0                       # debug_line_offset
	.byte	3                       # DW_MACRO_GNU_start_file
	.byte	0                       # Line Number
	.byte	0                       # File Number
	.byte	3                       # DW_MACRO_GNU_start_file
	.byte	1                       # Line Number
	.byte	6                       # File Number
	.byte	5                       # DW_MACRO_GNU_define_indirect
	.byte	1                       # Line Number
	.long	.Linfo_string0          # Macro String
	.byte	4                       # DW_MACRO_GNU_end_file
	.byte	6                       # DW_MACRO_GNU_undef_indirect
	.byte	8                       # Line Number
	.long	.Linfo_string1          # Macro String
	.byte	7                       # DW_MACRO_GNU_transparent_include
	.long	.Lmacro1                # Macro Unit Offset
	.byte	4                       # DW_MACRO_GNU_end_file
	.byte	0                       # End Of Macro List Mark

.Lmacro1:
	.short	4                      # Macro information version
	.byte	0                       # Flags: 32 bit
	.byte	5                       # DW_MACRO_GNU_define_indirect
	.byte	0                       # Line Number
	.long	.Linfo_string2          # Macro String
	.byte	0                       # End Of Macro List Mark

	.section	.debug_str,"MS",@progbits,1
.Linfo_string0:
	.asciz	"FOO 5"
.Linfo_string1:
	.asciz	"WORLD1"
.Linfo_string2:
	.asciz	"WORLD 2"