Skip to content

Commit 095ea50

Browse files
MaskRaytru
authored andcommitted
[MCDwarf][test] Improve debug-prefix-map.s
(cherry picked from commit d561907)
1 parent c439888 commit 095ea50

File tree

1 file changed

+40
-16
lines changed

1 file changed

+40
-16
lines changed

llvm/test/MC/ELF/debug-prefix-map.s

Lines changed: 40 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,49 @@
1-
// RUN: mkdir -p %t.foo
2-
// RUN: cp %s %t.foo/src.s
3-
// RUN: cd %t.foo
1+
# RUN: rm -rf %t.foo && mkdir %t.foo && cd %t.foo
2+
# RUN: cp %s %t.foo/src.s
43

5-
// RUN: llvm-mc -triple=x86_64-linux-unknown -g src.s -filetype=obj -o out.o
6-
// RUN: llvm-dwarfdump -v -debug-info out.o | FileCheck --check-prefix=NO_MAP %s
4+
# RUN: llvm-mc -triple=x86_64 -g -dwarf-version=4 src.s -filetype=obj -o nomap.4.o
5+
# RUN: llvm-dwarfdump -v -debug-info -debug-line nomap.4.o | FileCheck --check-prefix=NO_MAP_V4 %s
6+
# RUN: llvm-mc -triple=x86_64 -g -dwarf-version=5 src.s -filetype=obj -o nomap.5.o
7+
# RUN: llvm-dwarfdump -v -debug-info -debug-line nomap.5.o | FileCheck --check-prefix=NO_MAP_V5 %s
78

8-
// RUN: llvm-mc -triple=x86_64-linux-unknown -g src.s -filetype=obj -o out.o -fdebug-prefix-map=%t.foo=src_root
9-
// RUN: llvm-dwarfdump -v -debug-info out.o | FileCheck --check-prefix=MAP --implicit-check-not ".foo" %s
9+
# RUN: llvm-mc -triple=x86_64 -g -dwarf-version=4 src.s -filetype=obj -o map.4.o -fdebug-prefix-map=%t.foo=src_root
10+
# RUN: llvm-dwarfdump -v -debug-info -debug-line map.4.o | FileCheck --check-prefix=MAP_V4 %s
11+
# RUN: llvm-mc -triple=x86_64 -g -dwarf-version=5 src.s -filetype=obj -o map.5.o -fdebug-prefix-map=%t.foo=src_root
12+
# RUN: llvm-dwarfdump -v -debug-info -debug-line map.5.o | FileCheck --check-prefix=MAP_V5 %s
1013

11-
// RUN: llvm-mc -triple=x86_64-linux-unknown -g %t.foo/src.s -filetype=obj -o out.o -fdebug-prefix-map=%t.foo=/src_root
12-
// RUN: llvm-dwarfdump -v -debug-info out.o | FileCheck --check-prefix=MAP_ABS --implicit-check-not ".foo" %s
14+
# RUN: llvm-mc -triple=x86_64 -g -dwarf-version=4 %t.foo/src.s -filetype=obj -o mapabs.4.o -fdebug-prefix-map=%t.foo=/src_root
15+
# RUN: llvm-dwarfdump -v -debug-info -debug-line mapabs.4.o | FileCheck --check-prefix=MAPABS_V4 %s
16+
# RUN: llvm-mc -triple=x86_64 -g -dwarf-version=5 %t.foo/src.s -filetype=obj -o mapabs.5.o -fdebug-prefix-map=%t.foo=/src_root
17+
# RUN: llvm-dwarfdump -v -debug-info -debug-line mapabs.5.o | FileCheck --check-prefix=MAPABS_V5 %s
1318

1419
f:
1520
nop
1621

17-
// NO_MAP: DW_AT_comp_dir [DW_FORM_string] ("{{.*}}.foo")
22+
# NO_MAP_V4: DW_AT_comp_dir [DW_FORM_string] ("{{.*}}.foo")
23+
# NO_MAP_V4: file_names[ 1]:
24+
# NO_MAP_V4-NEXT: name: "src.s"
1825

19-
// MAP: DW_AT_name [DW_FORM_string] ("src.s")
20-
// MAP: DW_AT_comp_dir [DW_FORM_string] ("src_root")
21-
// MAP: DW_AT_decl_file [DW_FORM_data4] ("src_root{{(/|\\)+}}src.s")
26+
# NO_MAP_V5: DW_AT_comp_dir [DW_FORM_string] ("{{.*}}.foo")
27+
# NO_MAP_V5: include_directories[ 0] = .debug_line_str[0x00000000] = "{{.*}}.foo"
2228

23-
// MAP_ABS: DW_AT_name [DW_FORM_string] ("src.s")
24-
// MAP_ABS: DW_AT_comp_dir [DW_FORM_string] ("{{(/|\\)+}}src_root")
25-
// MAP_ABS: DW_AT_decl_file [DW_FORM_data4] ("{{(/|\\)+}}src_root{{(/|\\)+}}src.s")
29+
# MAP_V4: DW_AT_name [DW_FORM_string] ("src.s")
30+
# MAP_V4: DW_AT_comp_dir [DW_FORM_string] ("src_root")
31+
# MAP_V4: DW_AT_decl_file [DW_FORM_data4] ("src_root{{(/|\\)+}}src.s")
32+
# MAP_V4-NOT: .foo
33+
34+
## FIXME DW_AT_decl_file and include_directories are not mapped
35+
# MAP_V5: DW_AT_name [DW_FORM_string] ("src.s")
36+
# MAP_V5: DW_AT_comp_dir [DW_FORM_string] ("src_root")
37+
# MAP_V5: DW_AT_decl_file [DW_FORM_data4] ("{{.*}}.foo{{(/|\\)+}}src.s")
38+
# MAP_V5: include_directories[ 0] = .debug_line_str[0x00000000] = "{{.*}}.foo"
39+
40+
# MAPABS_V4: DW_AT_name [DW_FORM_string] ("src.s")
41+
# MAPABS_V4: DW_AT_comp_dir [DW_FORM_string] ("{{(/|\\)+}}src_root")
42+
# MAPABS_V4: DW_AT_decl_file [DW_FORM_data4] ("{{(/|\\)+}}src_root{{(/|\\)+}}src.s")
43+
# MAPABS_V4-NOT: .foo
44+
45+
## FIXME DW_AT_decl_file and include_directories are not mapped
46+
# MAPABS_V5: DW_AT_name [DW_FORM_string] ("src.s")
47+
# MAPABS_V5: DW_AT_comp_dir [DW_FORM_string] ("{{(/|\\)+}}src_root")
48+
# MAPABS_V5: DW_AT_decl_file [DW_FORM_data4] ("{{.*}}.foo{{(/|\\)+}}src.s")
49+
# MAPABS_V5: include_directories[ 0] = .debug_line_str[0x00000000] = "{{.*}}.foo"

0 commit comments

Comments
 (0)