Skip to content

Commit 4b6a7e3

Browse files
committed
Fix five of the shared library build targets
Before this patch there was a cyclic dependency between lldCore and lldReaderWriter. Only lldConfig could be built as a shared library. * Moved Reader and Writer base classes into lldCore. * The following shared libraries can now be built: lldCore lldYAML lldNative lldPasses lldReaderWriter Differential Revision: http://reviews.llvm.org/D7105 From: Greg Fitzgerald <[email protected]> llvm-svn: 226732
1 parent e24b8a0 commit 4b6a7e3

36 files changed

+55
-52
lines changed

lld/docs/Readers.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ The purpose of a "Reader" is to take an object file in a particular format
1010
and create an `lld::File`:cpp:class: (which is a graph of Atoms)
1111
representing the object file. A Reader inherits from
1212
`lld::Reader`:cpp:class: which lives in
13-
:file:`include/lld/ReaderWriter/Reader.h` and
14-
:file:`lib/ReaderWriter/Reader.cpp`.
13+
:file:`include/lld/Core/Reader.h` and
14+
:file:`lib/Core/Reader.cpp`.
1515

1616
The Reader infrastructure for an object format ``Foo`` requires the
1717
following pieces in order to fit into lld:

lld/include/lld/Core/LinkingContext.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
#include "lld/Core/Parallel.h"
1717
#include "lld/Core/Reference.h"
1818
#include "lld/Core/range.h"
19-
#include "lld/ReaderWriter/Reader.h"
19+
#include "lld/Core/Reader.h"
2020
#include "llvm/Support/ErrorOr.h"
2121
#include "llvm/Support/raw_ostream.h"
2222
#include <string>

lld/include/lld/ReaderWriter/Reader.h renamed to lld/include/lld/Core/Reader.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//===- lld/ReaderWriter/Reader.h - Abstract File Format Reading Interface -===//
1+
//===- lld/Core/Reader.h - Abstract File Format Reading Interface ---------===//
22
//
33
// The LLVM Linker
44
//
@@ -7,8 +7,8 @@
77
//
88
//===----------------------------------------------------------------------===//
99

10-
#ifndef LLD_READER_WRITER_READER_H
11-
#define LLD_READER_WRITER_READER_H
10+
#ifndef LLD_CORE_READER_H
11+
#define LLD_CORE_READER_H
1212

1313
#include "lld/Core/LLVM.h"
1414
#include "lld/Core/Reference.h"

lld/include/lld/ReaderWriter/Writer.h renamed to lld/include/lld/Core/Writer.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//===- lld/ReaderWriter/Writer.h - Abstract File Format Interface ---------===//
1+
//===- lld/Core/Writer.h - Abstract File Format Interface -----------------===//
22
//
33
// The LLVM Linker
44
//
@@ -7,8 +7,8 @@
77
//
88
//===----------------------------------------------------------------------===//
99

10-
#ifndef LLD_READER_WRITER_WRITER_H
11-
#define LLD_READER_WRITER_WRITER_H
10+
#ifndef LLD_CORE_WRITER_H
11+
#define LLD_CORE_WRITER_H
1212

1313
#include "lld/Core/LLVM.h"
1414
#include <memory>

lld/include/lld/Passes/LayoutPass.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
#include "lld/Core/File.h"
1414
#include "lld/Core/Pass.h"
15-
#include "lld/ReaderWriter/Reader.h"
15+
#include "lld/Core/Reader.h"
1616
#include "llvm/ADT/DenseMap.h"
1717
#include <map>
1818
#include <string>

lld/include/lld/ReaderWriter/CoreLinkingContext.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
#define LLD_READER_WRITER_CORE_LINKER_CONTEXT_H
1212

1313
#include "lld/Core/LinkingContext.h"
14-
#include "lld/ReaderWriter/Reader.h"
15-
#include "lld/ReaderWriter/Writer.h"
14+
#include "lld/Core/Reader.h"
15+
#include "lld/Core/Writer.h"
1616
#include "llvm/Support/ErrorHandling.h"
1717

