[llvm-dwarfdump][test] Add tests for dumping the .debug_line_str section.

This patch adds tests for dumping the .debug_line_str section. The
dumper of the debug_line_str section is able to write nonprintable
strings as escaped chars while the dumper of the debug_str and
debug_str.dwo sections cannot. I will fix them and add tests for them
in a follow-up patch.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D86916
This commit is contained in:
Xing GUO 2020-09-01 20:21:57 +08:00
parent 9b7fcf0c26
commit 30fe55a858

View File

@ -0,0 +1,32 @@
## a) Test that llvm-dwarfdump is able to dump the debug_line_str section.
## "abc\0cba\0\0"
# RUN: yaml2obj -DCONTENT="616263006362610000" %s -o %t1.o
# RUN: llvm-dwarfdump --debug-line-str %t1.o | FileCheck %s --check-prefix=LINE-STR
# LINE-STR: .debug_line_str contents:
# LINE-STR-NEXT: 0x00000000: "abc"
# LINE-STR-NEXT: 0x00000004: "cba"
# LINE-STR-NEXT: 0x00000008: ""
# LINE-STR-EMPTY:
--- !ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_EXEC
Sections:
- Name: .debug_line_str
Type: SHT_PROGBITS
Content: [[CONTENT]]
## b) Test how we dump unprintable chars.
## ['\t', '\0', '\001', '\0', '\\', '0', '0', '1', '\0']
# RUN: yaml2obj -DCONTENT="090001005C30303100" %s -o %t2.o
# RUN: llvm-dwarfdump --debug-line-str %t2.o | FileCheck %s --check-prefix=ESCAPED
# ESCAPED: .debug_line_str contents:
# ESCAPED-NEXT: 0x00000000: "\t"
# ESCAPED-NEXT: 0x00000002: "\001"
# ESCAPED-NEXT: 0x00000004: "\\001"