llvm/lib/MC/MCParser
Reid Kleckner 200dc330a0 [CodeView] Use assembler directives for line tables
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@259117 91177308-0d34-0410-b5e6-96231b3b80d8
2016-01-28 23:31:52 +00:00
..
AsmLexer.cpp Extend MCAsmLexer so that it can peek forward several tokens 2015-08-17 14:35:25 +00:00
AsmParser.cpp [CodeView] Use assembler directives for line tables 2016-01-28 23:31:52 +00:00
CMakeLists.txt Fix header path in CMake. NFC. 2015-06-19 20:49:02 +00:00
COFFAsmParser.cpp Move MCTargetAsmParser.h to llvm/MC/MCParser where it belongs. 2016-01-27 10:01:28 +00:00
DarwinAsmParser.cpp Use std::unique_ptr. NFC. 2015-12-16 23:49:14 +00:00
ELFAsmParser.cpp Stop producing .data.rel sections. 2015-11-18 06:02:15 +00:00
LLVMBuild.txt
MCAsmLexer.cpp [AsmParser] Allow tokens to be put back in to the token stream. 2015-11-08 23:48:23 +00:00
MCAsmParser.cpp Move MCTargetAsmParser.h to llvm/MC/MCParser where it belongs. 2016-01-27 10:01:28 +00:00
MCAsmParserExtension.cpp
MCTargetAsmParser.cpp Move MCTargetAsmParser.h to llvm/MC/MCParser where it belongs. 2016-01-27 10:01:28 +00:00