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).
186 lines
5.4 KiB
Plaintext
186 lines
5.4 KiB
Plaintext
## This test checks that error is reported if opcode_operands_table_flag
|
|
## is used.
|
|
|
|
# RUN: yaml2obj %s -o %t.o
|
|
# RUN: llvm-dwarfutil %t.o %t1 2>&1 | FileCheck --check-prefix=ERR %s
|
|
# RUN: llvm-dwarfdump --verify %t1 | FileCheck --check-prefix=VERIFY %s
|
|
# RUN: llvm-dwarfdump -a %t1 | FileCheck %s
|
|
|
|
# RUN: llvm-dwarfutil --linker parallel %t.o %t1 2>&1 | FileCheck --check-prefix=ERR %s
|
|
# RUN: llvm-dwarfdump --verify %t1 | FileCheck --check-prefix=VERIFY %s
|
|
# RUN: llvm-dwarfdump -a %t1 | FileCheck %s
|
|
|
|
# ERR: error: opcode_operands_table is not supported
|
|
|
|
# VERIFY: No errors.
|
|
|
|
## Content: "05000403000200":
|
|
#
|
|
## .short 5 # Macro information version
|
|
## .byte 0 # Flags: 32 bit
|
|
## .byte 3 # DW_MACRO_start_file
|
|
## .byte 0 # Line Number
|
|
## .byte 2 # File Number
|
|
## .byte 0 # End Of Macro List Mark
|
|
|
|
#CHECK: .debug_info contents:
|
|
#CHECK: DW_TAG_compile_unit
|
|
#CHECK: DW_AT_name ("CU1")
|
|
#CHECK-NOT: DW_AT_macros
|
|
#CHECK-NOT: .debug_macro contents:
|
|
|
|
--- !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: 0x1000
|
|
Size: 0x1b
|
|
- Name: .debug_macro
|
|
Type: SHT_PROGBITS
|
|
Flags: [ ]
|
|
Content: "05000403000200"
|
|
- Name: .debug_str_offsets
|
|
Type: SHT_PROGBITS
|
|
Flags: [ ]
|
|
Content: "080000000500000000000000"
|
|
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_addr
|
|
- Attribute: DW_AT_high_pc
|
|
Form: DW_FORM_data8
|
|
- Attribute: DW_AT_macros
|
|
Form: DW_FORM_sec_offset
|
|
- Attribute: DW_AT_str_offsets_base
|
|
Form: DW_FORM_sec_offset
|
|
- Tag: DW_TAG_class_type
|
|
Children: DW_CHILDREN_yes
|
|
Attributes:
|
|
- Attribute: DW_AT_name
|
|
Form: DW_FORM_string
|
|
- Tag: DW_TAG_member
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- Attribute: DW_AT_type
|
|
Form: DW_FORM_ref4
|
|
- Attribute: DW_AT_name
|
|
Form: DW_FORM_string
|
|
- Tag: DW_TAG_class_type
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- Attribute: DW_AT_name
|
|
Form: DW_FORM_string
|
|
- Attribute: DW_AT_declaration
|
|
Form: DW_FORM_flag_present
|
|
- Tag: DW_TAG_class_type
|
|
Children: DW_CHILDREN_yes
|
|
Attributes:
|
|
- Attribute: DW_AT_name
|
|
Form: DW_FORM_string
|
|
- Attribute: DW_AT_declaration
|
|
Form: DW_FORM_flag_present
|
|
- Tag: DW_TAG_template_type_parameter
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- 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_pointer_type
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- Attribute: DW_AT_type
|
|
Form: DW_FORM_ref4
|
|
- 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_data4
|
|
- Attribute: DW_AT_type
|
|
Form: DW_FORM_ref4
|
|
- Tag: DW_TAG_subprogram
|
|
Children: DW_CHILDREN_no
|
|
Attributes:
|
|
- Attribute: DW_AT_name
|
|
Form: DW_FORM_string
|
|
- Attribute: DW_AT_low_pc
|
|
Form: DW_FORM_addr
|
|
- Attribute: DW_AT_high_pc
|
|
Form: DW_FORM_data8
|
|
- 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: 0x1000
|
|
- Value: 0x1b
|
|
- Value: 0x0
|
|
- Value: 0x8
|
|
- AbbrCode: 2
|
|
Values:
|
|
- CStr: class1
|
|
- AbbrCode: 3
|
|
Values:
|
|
- Value: 0x00000056
|
|
- CStr: member1
|
|
- AbbrCode: 3
|
|
Values:
|
|
- Value: 0x0000005b
|
|
- CStr: member2
|
|
- AbbrCode: 0
|
|
- AbbrCode: 7
|
|
Values:
|
|
- CStr: int
|
|
- AbbrCode: 7
|
|
Values:
|
|
- CStr: char
|
|
- AbbrCode: 7
|
|
Values:
|
|
- CStr: float
|
|
- AbbrCode: 8
|
|
Values:
|
|
- Value: 0x00000033
|
|
- AbbrCode: 9
|
|
Values:
|
|
- CStr: var1
|
|
- Value: 0x00000000
|
|
- Value: 0x00000056
|
|
- AbbrCode: 10
|
|
Values:
|
|
- CStr: foo1
|
|
- Value: 0x1000
|
|
- Value: 0x10
|
|
- Value: 0x00000033
|
|
- AbbrCode: 0
|
|
- AbbrCode: 0
|
|
debug_str:
|
|
- 'aa'
|
|
...
|