Skip to content

Commit 65c9b84

Browse files
committed
[Driver] Remove elf::script indirection. NFC
There are 100+ references. Use a wrapper similar to a623a4c
1 parent e62ce1f commit 65c9b84

File tree

3 files changed

+8
-3
lines changed

3 files changed

+8
-3
lines changed

lld/ELF/Driver.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ bool link(ArrayRef<const char *> args, llvm::raw_ostream &stdoutOS,
151151
"--error-limit=0 to see all errors)";
152152

153153
config = ConfigWrapper();
154-
script = std::make_unique<LinkerScript>();
154+
script = ScriptWrapper();
155155

156156
symAux.emplace_back();
157157

lld/ELF/LinkerScript.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ using namespace llvm::support::endian;
4444
using namespace lld;
4545
using namespace lld::elf;
4646

47-
std::unique_ptr<LinkerScript> elf::script;
47+
ScriptWrapper elf::script;
4848

4949
static bool isSectionPrefix(StringRef prefix, StringRef name) {
5050
return name.consume_front(prefix) && (name.empty() || name[0] == '.');

lld/ELF/LinkerScript.h

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,12 @@ class LinkerScript final {
402402
llvm::MapVector<StringRef, SmallVector<StringRef, 0>> provideMap;
403403
};
404404

405-
LLVM_LIBRARY_VISIBILITY extern std::unique_ptr<LinkerScript> script;
405+
struct ScriptWrapper {
406+
LinkerScript s;
407+
LinkerScript *operator->() { return &s; }
408+
};
409+
410+
LLVM_LIBRARY_VISIBILITY extern ScriptWrapper script;
406411

407412
} // end namespace lld::elf
408413

0 commit comments

Comments
 (0)