brintos

brintos / llvm-project-archived public Read only

0
0
Text · 5.4 KiB · 6ed6453 Raw
171 lines · plain
1## This test checks that debug info related to deleted code (marked with2## default tombstone value) is removed.3 4# RUN: yaml2obj %s -o %t.o5 6# RUN: llvm-dwarfutil --no-odr %t.o - | llvm-dwarfdump -a - | FileCheck %s --check-prefixes=CHECK,CHECK-GC7 8# RUN: llvm-dwarfutil --no-odr --linker classic %t.o - | llvm-dwarfdump -a - | FileCheck %s --check-prefixes=CHECK,CHECK-GC9 10# RUN: llvm-dwarfutil --no-odr --linker parallel %t.o - | llvm-dwarfdump -a - | FileCheck %s --check-prefixes=CHECK,CHECK-GC11 12# RUN: llvm-dwarfutil --no-odr --garbage-collection %t.o - | llvm-dwarfdump -a - | FileCheck %s --check-prefixes=CHECK,CHECK-GC13 14# RUN: llvm-dwarfutil --no-odr --no-garbage-collection --garbage-collection %t.o - | llvm-dwarfdump -a - | FileCheck %s --check-prefixes=CHECK,CHECK-GC15 16# RUN: llvm-dwarfutil --no-odr --garbage-collection --no-garbage-collection %t.o - | llvm-dwarfdump -a - | FileCheck %s --check-prefixes=CHECK,CHECK-NOGC17 18# RUN: llvm-dwarfutil --no-odr --linker parallel --garbage-collection --no-garbage-collection %t.o - | llvm-dwarfdump -a - | FileCheck %s --check-prefixes=CHECK,CHECK-NOGC19 20# RUN: llvm-dwarfutil --no-odr %t.o --tombstone=universal - | llvm-dwarfdump -a - | FileCheck %s --check-prefixes=CHECK,CHECK-GC21 22# RUN: llvm-dwarfutil --no-odr --linker parallel %t.o --tombstone=universal - | llvm-dwarfdump -a - | FileCheck %s --check-prefixes=CHECK,CHECK-GC23 24# CHECK: DW_TAG_compile_unit25# CHECK: DW_AT_name{{.*}}"CU1"26# CHECK: DW_TAG_class_type27# CHECK: DW_AT_name{{.*}}"class1"28# CHECK-GC-NOT: DW_TAG_class_type29# CHECK-GC-NOT: "class2"30# CHECK-GC-NOT: "class3"31# CHECK-NOGC: DW_TAG_class_type32# CHECK-NOGC: "class2"33# CHECK-NOGC: "class3"34# CHECK: DW_TAG_subprogram35# CHECK: DW_AT_name{{.*}}"foo1"36# CHECK: DW_AT_low_pc{{.*}}0x000000000000100037# CHECK: DW_AT_high_pc{{.*}}0x000000000000101038# CHECK: DW_AT_type{{.*}}"class1"39# CHECK-GC-NOT: DW_TAG_subprogram40# CHECK-GC-NOT: "foo2"41# CHECK-NOGC: DW_TAG_subprogram42# CHECK-NOGC: "foo2"43 44 45--- !ELF46FileHeader:47  Class:    ELFCLASS6448  Data:     ELFDATA2LSB49  Type:     ET_REL50  Machine:  EM_X86_6451Sections:52  - Name:            .text53    Type:            SHT_PROGBITS54    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]55    Address:         0x100056    Size:            0x1b57DWARF:58  debug_abbrev:59    - Table:60      - Tag:      DW_TAG_compile_unit61        Children: DW_CHILDREN_yes62        Attributes:63          - Attribute: DW_AT_producer64            Form:      DW_FORM_string65          - Attribute: DW_AT_language66            Form:      DW_FORM_data267          - Attribute: DW_AT_name68            Form:      DW_FORM_string69          - Attribute: DW_AT_low_pc70            Form:      DW_FORM_addr71          - Attribute: DW_AT_high_pc72            Form:      DW_FORM_data873      - Tag:      DW_TAG_subprogram74        Children: DW_CHILDREN_no75        Attributes:76          - Attribute: DW_AT_name77            Form:      DW_FORM_string78          - Attribute: DW_AT_low_pc79            Form:      DW_FORM_addr80          - Attribute: DW_AT_high_pc81            Form:      DW_FORM_data882          - Attribute: DW_AT_type83            Form:      DW_FORM_ref484      - Tag:      DW_TAG_class_type85        Children: DW_CHILDREN_yes86        Attributes:87          - Attribute: DW_AT_name88            Form:      DW_FORM_string89      - Tag:      DW_TAG_member90        Children: DW_CHILDREN_no91        Attributes:92          - Attribute: DW_AT_type93            Form:      DW_FORM_ref494          - Attribute: DW_AT_name95            Form:      DW_FORM_string96      - Tag:      DW_TAG_class_type97        Children: DW_CHILDREN_no98        Attributes:99          - Attribute: DW_AT_name100            Form:      DW_FORM_string101          - Attribute: DW_AT_declaration102            Form:      DW_FORM_flag_present103      - Tag:      DW_TAG_class_type104        Children: DW_CHILDREN_yes105        Attributes:106          - Attribute: DW_AT_name107            Form:      DW_FORM_string108          - Attribute: DW_AT_declaration109            Form:      DW_FORM_flag_present110      - Tag:      DW_TAG_template_type_parameter111        Children: DW_CHILDREN_no112        Attributes:113          - Attribute: DW_AT_type114            Form:      DW_FORM_ref4115      - Tag:      DW_TAG_base_type116        Children: DW_CHILDREN_no117        Attributes:118          - Attribute: DW_AT_name119            Form:      DW_FORM_string120  debug_info:121    - Version: 4122      Entries:123        - AbbrCode: 1124          Values:125            - CStr: by_hand126            - Value:  0x04127            - CStr: CU1128            - Value:  0x1000129            - Value:  0x1b130        - AbbrCode: 3131          Values:132            - CStr: class1133        - AbbrCode: 4134          Values:135            - Value:  0x0000006c136            - CStr: member1137        - AbbrCode: 0138        - AbbrCode: 3139          Values:140            - CStr: class2141        - AbbrCode: 4142          Values:143            - Value:  0x0000006c144            - CStr: member1145        - AbbrCode: 0146        - AbbrCode: 3147          Values:148            - CStr: class3149        - AbbrCode: 4150          Values:151            - Value:  0x0000006c152            - CStr: member1153        - AbbrCode: 0154        - AbbrCode: 8155          Values:156            - CStr: int157        - AbbrCode: 2158          Values:159            - CStr: foo1160            - Value:  0x1000161            - Value:  0x10162            - Value:  0x0000002a163        - AbbrCode: 2164          Values:165            - CStr: foo2166            - Value:  0x0167            - Value:  0x100168            - Value:  0x00000040169        - AbbrCode: 0170...171