llvm-project/llvm/lib/CodeGen/AsmPrinter
Keno Fischer e34147ce2f [DWARF] Fix a few corner cases in expression emission
Summary: I noticed an object file with `DW_OP_reg4 DW_OP_breg4 0` as a DWARF expression,
which I traced to a missing break (and `++I`) in this code snippet.
While I was at it, I also added support for a few other corner cases
along the same lines that I could think of.

Test Plan: Hand-crafted test case to exercises these cases is included.

Reviewers: echristo, dblaikie, aprantl

Reviewed By: aprantl

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D10302

llvm-svn: 239380
2015-06-09 01:53:59 +00:00
..
ARMException.cpp [AsmPrinter] Make AsmPrinter's OutStreamer member a unique_ptr. 2015-04-24 19:11:51 +00:00
AddressPool.cpp MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
AddressPool.h Move alignment from MCSectionData to MCSection. 2015-05-21 19:20:38 +00:00
AsmPrinter.cpp Create a MCSymbolELF. 2015-06-02 00:25:12 +00:00
AsmPrinterDwarf.cpp AsmPrinter: Stop exposing underlying DIE children list, NFC 2015-05-28 19:56:34 +00:00
AsmPrinterHandler.h Print jump tables before exception tables. 2015-03-09 18:29:12 +00:00
AsmPrinterInlineAsm.cpp MC: Add target hook to control symbol quoting 2015-06-09 00:31:39 +00:00
ByteStreamer.h Don't generate comments in the DebugLocStream unless required. NFC. 2015-05-20 22:51:27 +00:00
CMakeLists.txt Rename Win64Exception.(cpp|h) to WinException.(cpp|h) 2015-05-28 22:47:01 +00:00
DIE.cpp AsmPrinter: Stop exposing underlying DIEValue list, NFC 2015-05-27 22:44:06 +00:00
DIEHash.cpp AsmPrinter: Stop exposing underlying DIE children list, NFC 2015-05-28 19:56:34 +00:00
DIEHash.h AsmPrinter: Stop exposing underlying DIEValue list, NFC 2015-05-27 22:44:06 +00:00
DbgValueHistoryCalculator.cpp IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
DbgValueHistoryCalculator.h IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
DebugLocEntry.h IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
DebugLocStream.h Don't generate comments in the DebugLocStream unless required. NFC. 2015-05-20 22:51:27 +00:00
DwarfAccelTable.cpp MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
DwarfAccelTable.h Use operator<< instead of print in a few more places. 2015-05-27 13:05:42 +00:00
DwarfCFIException.cpp [AsmPrinter] Make AsmPrinter's OutStreamer member a unique_ptr. 2015-04-24 19:11:51 +00:00
DwarfCompileUnit.cpp AsmPrinter: Rename begin_values() => values_begin(), NFC 2015-05-28 18:55:38 +00:00
DwarfCompileUnit.h IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
DwarfDebug.cpp [DWARF] Fix a few corner cases in expression emission 2015-06-09 01:53:59 +00:00
DwarfDebug.h Move alignment from MCSectionData to MCSection. 2015-05-21 19:20:38 +00:00
DwarfException.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
DwarfExpression.cpp [DWARF] Fix a few corner cases in expression emission 2015-06-09 01:53:59 +00:00
DwarfExpression.h [DWARF] Fix a few corner cases in expression emission 2015-06-09 01:53:59 +00:00
DwarfFile.cpp AsmPrinter: Stop exposing underlying DIE children list, NFC 2015-05-28 19:56:34 +00:00
DwarfFile.h AsmPrinter: Store abbreviation data directly in DIE and DIEValue 2015-05-27 22:31:41 +00:00
DwarfStringPool.cpp AsmPrinter: Avoid creating symbols in DwarfStringPool 2015-05-24 16:58:59 +00:00
DwarfStringPool.h AsmPrinter: Avoid creating symbols in DwarfStringPool 2015-05-24 16:58:59 +00:00
DwarfUnit.cpp AsmPrinter: Return added DIE from DIE::addChild() 2015-05-27 22:59:03 +00:00
DwarfUnit.h AsmPrinter: Stop exposing underlying DIE children list, NFC 2015-05-28 19:56:34 +00:00
EHStreamer.cpp Move alignment from MCSectionData to MCSection. 2015-05-21 19:20:38 +00:00
EHStreamer.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
ErlangGCPrinter.cpp [AsmPrinter] Make AsmPrinter's OutStreamer member a unique_ptr. 2015-04-24 19:11:51 +00:00
LLVMBuild.txt Add proper dependencies to LLVMBuild.txt in llvm/lib. 2013-12-10 05:39:34 +00:00
Makefile
OcamlGCPrinter.cpp MC: Clean up method names in MCContext. 2015-05-18 18:43:14 +00:00
WinCodeViewLineTables.cpp MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
WinCodeViewLineTables.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
WinException.cpp MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
WinException.h [WinEH] Emit EH tables for __CxxFrameHandler3 on 32-bit x86 2015-05-29 17:00:57 +00:00