MCDwarf: Refactor line table handling into a single data structure
authorDavid Blaikie <dblaikie@gmail.com>
Thu, 13 Mar 2014 17:55:28 +0000 (17:55 +0000)
committerDavid Blaikie <dblaikie@gmail.com>
Thu, 13 Mar 2014 17:55:28 +0000 (17:55 +0000)
commita2f9a2c30d43bfec488d121998ee1f27e5ff54f6
tree81ad2f0533052dc3f02e740657551780cea8c752
parent47feea0802a79ae28289dc9a66097ebb8d3bd398
MCDwarf: Refactor line table handling into a single data structure

This replaces several "compile unit ID -> thing" mappings in favor of
one mapping from CUID to the whole line table structure (files,
directories, and lines).

This is another step along the way to refactoring out reusable
components of line table handling for use when generating debug_line.dwo
for fission type units.

Also, might be a good basis to fold some of this handling down into
MCStreamers to avoid the special case of "One line table when doing asm
printing, line table per CU otherwise" by building it into the different
MCStreamer implementations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203821 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/MC/MCContext.h
include/llvm/MC/MCDwarf.h
lib/MC/MCContext.cpp
lib/MC/MCDwarf.cpp
lib/MC/MCObjectStreamer.cpp