summaryrefslogtreecommitdiffstats
path: root/lld/COFF/SymbolTable.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lld/COFF/SymbolTable.cpp')
-rw-r--r--lld/COFF/SymbolTable.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/lld/COFF/SymbolTable.cpp b/lld/COFF/SymbolTable.cpp
index 14fb72480d9..d3f8b038460 100644
--- a/lld/COFF/SymbolTable.cpp
+++ b/lld/COFF/SymbolTable.cpp
@@ -317,8 +317,16 @@ Undefined *SymbolTable::addUndefined(StringRef Name) {
return New;
}
-void SymbolTable::addRelative(StringRef Name, uint64_t VA) {
- addSymbol(new (Alloc) DefinedRelative(Name, VA));
+DefinedRelative *SymbolTable::addRelative(StringRef Name, uint64_t VA) {
+ auto *New = new (Alloc) DefinedRelative(Name, VA);
+ addSymbol(New);
+ return New;
+}
+
+DefinedAbsolute *SymbolTable::addAbsolute(StringRef Name, uint64_t VA) {
+ auto *New = new (Alloc) DefinedAbsolute(Name, VA);
+ addSymbol(New);
+ return New;
}
void SymbolTable::printMap(llvm::raw_ostream &OS) {
OpenPOWER on IntegriCloud