| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,55 @@ | ||
| # This test produces a stripped version of the object file and adds a | ||
| # gnu-debuglink section to it linking to the unstripped version of the object | ||
| # file. The debug info shall be loaded from the gnu-debuglink reference. | ||
| # | ||
| # This test is added to check that Symbols::LocateExecutableSymbolFile (in | ||
| # LocateSymbolFile.cpp) can handle ObjectFilePECOFF::GetModuleSpecifications | ||
| # returning two different module specs for MachineX86 -- "i386-pc-windows" and | ||
| # "i686-pc-windows". | ||
|
|
||
| # RUN: yaml2obj %s -o %t | ||
| # RUN: llvm-objcopy --strip-all --add-gnu-debuglink=%t %t %t.stripped | ||
| # RUN: lldb-test object-file %t.stripped | FileCheck %s | ||
|
|
||
| # CHECK: Name: .debug_info | ||
| # CHECK-NEXT: Type: dwarf-info | ||
|
|
||
| --- !COFF | ||
| OptionalHeader: | ||
| AddressOfEntryPoint: 4480 | ||
| ImageBase: 268435456 | ||
| SectionAlignment: 4096 | ||
| FileAlignment: 512 | ||
| MajorOperatingSystemVersion: 6 | ||
| MinorOperatingSystemVersion: 0 | ||
| MajorImageVersion: 0 | ||
| MinorImageVersion: 0 | ||
| MajorSubsystemVersion: 6 | ||
| MinorSubsystemVersion: 0 | ||
| Subsystem: IMAGE_SUBSYSTEM_WINDOWS_CUI | ||
| DLLCharacteristics: [ IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE, IMAGE_DLL_CHARACTERISTICS_NX_COMPAT, IMAGE_DLL_CHARACTERISTICS_TERMINAL_SERVER_AWARE ] | ||
| SizeOfStackReserve: 1048576 | ||
| SizeOfStackCommit: 4096 | ||
| SizeOfHeapReserve: 1048576 | ||
| SizeOfHeapCommit: 4096 | ||
| header: | ||
| Machine: IMAGE_FILE_MACHINE_I386 | ||
| Characteristics: [ IMAGE_FILE_EXECUTABLE_IMAGE, IMAGE_FILE_32BIT_MACHINE ] | ||
| sections: | ||
| - Name: .text | ||
| Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 4096 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| - Name: .data | ||
| Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 8192 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| - Name: .debug_info | ||
| Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 16384 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| symbols: [] | ||
| ... |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,52 @@ | ||
| # This test produces a stripped version of the object file and adds a | ||
| # gnu-debuglink section to it linking to the unstripped version of the object | ||
| # file. Then the unstripped version is stripped to keep only debug info to | ||
| # cause its crc to change. In this case the debug info shall not be loaded. | ||
|
|
||
| # RUN: yaml2obj %s -o %t | ||
| # RUN: llvm-objcopy --strip-all --add-gnu-debuglink=%t %t %t.stripped | ||
| # RUN: llvm-strip --only-keep-debug %t | ||
| # RUN: lldb-test object-file %t.stripped | FileCheck %s | ||
|
|
||
| # CHECK-NOT: Name: .debug_info | ||
| # CHECK-NOT: Type: dwarf-info | ||
|
|
||
| --- !COFF | ||
| OptionalHeader: | ||
| AddressOfEntryPoint: 5152 | ||
| ImageBase: 5368709120 | ||
| SectionAlignment: 4096 | ||
| FileAlignment: 512 | ||
| MajorOperatingSystemVersion: 6 | ||
| MinorOperatingSystemVersion: 0 | ||
| MajorImageVersion: 0 | ||
| MinorImageVersion: 0 | ||
| MajorSubsystemVersion: 6 | ||
| MinorSubsystemVersion: 0 | ||
| Subsystem: IMAGE_SUBSYSTEM_WINDOWS_CUI | ||
| DLLCharacteristics: [ IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA, IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE, IMAGE_DLL_CHARACTERISTICS_NX_COMPAT, IMAGE_DLL_CHARACTERISTICS_TERMINAL_SERVER_AWARE ] | ||
| SizeOfStackReserve: 1048576 | ||
| SizeOfStackCommit: 4096 | ||
| SizeOfHeapReserve: 1048576 | ||
| SizeOfHeapCommit: 4096 | ||
| header: | ||
| Machine: IMAGE_FILE_MACHINE_AMD64 | ||
| Characteristics: [ IMAGE_FILE_EXECUTABLE_IMAGE, IMAGE_FILE_LARGE_ADDRESS_AWARE ] | ||
| sections: | ||
| - Name: .text | ||
| Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 4096 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| - Name: .data | ||
| Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 8192 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| - Name: .debug_info | ||
| Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 16384 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| symbols: [] | ||
| ... |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,63 @@ | ||
| # This test produces a stripped version of the object file and adds a | ||
| # gnu-debuglink section to it linking to the unstripped version of the object | ||
| # file. Then the unstripped version is stripped to keep only debug info to | ||
| # cause its crc to change. In this case the object files still have the | ||
| # synthetic PDB build id that LLD adds even for the mingw target. Because this | ||
| # build id still matches, the debug info shall still be loaded from the | ||
| # gnu-debuglink reference. | ||
|
|
||
| # RUN: yaml2obj %s -o %t | ||
| # RUN: llvm-objcopy --strip-all --add-gnu-debuglink=%t %t %t.stripped | ||
| # RUN: llvm-strip --only-keep-debug %t | ||
| # RUN: lldb-test object-file %t.stripped | FileCheck %s | ||
|
|
||
| # CHECK: Name: .debug_info | ||
| # CHECK-NEXT: Type: dwarf-info | ||
|
|
||
| --- !COFF | ||
| OptionalHeader: | ||
| AddressOfEntryPoint: 5152 | ||
| ImageBase: 5368709120 | ||
| SectionAlignment: 4096 | ||
| FileAlignment: 512 | ||
| MajorOperatingSystemVersion: 6 | ||
| MinorOperatingSystemVersion: 0 | ||
| MajorImageVersion: 0 | ||
| MinorImageVersion: 0 | ||
| MajorSubsystemVersion: 6 | ||
| MinorSubsystemVersion: 0 | ||
| Subsystem: IMAGE_SUBSYSTEM_WINDOWS_CUI | ||
| DLLCharacteristics: [ IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA, IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE, IMAGE_DLL_CHARACTERISTICS_NX_COMPAT, IMAGE_DLL_CHARACTERISTICS_TERMINAL_SERVER_AWARE ] | ||
| SizeOfStackReserve: 1048576 | ||
| SizeOfStackCommit: 4096 | ||
| SizeOfHeapReserve: 1048576 | ||
| SizeOfHeapCommit: 4096 | ||
| Debug: | ||
| RelativeVirtualAddress: 16384 | ||
| Size: 28 | ||
| header: | ||
| Machine: IMAGE_FILE_MACHINE_AMD64 | ||
| Characteristics: [ IMAGE_FILE_EXECUTABLE_IMAGE, IMAGE_FILE_LARGE_ADDRESS_AWARE ] | ||
| sections: | ||
| - Name: .text | ||
| Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 4096 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| - Name: .data | ||
| Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 8192 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| - Name: .buildid | ||
| Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 16384 | ||
| VirtualSize: 53 | ||
| SectionData: 00000000E5038E620000000002000000190000001C4000001C300000525344534674A52A37FB4C784C4C44205044422E0100000000 | ||
| - Name: .debug_info | ||
| Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 20480 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| symbols: [] | ||
| ... |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,50 @@ | ||
| # This test produces a stripped version of the object file and adds a | ||
| # gnu-debuglink section to it linking to the unstripped version of the object | ||
| # file. The debug info shall be loaded from the gnu-debuglink reference. | ||
|
|
||
| # RUN: yaml2obj %s -o %t | ||
| # RUN: llvm-objcopy --strip-all --add-gnu-debuglink=%t %t %t.stripped | ||
| # RUN: lldb-test object-file %t.stripped | FileCheck %s | ||
|
|
||
| # CHECK: Name: .debug_info | ||
| # CHECK-NEXT: Type: dwarf-info | ||
|
|
||
| --- !COFF | ||
| OptionalHeader: | ||
| AddressOfEntryPoint: 5152 | ||
| ImageBase: 5368709120 | ||
| SectionAlignment: 4096 | ||
| FileAlignment: 512 | ||
| MajorOperatingSystemVersion: 6 | ||
| MinorOperatingSystemVersion: 0 | ||
| MajorImageVersion: 0 | ||
| MinorImageVersion: 0 | ||
| MajorSubsystemVersion: 6 | ||
| MinorSubsystemVersion: 0 | ||
| Subsystem: IMAGE_SUBSYSTEM_WINDOWS_CUI | ||
| DLLCharacteristics: [ IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA, IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE, IMAGE_DLL_CHARACTERISTICS_NX_COMPAT, IMAGE_DLL_CHARACTERISTICS_TERMINAL_SERVER_AWARE ] | ||
| SizeOfStackReserve: 1048576 | ||
| SizeOfStackCommit: 4096 | ||
| SizeOfHeapReserve: 1048576 | ||
| SizeOfHeapCommit: 4096 | ||
| header: | ||
| Machine: IMAGE_FILE_MACHINE_AMD64 | ||
| Characteristics: [ IMAGE_FILE_EXECUTABLE_IMAGE, IMAGE_FILE_LARGE_ADDRESS_AWARE ] | ||
| sections: | ||
| - Name: .text | ||
| Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 4096 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| - Name: .data | ||
| Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 8192 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| - Name: .debug_info | ||
| Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ] | ||
| VirtualAddress: 16384 | ||
| VirtualSize: 64 | ||
| SectionData: DEADBEEFBAADF00D | ||
| symbols: [] | ||
| ... |