aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/MC/StringTableBuilderTest.cpp
AgeCommit message (Collapse)AuthorFilesLines
2016-01-29Reland "[CodeView] Use assembler directives for line tables"Reid Kleckner1-0/+23
This reverts commit r259126 and relands r259117. This time with updated library dependencies. llvm-svn: 259130
2016-01-29Revert "[CodeView] Use assembler directives for line tables"Reid Kleckner1-23/+0
This reverts commit r259117. The LineInfo constructor is defined in the codeview library and we have to link against it now. Doing that isn't trivial, so reverting for now. llvm-svn: 259126
2016-01-28[CodeView] Use assembler directives for line tablesReid Kleckner1-0/+23
Adds a new family of .cv_* directives to LLVM's variant of GAS syntax: - .cv_file: Similar to DWARF .file directives - .cv_loc: Similar to the DWARF .loc directive, but starts with a function id. CodeView line tables are emitted by function instead of by compilation unit, so we needed an extra field to communicate this. Rather than overloading the .loc direction further, we decided it was better to have our own directive. - .cv_stringtable: Emits the codeview string table at the current position. Currently this just contains the filenames as null-terminated strings. - .cv_filechecksums: Emits the file checksum table for all files used with .cv_file so far. There is currently no support for emitting actual checksums, just filenames. This moves the line table emission code down into the assembler. This is in preparation for implementing the inlined call site line table format. The inline line table format encoding algorithm requires knowing the absolute code offsets, so it must run after the assembler has laid out the code. David Majnemer collaborated on this patch. llvm-svn: 259117
2015-10-23Add a RAW mode to StringTableBuilder.Rafael Espindola1-4/+4
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
2015-01-14[cleanup] Re-sort all the #include lines in LLVM usingChandler Carruth1-1/+1
utils/sort_includes.py. I clearly haven't done this in a while, so more changed than usual. This even uncovered a missing include from the InstrProf library that I've added. No functionality changed here, just mechanical cleanup of the include order. llvm-svn: 225974
2014-09-29WinCOFFObjectWriter: optimize the string table for common sufficesHans Wennborg1-2/+33
This is a follow-up from r207670 which did the same for ELF. Differential Revision: http://reviews.llvm.org/D5530 llvm-svn: 218636
2014-07-03Invert the MC -> Object dependency.Rafael Espindola1-0/+40
Now that we have a lib/MC/MCAnalysis, the dependency was there just because of two helper classes. Move the two over to MC. This will allow IRObjectFile to parse inline assembly. llvm-svn: 212248