Refactor DebugLocDWARFExpression so it doesn't require access to the
authorAdrian Prantl <aprantl@apple.com>
Mon, 2 Mar 2015 17:21:06 +0000 (17:21 +0000)
committerAdrian Prantl <aprantl@apple.com>
Mon, 2 Mar 2015 17:21:06 +0000 (17:21 +0000)
commit9680c9c1a807af5b9007b5cfe5fa5bf184a5ad36
tree059072af4d6a8390521304be9ad00d37f0c0cd1c
parent2271bfcd9c5d535af8ba658afbeb3aabaf76aa8b
Refactor DebugLocDWARFExpression so it doesn't require access to the
TargetRegisterInfo. DebugLocEntry now holds a buffer with the raw bytes
of the pre-calculated DWARF expression.

Ought to be NFC, but it does slightly alter the output format of the
textual assembly.

This reapplies 230930 with a relaxed assertion in DebugLocEntry::finalize()
that allows for empty DWARF expressions for constant FP values.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230975 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/CodeGen/AsmPrinter.h
lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp
lib/CodeGen/AsmPrinter/ByteStreamer.h
lib/CodeGen/AsmPrinter/DebugLocEntry.h
lib/CodeGen/AsmPrinter/DwarfDebug.cpp
lib/CodeGen/AsmPrinter/DwarfDebug.h
lib/CodeGen/AsmPrinter/DwarfExpression.cpp
lib/CodeGen/AsmPrinter/DwarfExpression.h
lib/CodeGen/AsmPrinter/DwarfUnit.cpp
test/CodeGen/ARM/debug-info-qreg.ll
test/CodeGen/ARM/debug-info-s16-reg.ll