xref: /llvm-project/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_label.test (revision 8ad75c1037289b06bd1b95ff445797d380d93039)
1# RUN: yaml2obj %s -o %t
2# RUN: llvm-jitlink -noexec \
3# RUN: -slab-allocate 100Kb -slab-address 0xfff00000 -slab-page-size 4096 \
4# RUN: -show-graphs='.*' -noexec %t 2>&1 | FileCheck %s
5#
6# Check a label symbol with an offset is created as defined symbol.
7#
8# CHECK:   block 0xfff00000 size = 0x00000028, align = 16, alignment-offset = 0
9# CHECK-NEXT: symbols:
10# CHECK-NEXT:   0xfff00000 (block + 0x00000000): size: 0x00000013, linkage: strong, scope: default, live  -   main
11# CHECK-NEXT:   0xfff00013 (block + 0x00000013): size: 0x00000015, linkage: strong, scope: local, live  -   $LN4
12
13--- !COFF
14header:
15  Machine:         IMAGE_FILE_MACHINE_AMD64
16  Characteristics: [  ]
17sections:
18  - Name:            '.text$mn'
19    Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
20    Alignment:       16
21    SectionData:     4883EC28488D542438E8000000004883C428C34883EC28488D54243033C9E8000000004883C428C3
22  - Name:            '.sect'
23    Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
24    Alignment:       16
25    SectionData:     4883EC28488D542438E8000000004883C428C34883EC28488D54243033C9E8000000004883C428C3
26    Relocations:
27      - VirtualAddress:  10
28        SymbolTableIndex: 2
29        Type:            IMAGE_REL_AMD64_REL32
30symbols:
31  - Name:            '.text$mn'
32    Value:           0
33    SectionNumber:   1
34    SimpleType:      IMAGE_SYM_TYPE_NULL
35    ComplexType:     IMAGE_SYM_DTYPE_NULL
36    StorageClass:    IMAGE_SYM_CLASS_STATIC
37    SectionDefinition:
38      Length:          53
39      NumberOfRelocations: 1
40      NumberOfLinenumbers: 0
41      CheckSum:        973622814
42      Number:          0
43  - Name:            '$LN4'
44    Value:           19
45    SectionNumber:   1
46    SimpleType:      IMAGE_SYM_TYPE_NULL
47    ComplexType:     IMAGE_SYM_DTYPE_NULL
48    StorageClass:    IMAGE_SYM_CLASS_LABEL
49  - Name:            main
50    Value:           0
51    SectionNumber:   1
52    SimpleType:      IMAGE_SYM_TYPE_NULL
53    ComplexType:     IMAGE_SYM_DTYPE_FUNCTION
54    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
55  - Name:            func
56    Value:           0
57    SectionNumber:   2
58    SimpleType:      IMAGE_SYM_TYPE_NULL
59    ComplexType:     IMAGE_SYM_DTYPE_FUNCTION
60    StorageClass:    IMAGE_SYM_CLASS_EXTERNAL
61...
62