3 # RUN: yaml2obj %s -o %t.obj
4 # RUN: lld-link /out:%t.dll /dll %t.obj /export:exportfn1 /export:exportfn2 /implib:%t.lib
5 # RUN: llvm-objdump -p %t.dll | FileCheck %s
6 # RUN: llvm-objdump -r %t.lib | FileCheck %s --check-prefix=RELOCS
9 # CHECK: DLL name: export-arm64.yaml.tmp.dll
10 # CHECK: Ordinal RVA Name
11 # CHECK-NEXT: 1 0x1008 exportfn1
12 # CHECK-NEXT: 2 0x1010 exportfn2
13 # CHECK-NEXT: 3 0x1018 exportfn3
15 # RELOCS: IMAGE_REL_ARM64_ADDR32NB .idata$6
16 # RELOCS: IMAGE_REL_ARM64_ADDR32NB .idata$4
17 # RELOCS: IMAGE_REL_ARM64_ADDR32NB .idata$5
21 Machine: IMAGE_FILE_MACHINE_ARM64
25 Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_PURGEABLE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
27 SectionData: e0031f2ac0035fd6e0031f2ac0035fd6e0031f2ac0035fd6e0031f2ac0035fd6
29 Characteristics: [ IMAGE_SCN_LNK_INFO, IMAGE_SCN_LNK_REMOVE ]
31 SectionData: 2f6578706f72743a6578706f7274666e3300 # /export:exportfn3
36 SimpleType: IMAGE_SYM_TYPE_NULL
37 ComplexType: IMAGE_SYM_DTYPE_NULL
38 StorageClass: IMAGE_SYM_CLASS_STATIC
41 NumberOfRelocations: 0
42 NumberOfLinenumbers: 0
45 - Name: _DllMainCRTStartup
48 SimpleType: IMAGE_SYM_TYPE_NULL
49 ComplexType: IMAGE_SYM_DTYPE_FUNCTION
50 StorageClass: IMAGE_SYM_CLASS_EXTERNAL
54 SimpleType: IMAGE_SYM_TYPE_NULL
55 ComplexType: IMAGE_SYM_DTYPE_FUNCTION
56 StorageClass: IMAGE_SYM_CLASS_EXTERNAL
60 SimpleType: IMAGE_SYM_TYPE_NULL
61 ComplexType: IMAGE_SYM_DTYPE_FUNCTION
62 StorageClass: IMAGE_SYM_CLASS_EXTERNAL
66 SimpleType: IMAGE_SYM_TYPE_NULL
67 ComplexType: IMAGE_SYM_DTYPE_FUNCTION
68 StorageClass: IMAGE_SYM_CLASS_EXTERNAL