110 lines · yaml
1# RUN: yaml2obj %s -o %t2# RUN: lldb-test symbols %t | FileCheck %s3 4# Checks that the symtab contains both symbols from the export table and the5# COFF symbol table.6 7# CHECK: UserID DSX Type File Address/Value {{.*}} Size Flags Name8# CHECK-NEXT: ------9# CHECK-NEXT: 1 X Code 0x0000000180001020 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}} exportFnAlias10# CHECK-NEXT: 2 X Code 0x0000000180001010 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}} exportFunc11# CHECK-NEXT: 3 X Data 0x0000000180003000 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}} exportInt12# CHECK-NEXT: 4 X Data 0x0000000180003004 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}} exportIntAlias13# CHECK-NEXT: 4294967295 Code 0x0000000180001000 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}} entry14# CHECK-NEXT: 4294967295 X Additional 0x0000000180001010 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}} exportFunc15# CHECK-NEXT: 4294967295 Code 0x0000000180001020 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}} aliasFunc16# CHECK-NEXT: 4294967295 X Additional 0x0000000180003000 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}} exportInt17# CHECK-NEXT: 4294967295 Data 0x0000000180003004 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}} aliasInt18# CHECK-NEXT: 4294967295 Data 0x0000000180003008 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}} internalInt19# CHECK-EMPTY:20 21# Test file generated with:22# clang -O2 --target=x86_64-windows-msvc test.c -nostdlib -c -o test.obj23# lld-link -debug:symtab -dll -out:test.dll -entry:entry -export:exportFnAlias=aliasFunc -export:exportIntAlias=aliasInt test.obj24# test.c:25# __declspec(dllexport) int exportInt;26# int aliasInt;27# int internalInt;28# void entry(void) {}29# __declspec(dllexport) void exportFunc(void) {}30# void aliasFunc(void) {}31 32--- !COFF33OptionalHeader:34 AddressOfEntryPoint: 409635 ImageBase: 644245094436 SectionAlignment: 409637 FileAlignment: 51238 MajorOperatingSystemVersion: 639 MinorOperatingSystemVersion: 040 MajorImageVersion: 041 MinorImageVersion: 042 MajorSubsystemVersion: 643 MinorSubsystemVersion: 044 Subsystem: IMAGE_SUBSYSTEM_WINDOWS_GUI45 DLLCharacteristics: [ IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA, IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE, IMAGE_DLL_CHARACTERISTICS_NX_COMPAT ]46 SizeOfStackReserve: 104857647 SizeOfStackCommit: 409648 SizeOfHeapReserve: 104857649 SizeOfHeapCommit: 409650 ExportTable:51 RelativeVirtualAddress: 819252 Size: 15653header:54 Machine: IMAGE_FILE_MACHINE_AMD6455 Characteristics: [ IMAGE_FILE_EXECUTABLE_IMAGE, IMAGE_FILE_LARGE_ADDRESS_AWARE, IMAGE_FILE_DLL ]56sections:57 - Name: .text58 Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]59 VirtualAddress: 409660 VirtualSize: 3361 SectionData: C36666666666662E0F1F840000000000C36666666666662E0F1F840000000000C362 - Name: .rdata63 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]64 VirtualAddress: 819265 VirtualSize: 15666 SectionData: 0000000000000000000000002820000001000000040000000400000042200000522000006220000073796D626F6C732D6578706F7274732E632E746D702E646C6C00201000001010000000300000043000006A20000078200000832000008D20000000000100020003006578706F7274466E416C696173006578706F727446756E63006578706F7274496E74006578706F7274496E74416C6961730067 - Name: .data68 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]69 VirtualAddress: 1228870 VirtualSize: 1271 SectionData: ''72symbols:73 - Name: entry74 Value: 075 SectionNumber: 176 SimpleType: IMAGE_SYM_TYPE_NULL77 ComplexType: IMAGE_SYM_DTYPE_FUNCTION78 StorageClass: IMAGE_SYM_CLASS_EXTERNAL79 - Name: exportFunc80 Value: 1681 SectionNumber: 182 SimpleType: IMAGE_SYM_TYPE_NULL83 ComplexType: IMAGE_SYM_DTYPE_FUNCTION84 StorageClass: IMAGE_SYM_CLASS_EXTERNAL85 - Name: aliasFunc86 Value: 3287 SectionNumber: 188 SimpleType: IMAGE_SYM_TYPE_NULL89 ComplexType: IMAGE_SYM_DTYPE_FUNCTION90 StorageClass: IMAGE_SYM_CLASS_EXTERNAL91 - Name: exportInt92 Value: 093 SectionNumber: 394 SimpleType: IMAGE_SYM_TYPE_NULL95 ComplexType: IMAGE_SYM_DTYPE_NULL96 StorageClass: IMAGE_SYM_CLASS_EXTERNAL97 - Name: aliasInt98 Value: 499 SectionNumber: 3100 SimpleType: IMAGE_SYM_TYPE_NULL101 ComplexType: IMAGE_SYM_DTYPE_NULL102 StorageClass: IMAGE_SYM_CLASS_EXTERNAL103 - Name: internalInt104 Value: 8105 SectionNumber: 3106 SimpleType: IMAGE_SYM_TYPE_NULL107 ComplexType: IMAGE_SYM_DTYPE_NULL108 StorageClass: IMAGE_SYM_CLASS_EXTERNAL109...110