Alexey Lapshin f1fdfe6888
[dsymutil][llvm-dwarfutil] Rename command line options to avoid using vendor names. (#78135)
This patch renames values of dsymutil/llvm-dwarfutil options:

--linker apple -> --linker classic
--linker llvm -> --linker parallel

The purpose to rename options is to avoid using vendor names and to
match with library names. It should be safe to rename options at current
stage as they are not seemed widely used(we may not preserve backward
compatibility).
2024-01-18 12:55:04 +03:00

142 lines
4.6 KiB
Plaintext

## Test that DWARFv5 DW_FORM_line_strp and corresponding .debug_line_str
## table are correctly recognized and copied into the result.
# RUN: yaml2obj %s -o %t.o
# RUN: llvm-dwarfutil %t.o %t1
# RUN: llvm-dwarfdump -verify %t1 | FileCheck %s --check-prefix VERIFY-CHECK
# RUN: llvm-dwarfdump -a --verbose %t1 | FileCheck %s
# RUN: llvm-dwarfutil --no-garbage-collection %t.o %t1
# RUN: llvm-dwarfdump -verify %t1 | FileCheck %s --check-prefix VERIFY-CHECK
# RUN: llvm-dwarfdump -a --verbose %t1 | FileCheck %s
# RUN: llvm-dwarfutil --no-garbage-collection --build-accelerator=DWARF %t.o %t1
# RUN: llvm-dwarfdump -verify %t1 | FileCheck %s --check-prefix VERIFY-CHECK
# RUN: llvm-dwarfdump -a --verbose %t1 | FileCheck %s
# RUN: llvm-dwarfutil --linker parallel %t.o %t1
# RUN: llvm-dwarfdump -verify %t1 | FileCheck %s --check-prefix VERIFY-CHECK
# RUN: llvm-dwarfdump -a --verbose %t1 | FileCheck %s
# RUN: llvm-dwarfutil --linker parallel --no-garbage-collection %t.o %t1
# RUN: llvm-dwarfdump -verify %t1 | FileCheck %s --check-prefix VERIFY-CHECK
# RUN: llvm-dwarfdump -a --verbose %t1 | FileCheck %s
# RUN: llvm-dwarfutil --linker parallel --no-garbage-collection --build-accelerator=DWARF %t.o %t1
# RUN: llvm-dwarfdump -verify %t1 | FileCheck %s --check-prefix VERIFY-CHECK
# RUN: llvm-dwarfdump -a --verbose %t1 | FileCheck %s
#VERIFY-CHECK: No errors.
#CHECK: .debug_info
#CHECK: DW_TAG_compile_unit
#CHECK: DW_TAG_subprogram
#CHECK: DW_AT_name [DW_FORM_line_strp] ( .debug_line_str[0x00000000] = "foo1")
#CHECK: .debug_line
#CHECK: include_directories[ 0] = .debug_line_str[0x00000000] = "foo1"
#CHECK: include_directories[ 1] = .debug_line_str[0x00000000] = "foo1"
#CHECK: file_names[ 0]:
#CHECK: name: .debug_line_str[0x00000000] = "foo1"
#CHECK: file_names[ 1]:
#CHECK: name: .debug_line_str[0x00000000] = "foo1"
#CHECK: .debug_line_str
#CHECK: "foo1"
--- !ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_REL
Machine: EM_X86_64
Sections:
- Name: .text
Type: SHT_PROGBITS
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
Address: 0x1130
Size: 0x60
- Name: .debug_line_str
Type: SHT_PROGBITS
Flags: [ ]
Content: "666f6f3100"
- Name: .debug_line
Type: SHT_PROGBITS
Flags: [ ]
Content: "2a00000005000801220000000102030405050102030401011f02000000000000000001011f020000000000000000"
DWARF:
debug_abbrev:
- Table:
- Tag: DW_TAG_compile_unit
Children: DW_CHILDREN_yes
Attributes:
- Attribute: DW_AT_producer
Form: DW_FORM_string
- Attribute: DW_AT_language
Form: DW_FORM_data2
- Attribute: DW_AT_name
Form: DW_FORM_string
- Attribute: DW_AT_low_pc
Form: DW_FORM_addrx
- Attribute: DW_AT_high_pc
Form: DW_FORM_data8
- Attribute: DW_AT_addr_base
Form: DW_FORM_sec_offset
- Attribute: DW_AT_stmt_list
Form: DW_FORM_sec_offset
- Tag: DW_TAG_subprogram
Children: DW_CHILDREN_yes
Attributes:
- Attribute: DW_AT_name
Form: DW_FORM_line_strp
- Attribute: DW_AT_low_pc
Form: DW_FORM_addrx
- Attribute: DW_AT_high_pc
Form: DW_FORM_data8
- Attribute: DW_AT_type
Form: DW_FORM_ref4
- Tag: DW_TAG_base_type
Children: DW_CHILDREN_no
Attributes:
- Attribute: DW_AT_name
Form: DW_FORM_string
- Tag: DW_TAG_variable
Children: DW_CHILDREN_no
Attributes:
- Attribute: DW_AT_name
Form: DW_FORM_string
- Attribute: DW_AT_const_value
Form: DW_FORM_implicit_const
Value: 33
- Attribute: DW_AT_type
Form: DW_FORM_ref4
debug_info:
- Version: 5
UnitType: DW_UT_compile
Entries:
- AbbrCode: 1
Values:
- CStr: by_hand
- Value: 0x04
- CStr: CU1
- Value: 0x0
- Value: 0x10
- Value: 0x8
- Value: 0x0
- AbbrCode: 2
Values:
- Value: 0x0
- Value: 0x0
- Value: 0x10
- Value: 0x3f
- AbbrCode: 0
- AbbrCode: 3
Values:
- CStr: int
- AbbrCode: 0
debug_addr:
- Version: 5
AddressSize: 0x08
Entries:
- Address: 0x1130
...