1# RUN: yaml2obj %s -o %t 2# RUN: yaml2obj %s -o %t.debug 3# RUN: mkdir -p %t.dir 4# RUN: yaml2obj %s -o %t.dir/UPPER_CASE 5# RUN: yaml2obj %s -o %t.dir/UPPER_CASE.debug 6 7## Default ABI is msvc: 8# RUN: %lldb -O "settings set plugin.object-file.pe-coff.abi msvc" \ 9# RUN: -f %t -o "image list --triple --basename" -o exit | \ 10# RUN: FileCheck -DABI=msvc -DFILENAME=%basename_t.tmp %s 11 12## Default ABI is gnu: 13# RUN: %lldb -O "settings set plugin.object-file.pe-coff.abi gnu" \ 14# RUN: -f %t -o "image list --triple --basename" -o exit | \ 15# RUN: FileCheck -DABI=gnu -DFILENAME=%basename_t.tmp %s 16 17## Default ABI is msvc, module override is gnu: 18# RUN: %lldb -O "settings set plugin.object-file.pe-coff.abi msvc" \ 19# RUN: -O "settings append plugin.object-file.pe-coff.module-abi %basename_t.tmp=gnu" \ 20# RUN: -f %t -o "image list --triple --basename" -o exit | \ 21# RUN: FileCheck -DABI=gnu -DFILENAME=%basename_t.tmp %s 22 23## Default ABI is gnu, module override is msvc: 24# RUN: %lldb -O "settings set plugin.object-file.pe-coff.abi gnu" \ 25# RUN: -O "settings append plugin.object-file.pe-coff.module-abi %basename_t.tmp=msvc" \ 26# RUN: -f %t -o "image list --triple --basename" -o exit | \ 27# RUN: FileCheck -DABI=msvc -DFILENAME=%basename_t.tmp %s 28 29## Default ABI is msvc, module override is gnu (with .debug suffix): 30# RUN: %lldb -O "settings set plugin.object-file.pe-coff.abi msvc" \ 31# RUN: -O "settings append plugin.object-file.pe-coff.module-abi %basename_t.tmp=gnu" \ 32# RUN: -f %t.debug -o "image list --triple --basename" -o exit | \ 33# RUN: FileCheck -DABI=gnu -DFILENAME=%basename_t.tmp.debug %s 34 35## Default ABI is gnu, module override is msvc (with .debug suffix): 36# RUN: %lldb -O "settings set plugin.object-file.pe-coff.abi gnu" \ 37# RUN: -O "settings append plugin.object-file.pe-coff.module-abi %basename_t.tmp=msvc" \ 38# RUN: -f %t.debug -o "image list --triple --basename" -o exit | \ 39# RUN: FileCheck -DABI=msvc -DFILENAME=%basename_t.tmp.debug %s 40 41## Check that case-sensitive match is chosen before lower-case: 42# RUN: %lldb -O "settings set plugin.object-file.pe-coff.abi msvc" \ 43# RUN: -O "settings append plugin.object-file.pe-coff.module-abi upper_case=msvc" \ 44# RUN: -O "settings append plugin.object-file.pe-coff.module-abi UPPER_CASE=gnu" \ 45# RUN: -f %t.dir/UPPER_CASE -o "image list --triple --basename" -o exit | \ 46# RUN: FileCheck -DABI=gnu -DFILENAME=UPPER_CASE %s 47 48## Check that lower-case match with .debug suffix is chosen before case-sensitive match without .debug suffix: 49# RUN: %lldb -O "settings set plugin.object-file.pe-coff.abi msvc" \ 50# RUN: -O "settings append plugin.object-file.pe-coff.module-abi UPPER_CASE=msvc" \ 51# RUN: -O "settings append plugin.object-file.pe-coff.module-abi upper_case.debug=gnu" \ 52# RUN: -f %t.dir/UPPER_CASE.debug -o "image list --triple --basename" -o exit | \ 53# RUN: FileCheck -DABI=gnu -DFILENAME=UPPER_CASE.debug %s 54 55## Check that case-sensitive match without .debug suffix is chosen before lower-case match without .debug suffix: 56# RUN: %lldb -O "settings set plugin.object-file.pe-coff.abi msvc" \ 57# RUN: -O "settings append plugin.object-file.pe-coff.module-abi upper_case.debug=msvc" \ 58# RUN: -O "settings append plugin.object-file.pe-coff.module-abi UPPER_CASE.debug=gnu" \ 59# RUN: -f %t.dir/UPPER_CASE.debug -o "image list --triple --basename" -o exit | \ 60# RUN: FileCheck -DABI=gnu -DFILENAME=UPPER_CASE.debug %s 61 62## Check that lower-case match without .debug suffix works: 63# RUN: %lldb -O "settings set plugin.object-file.pe-coff.abi msvc" \ 64# RUN: -O "settings append plugin.object-file.pe-coff.module-abi upper_case.debug=gnu" \ 65# RUN: -f %t.dir/UPPER_CASE.debug -o "image list --triple --basename" -o exit | \ 66# RUN: FileCheck -DABI=gnu -DFILENAME=UPPER_CASE.debug %s 67 68# CHECK-LABEL: image list --triple --basename 69# CHECK-NEXT: x86_64-pc-windows-[[ABI]] [[FILENAME]] 70 71--- !COFF 72OptionalHeader: 73 AddressOfEntryPoint: 5152 74 ImageBase: 5368709120 75 SectionAlignment: 4096 76 FileAlignment: 512 77 MajorOperatingSystemVersion: 6 78 MinorOperatingSystemVersion: 0 79 MajorImageVersion: 0 80 MinorImageVersion: 0 81 MajorSubsystemVersion: 6 82 MinorSubsystemVersion: 0 83 Subsystem: IMAGE_SUBSYSTEM_WINDOWS_CUI 84 DLLCharacteristics: [ IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA, IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE, IMAGE_DLL_CHARACTERISTICS_NX_COMPAT, IMAGE_DLL_CHARACTERISTICS_TERMINAL_SERVER_AWARE ] 85 SizeOfStackReserve: 1048576 86 SizeOfStackCommit: 4096 87 SizeOfHeapReserve: 1048576 88 SizeOfHeapCommit: 4096 89header: 90 Machine: IMAGE_FILE_MACHINE_AMD64 91 Characteristics: [ IMAGE_FILE_EXECUTABLE_IMAGE, IMAGE_FILE_LARGE_ADDRESS_AWARE ] 92sections: 93 - Name: .text 94 Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ] 95 VirtualAddress: 4096 96 VirtualSize: 64 97 SectionData: DEADBEEFBAADF00D 98 - Name: .data 99 Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ] 100 VirtualAddress: 8192 101 VirtualSize: 64 102 SectionData: DEADBEEFBAADF00D 103symbols: [] 104... 105