1818
namespace lld {

lld/include/lld/ReaderWriter/ELFLinkingContext.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
#include "lld/Core/PassManager.h"
1616
#include "lld/Core/STDExtras.h"
1717
#include "lld/Core/range.h"
18-
#include "lld/ReaderWriter/Reader.h"
19-
#include "lld/ReaderWriter/Writer.h"
18+
#include "lld/Core/Reader.h"
19+
#include "lld/Core/Writer.h"
2020
#include "llvm/ADT/StringSet.h"
2121
#include "llvm/ADT/Triple.h"
2222
#include "llvm/Object/ELF.h"

lld/include/lld/ReaderWriter/MachOLinkingContext.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
#define LLD_READER_WRITER_MACHO_LINKING_CONTEXT_H
1212

1313
#include "lld/Core/LinkingContext.h"
14-
#include "lld/ReaderWriter/Reader.h"
15-
#include "lld/ReaderWriter/Writer.h"
14+
#include "lld/Core/Reader.h"
15+
#include "lld/Core/Writer.h"
1616
#include "llvm/ADT/StringMap.h"
1717
#include "llvm/ADT/StringSet.h"
1818
#include "llvm/Support/ErrorHandling.h"

lld/include/lld/ReaderWriter/PECOFFLinkingContext.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
#define LLD_READER_WRITER_PECOFF_LINKING_CONTEXT_H
1212

1313
#include "lld/Core/LinkingContext.h"
14-
#include "lld/ReaderWriter/Reader.h"
15-
#include "lld/ReaderWriter/Writer.h"
14+
#include "lld/Core/Reader.h"
15+
#include "lld/Core/Writer.h"
1616
#include "llvm/ADT/ArrayRef.h"
1717
#include "llvm/Support/Allocator.h"
1818
#include "llvm/Support/COFF.h"

lld/lib/Core/CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@ add_llvm_library(lldCore
33
Error.cpp
44
File.cpp
55
LinkingContext.cpp
6+
Reader.cpp
67
Resolver.cpp
78
SymbolTable.cpp
9+
Writer.cpp
810
LINK_LIBS
911
LLVMSupport
1012
)

lld/lib/Core/LinkingContext.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#include "lld/Core/LinkingContext.h"
1212
#include "lld/Core/Resolver.h"
1313
#include "lld/Core/Simple.h"
14-
#include "lld/ReaderWriter/Writer.h"
14+
#include "lld/Core/Writer.h"
1515
#include "llvm/ADT/Triple.h"
1616
#include "llvm/Support/Process.h"
1717

lld/lib/ReaderWriter/Reader.cpp renamed to lld/lib/Core/Reader.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//===- lib/ReaderWriter/Reader.cpp ----------------------------------------===//
1+
//===- lib/Core/Reader.cpp ------------------------------------------------===//
22
//
33
// The LLVM Linker
44
//
@@ -8,7 +8,7 @@
88
//===----------------------------------------------------------------------===//
99

1010
#include "lld/Core/File.h"
11-
#include "lld/ReaderWriter/Reader.h"
11+
#include "lld/Core/Reader.h"
1212
#include "llvm/ADT/StringRef.h"
1313
#include "llvm/Support/Errc.h"
1414
#include "llvm/Support/FileUtilities.h"

lld/lib/ReaderWriter/Writer.cpp renamed to lld/lib/Core/Writer.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//===- lib/ReaderWriter/Writer.cpp ----------------------------------------===//
1+
//===- lib/Core/Writer.cpp ------------------------------------------------===//
22
//
33
// The LLVM Linker
44
//
@@ -8,7 +8,7 @@
88
//===----------------------------------------------------------------------===//
99

1010
#include "lld/Core/File.h"
11-
#include "lld/ReaderWriter/Writer.h"
11+
#include "lld/Core/Writer.h"
1212

1313
namespace lld {
1414
Writer::Writer() {

lld/lib/Driver/CoreDriver.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@
77
//
88
//===----------------------------------------------------------------------===//
99

10+
#include "lld/Core/Reader.h"
1011
#include "lld/Driver/Driver.h"
1112
#include "lld/ReaderWriter/CoreLinkingContext.h"
12-
#include "lld/ReaderWriter/Reader.h"
1313
#include "llvm/ADT/ArrayRef.h"
1414
#include "llvm/ADT/STLExtras.h"
1515
#include "llvm/ADT/Triple.h"

lld/lib/Driver/Driver.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@
1313
#include "lld/Core/LLVM.h"
1414
#include "lld/Core/Parallel.h"
1515
#include "lld/Core/PassManager.h"
16+
#include "lld/Core/Reader.h"
1617
#include "lld/Core/Resolver.h"
18+
#include "lld/Core/Writer.h"
1719
#include "lld/Driver/Driver.h"
1820
#include "lld/Passes/RoundTripNativePass.h"
1921
#include "lld/Passes/RoundTripYAMLPass.h"
20-
#include "lld/ReaderWriter/Reader.h"
21-
#include "lld/ReaderWriter/Writer.h"
2222
#include "llvm/ADT/StringExtras.h"
2323
#include "llvm/ADT/StringSwitch.h"
2424
#include "llvm/Option/Arg.h"

lld/lib/Passes/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ add_llvm_library(lldPasses
33
RoundTripNativePass.cpp
44
RoundTripYAMLPass.cpp
55
LINK_LIBS
6-
lldReaderWriter
6+
lldCore
7+
lldNative
8+
lldYAML
79
LLVMSupport
810
)

lld/lib/Passes/RoundTripNativePass.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99

1010
#include "lld/Core/Instrumentation.h"
1111
#include "lld/Core/Simple.h"
12+
#include "lld/Core/Writer.h"
1213
#include "lld/Passes/RoundTripNativePass.h"
13-
#include "lld/ReaderWriter/Writer.h"
1414
#include "llvm/Support/Debug.h"
1515
#include "llvm/Support/Path.h"
1616
#include <memory>

lld/lib/Passes/RoundTripYAMLPass.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99

1010
#include "lld/Core/Instrumentation.h"
1111
#include "lld/Core/Simple.h"
12+
#include "lld/Core/Writer.h"
1213
#include "lld/Passes/RoundTripYAMLPass.h"
13-
#include "lld/ReaderWriter/Writer.h"
1414
#include "llvm/Support/Debug.h"
1515
#include "llvm/Support/Path.h"
1616
#include <memory>

lld/lib/ReaderWriter/CMakeLists.txt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,10 @@ add_llvm_library(lldReaderWriter
1212
CoreLinkingContext.cpp
1313
FileArchive.cpp
1414
LinkerScript.cpp
15-
Reader.cpp
16-
Writer.cpp
17-
FileArchive.cpp
1815
LINK_LIBS
1916
lldCore
17+
lldPasses
18+
lldYAML
2019
LLVMObject
2120
LLVMSupport
2221
)

lld/lib/ReaderWriter/ELF/ELFReader.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
#include "CreateELF.h"
1414
#include "DynamicFile.h"
1515
#include "ELFFile.h"
16-
#include "lld/ReaderWriter/Reader.h"
16+
#include "lld/Core/Reader.h"
1717

1818
namespace lld {
1919
namespace elf {

lld/lib/ReaderWriter/ELF/OutputELFWriter.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
#include "lld/Core/Parallel.h"
1717
#include "lld/Core/SharedLibraryFile.h"
1818
#include "lld/ReaderWriter/ELFLinkingContext.h"
19-
#include "lld/ReaderWriter/Writer.h"
19+
#include "lld/Core/Writer.h"
2020
#include "llvm/ADT/StringSet.h"
2121
#include "llvm/Support/Path.h"
2222

lld/lib/ReaderWriter/ELF/SegmentChunks.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
#include "SectionChunks.h"
1616
#include "Writer.h"
1717
#include "lld/Core/range.h"
18-
#include "lld/ReaderWriter/Writer.h"
18+
#include "lld/Core/Writer.h"
1919
#include "llvm/ADT/ArrayRef.h"
2020
#include "llvm/ADT/StringRef.h"
2121
#include "llvm/Object/ELF.h"

lld/lib/ReaderWriter/ELF/Writer.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
//
88
//===----------------------------------------------------------------------===//
99

10-
#include "lld/ReaderWriter/Writer.h"
10+
#include "lld/Core/Writer.h"
1111
#include "DynamicLibraryWriter.h"
1212
#include "ExecutableWriter.h"
1313

lld/lib/ReaderWriter/ELF/Writer.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#define LLD_READER_WRITER_ELF_WRITER_H
1212

1313
#include "lld/Core/File.h"
14-
#include "lld/ReaderWriter/Writer.h"
14+
#include "lld/Core/Writer.h"
1515

1616
namespace lld {
1717
namespace elf {

lld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@
1414
#include "MachOPasses.h"
1515
#include "lld/Core/ArchiveLibraryFile.h"
1616
#include "lld/Core/PassManager.h"
17+
#include "lld/Core/Reader.h"
18+
#include "lld/Core/Writer.h"
1719
#include "lld/Driver/Driver.h"
1820
#include "lld/Passes/LayoutPass.h"
1921
#include "lld/Passes/RoundTripYAMLPass.h"
20-
#include "lld/ReaderWriter/Reader.h"
21-
#include "lld/ReaderWriter/Writer.h"
2222
#include "llvm/ADT/StringExtras.h"
2323
#include "llvm/ADT/Triple.h"
2424
#include "llvm/Config/config.h"

lld/lib/ReaderWriter/MachO/WriterMachO.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
//
88
//===----------------------------------------------------------------------===//
99

10-
#include "lld/ReaderWriter/Writer.h"
1110
#include "ExecutableAtoms.hpp"
1211
#include "MachONormalizedFile.h"
1312
#include "lld/Core/File.h"
13+
#include "lld/Core/Writer.h"
1414
#include "lld/ReaderWriter/MachOLinkingContext.h"
1515
#include "llvm/Support/Debug.h"
1616
#include "llvm/Support/ErrorHandling.h"

lld/lib/ReaderWriter/Native/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@ add_llvm_library(lldNative
22
ReaderNative.cpp
33
WriterNative.cpp
44
LINK_LIBS
5-
lldReaderWriter
5+
lldCore
66
LLVMSupport
77
)

lld/lib/ReaderWriter/Native/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@
99

1010
LLD_LEVEL := ../../..
1111
LIBRARYNAME := lldNative
12-
USEDLIBS = lldReaderWriter.a lldCore.a
12+
USEDLIBS = lldCore.a
1313

1414
include $(LLD_LEVEL)/Makefile

lld/lib/ReaderWriter/Native/ReaderNative.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
#include "lld/Core/Atom.h"
1212
#include "lld/Core/Error.h"
1313
#include "lld/Core/File.h"
14+
#include "lld/Core/Reader.h"
1415
#include "lld/Core/Simple.h"
15-
#include "lld/ReaderWriter/Reader.h"
1616
#include "llvm/ADT/ArrayRef.h"
1717
#include "llvm/ADT/StringRef.h"
1818
#include "llvm/Support/Debug.h"

lld/lib/ReaderWriter/Native/WriterNative.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
//
88
//===----------------------------------------------------------------------===//
99

10-
#include "lld/ReaderWriter/Writer.h"
1110
#include "NativeFileFormat.h"
1211
#include "lld/Core/File.h"
1312
#include "lld/Core/LinkingContext.h"
13+
#include "lld/Core/Writer.h"
1414
#include "llvm/ADT/ArrayRef.h"
1515
#include "llvm/ADT/DenseMap.h"
1616
#include "llvm/ADT/StringRef.h"

lld/lib/ReaderWriter/PECOFF/PECOFFLinkingContext.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,13 @@
1616
#include "LoadConfigPass.h"
1717
#include "PDBPass.h"
1818
#include "lld/Core/PassManager.h"
19+
#include "lld/Core/Reader.h"
1920
#include "lld/Core/Simple.h"
21+
#include "lld/Core/Writer.h"
2022
#include "lld/Passes/LayoutPass.h"
2123
#include "lld/Passes/RoundTripNativePass.h"
2224
#include "lld/Passes/RoundTripYAMLPass.h"
2325
#include "lld/ReaderWriter/PECOFFLinkingContext.h"
24-
#include "lld/ReaderWriter/Reader.h"
25-
#include "lld/ReaderWriter/Writer.h"
2626
#include "llvm/ADT/SmallString.h"
2727
#include "llvm/Support/Allocator.h"
2828
#include "llvm/Support/Path.h"

lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010
#include "Atoms.h"
1111
#include "lld/Core/Alias.h"
1212
#include "lld/Core/File.h"
13+
#include "lld/Core/Reader.h"
1314
#include "lld/Driver/Driver.h"
1415
#include "lld/ReaderWriter/PECOFFLinkingContext.h"
15-
#include "lld/ReaderWriter/Reader.h"
1616
#include "llvm/ADT/ArrayRef.h"
1717
#include "llvm/ADT/StringExtras.h"
1818
#include "llvm/Object/COFF.h"

lld/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@
2323
#include "WriterImportLibrary.h"
2424
#include "lld/Core/DefinedAtom.h"
2525
#include "lld/Core/File.h"
26+
#include "lld/Core/Writer.h"
2627
#include "lld/ReaderWriter/AtomLayout.h"
2728
#include "lld/ReaderWriter/PECOFFLinkingContext.h"
28-
#include "lld/ReaderWriter/Writer.h"
2929
#include "llvm/ADT/ArrayRef.h"
3030
#include "llvm/Object/COFF.h"
3131
#include "llvm/Support/COFF.h"
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
add_llvm_library(lldYAML
22
ReaderWriterYAML.cpp
33
LINK_LIBS
4-
lldReaderWriter
4+
lldCore
55
LLVMSupport
66
)

lld/lib/ReaderWriter/YAML/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@
99

1010
LLD_LEVEL := ../../..
1111
LIBRARYNAME := lldYAML
12-
USEDLIBS = lldReaderWriter.a lldCore.a
12+
USEDLIBS = lldCore.a
1313

1414
include $(LLD_LEVEL)/Makefile

0 commit comments

Comments
 (0)