[lld] r209274 - [PECOFF] Discard .debug sections.
Rui Ueyama
ruiu at google.com
Tue May 20 22:56:32 PDT 2014
Author: ruiu
Date: Wed May 21 00:56:31 2014
New Revision: 209274
URL: http://llvm.org/viewvc/llvm-project?rev=209274&view=rev
Log:
[PECOFF] Discard .debug sections.
Modified:
lld/trunk/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp
lld/trunk/test/pecoff/pe32plus.test
lld/trunk/test/pecoff/reloc64.test
lld/trunk/test/pecoff/seh.test
Modified: lld/trunk/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp?rev=209274&r1=209273&r2=209274&view=diff
==============================================================================
--- lld/trunk/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp (original)
+++ lld/trunk/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp Wed May 21 00:56:31 2014
@@ -615,6 +615,13 @@ FileCOFF::AtomizeDefinedSymbolsInSection
section->Characteristics & llvm::COFF::IMAGE_SCN_LNK_REMOVE)
return error_code::success();
+ // Supporting debug info needs more work than just linking and combining
+ // .debug sections. We don't support it yet. Let's discard .debug sections at
+ // the very beginning of the process so that we don't spend time on linking
+ // blobs that nobody would understand.
+ if (sectionName == ".debug" || sectionName.startswith(".debug$"))
+ return error_code::success();
+
DefinedAtom::ContentType type = getContentType(section);
DefinedAtom::ContentPermissions perms = getPermissions(section);
bool isComdat = (_comdatSections.count(section) == 1);
Modified: lld/trunk/test/pecoff/pe32plus.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/pecoff/pe32plus.test?rev=209274&r1=209273&r2=209274&view=diff
==============================================================================
--- lld/trunk/test/pecoff/pe32plus.test (original)
+++ lld/trunk/test/pecoff/pe32plus.test Wed May 21 00:56:31 2014
@@ -9,7 +9,7 @@ CHECK-NEXT: Arch: x86_64
CHECK-NEXT: AddressSize: 64bit
CHECK-NEXT: ImageFileHeader {
CHECK-NEXT: Machine: IMAGE_FILE_MACHINE_AMD64 (0x8664)
-CHECK-NEXT: SectionCount: 2
+CHECK-NEXT: SectionCount: 1
CHECK-NEXT: TimeDateStamp:
CHECK-NEXT: PointerToSymbolTable: 0x0
CHECK-NEXT: SymbolCount: 0
@@ -23,10 +23,10 @@ CHECK-NEXT: ImageOptionalHeader {
CHECK-NEXT: MajorLinkerVersion: 0
CHECK-NEXT: MinorLinkerVersion: 0
CHECK-NEXT: SizeOfCode: 1
-CHECK-NEXT: SizeOfInitializedData: 108
+CHECK-NEXT: SizeOfInitializedData: 0
CHECK-NEXT: SizeOfUninitializedData: 0
-CHECK-NEXT: AddressOfEntryPoint: 0x2000
-CHECK-NEXT: BaseOfCode: 0x2000
+CHECK-NEXT: AddressOfEntryPoint: 0x1000
+CHECK-NEXT: BaseOfCode: 0x1000
CHECK-NEXT: ImageBase: 0x140000000
CHECK-NEXT: SectionAlignment: 4096
CHECK-NEXT: FileAlignment: 512
@@ -36,7 +36,7 @@ CHECK-NEXT: MajorImageVersion: 0
CHECK-NEXT: MinorImageVersion: 0
CHECK-NEXT: MajorSubsystemVersion: 6
CHECK-NEXT: MinorSubsystemVersion: 0
-CHECK-NEXT: SizeOfImage: 12288
+CHECK-NEXT: SizeOfImage: 8192
CHECK-NEXT: SizeOfHeaders: 512
CHECK-NEXT: Subsystem: IMAGE_SUBSYSTEM_WINDOWS_CUI (0x3)
CHECK-NEXT: Subsystem [ (0x8140)
Modified: lld/trunk/test/pecoff/reloc64.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/pecoff/reloc64.test?rev=209274&r1=209273&r2=209274&view=diff
==============================================================================
--- lld/trunk/test/pecoff/reloc64.test (original)
+++ lld/trunk/test/pecoff/reloc64.test Wed May 21 00:56:31 2014
@@ -7,4 +7,4 @@
CHECK: Disassembly of section .text:
CHECK-NEXT: .text:
-CHECK-NEXT: 2000: e8 15 00 00 00 callq 21
+CHECK-NEXT: 1000: e8 15 00 00 00 callq 21
Modified: lld/trunk/test/pecoff/seh.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/pecoff/seh.test?rev=209274&r1=209273&r2=209274&view=diff
==============================================================================
--- lld/trunk/test/pecoff/seh.test (original)
+++ lld/trunk/test/pecoff/seh.test Wed May 21 00:56:31 2014
@@ -20,7 +20,7 @@ CHECK: Process Affinity Mask: 0
CHECK: Process Heap Flags: 0
CHECK: CSD Version: 0
CHECK: Security Cookie: 0
-CHECK: SEH Table: 4210688
+CHECK: SEH Table: 4206592
CHECK: SEH Count: 2
CHECK: SEH Table: 0x{{[0-9a-f]+}} 0x{{[0-9a-f]+}}
More information about the llvm-commits
mailing list