summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/ELFObjectWriter.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-10-23 21:48:05 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-10-23 21:48:05 +0000
commit21956e4007c21fd737c3548f7812a2c47adaf588 (patch)
tree616d874a12844107ae8d5edd12bff7638404b955 /llvm/lib/MC/ELFObjectWriter.cpp
parent803195ed6df7b7d983d800233d77afe0767ba69b (diff)
downloadbcm5719-llvm-21956e4007c21fd737c3548f7812a2c47adaf588.tar.gz
bcm5719-llvm-21956e4007c21fd737c3548f7812a2c47adaf588.zip
Add a RAW mode to StringTableBuilder.
In this mode it just tries to tail merge the strings without imposing any other format constrains. It will not, for example, add a null byte between them. Also add support for keeping a tentative size and offset if we decide to not optimize after all. This will be used shortly in lld for merging SHF_STRINGS sections. llvm-svn: 251153
Diffstat (limited to 'llvm/lib/MC/ELFObjectWriter.cpp')
-rw-r--r--llvm/lib/MC/ELFObjectWriter.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/MC/ELFObjectWriter.cpp b/llvm/lib/MC/ELFObjectWriter.cpp
index 5fdfcf9ef2d..230d3d775b1 100644
--- a/llvm/lib/MC/ELFObjectWriter.cpp
+++ b/llvm/lib/MC/ELFObjectWriter.cpp
@@ -109,7 +109,7 @@ class ELFObjectWriter : public MCObjectWriter {
BumpPtrAllocator Alloc;
StringSaver VersionSymSaver{Alloc};
- StringTableBuilder StrTabBuilder;
+ StringTableBuilder StrTabBuilder{StringTableBuilder::ELF};
/// @}
@@ -880,7 +880,7 @@ void ELFObjectWriter::computeSymbolTable(
for (const std::string &Name : FileNames)
StrTabBuilder.add(Name);
- StrTabBuilder.finalize(StringTableBuilder::ELF);
+ StrTabBuilder.finalize();
for (const std::string &Name : FileNames)
Writer.writeSymbol(StrTabBuilder.getOffset(Name),
OpenPOWER on IntegriCloud