xref: /llvm-project/llvm/test/tools/llvm-readobj/COFF/x86_64-unwind-preferred-symbol-gcc.yaml (revision 197084fcee268fa7fbbc96df0900785766f55a69)
1## Check that we print the external symbols "func1" and "func2", even though
2## the pdata relocations point at the '.text' symbol.
3
4# RUN: yaml2obj %s -o %t.obj
5# RUN: llvm-readobj --unwind %t.obj | FileCheck %s
6
7# CHECK: StartAddress: func1
8# CHECK: EndAddress: func1 +0x14
9# CHECK: UnwindInfoAddress: .xdata
10
11# CHECK: StartAddress: func2
12# CHECK: EndAddress: func2 +0x16
13# CHECK: UnwindInfoAddress: .xdata +0x8
14
15--- !COFF
16header:
17  Machine:         IMAGE_FILE_MACHINE_AMD64
18  Characteristics: [ IMAGE_FILE_LINE_NUMS_STRIPPED ]
19sections:
20  - Name:            .text
21    Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
22    Alignment:       16
23    SectionData:     4883EC38488D54242CE800000000904883C438C366662E0F1F840000000000904883EC3831C9488D54242CE800000000904883C438C3
24    Relocations:
25      - VirtualAddress:  10
26        SymbolName:      other
27        Type:            IMAGE_REL_AMD64_REL32
28      - VirtualAddress:  44
29        SymbolName:      other
30        Type:            IMAGE_REL_AMD64_REL32
31  - Name:            .xdata
32    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
33    Alignment:       4
34    SectionData:     '01040100046200000104010004620000'
35  - Name:            .pdata
36    Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
37    Alignment:       4
38    SectionData:     '000000001400000000000000200000003600000008000000'
39    Relocations:
40      - VirtualAddress:  0
41        SymbolName:      .text
42        Type:            IMAGE_REL_AMD64_ADDR32NB
43      - VirtualAddress:  4
44        SymbolName:      .text
45        Type:            IMAGE_REL_AMD64_ADDR32NB
46      - VirtualAddress:  8
47        SymbolName:      .xdata
48        Type:            IMAGE_REL_AMD64_ADDR32NB
49      - VirtualAddress:  12
50        SymbolName:      .text
51        Type:            IMAGE_REL_AMD64_ADDR32NB
52      - VirtualAddress:  16
53        SymbolName:      .text
54        Type:            IMAGE_REL_AMD64_ADDR32NB
55      - VirtualAddress:  20
56        SymbolName:      .xdata
57        Type:            IMAGE_REL_AMD64_ADDR32NB
58symbols:
59  - Name:            func1
60    Value:           0
61    SectionNumber:   1
62    SimpleType:      IMAGE_SYM_TYPE_NULL
63    ComplexType:     IMAGE_SYM_DTYPE_FUNCTION
64    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
65    FunctionDefinition:
66      TagIndex:        0
67      TotalSize:       0
68      PointerToLinenumber: 0
69      PointerToNextFunction: 0
70  - Name:            func2
71    Value:           32
72    SectionNumber:   1
73    SimpleType:      IMAGE_SYM_TYPE_NULL
74    ComplexType:     IMAGE_SYM_DTYPE_FUNCTION
75    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
76  - Name:            .text
77    Value:           0
78    SectionNumber:   1
79    SimpleType:      IMAGE_SYM_TYPE_NULL
80    ComplexType:     IMAGE_SYM_DTYPE_NULL
81    StorageClass:    IMAGE_SYM_CLASS_STATIC
82    SectionDefinition:
83      Length:          54
84      NumberOfRelocations: 2
85      NumberOfLinenumbers: 0
86      CheckSum:        0
87      Number:          0
88  - Name:            .xdata
89    Value:           0
90    SectionNumber:   2
91    SimpleType:      IMAGE_SYM_TYPE_NULL
92    ComplexType:     IMAGE_SYM_DTYPE_NULL
93    StorageClass:    IMAGE_SYM_CLASS_STATIC
94    SectionDefinition:
95      Length:          16
96      NumberOfRelocations: 0
97      NumberOfLinenumbers: 0
98      CheckSum:        0
99      Number:          0
100  - Name:            .pdata
101    Value:           0
102    SectionNumber:   3
103    SimpleType:      IMAGE_SYM_TYPE_NULL
104    ComplexType:     IMAGE_SYM_DTYPE_NULL
105    StorageClass:    IMAGE_SYM_CLASS_STATIC
106    SectionDefinition:
107      Length:          24
108      NumberOfRelocations: 6
109      NumberOfLinenumbers: 0
110      CheckSum:        0
111      Number:          0
112  - Name:            other
113    Value:           0
114    SectionNumber:   0
115    SimpleType:      IMAGE_SYM_TYPE_NULL
116    ComplexType:     IMAGE_SYM_DTYPE_FUNCTION
117    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
118...
119