1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
llvm-mirror/lib/CodeGen/AsmPrinter
Bob Haarman 8243c03db7 [codeview] support more DW_OPs for more complete debug info
Summary:
Some variables show up in Visual Studio as "optimized out" even in -O0
-Od builds. This change fixes two issues that would cause this to
happen. The first issue is that not all DIExpressions we generate were
recognized by the CodeView writer. This has been addressed by adding
support for DW_OP_constu, DW_OP_minus, and DW_OP_plus. The second
issue is that we had no way to encode DW_OP_deref in CodeView. We get
around that by changinge the type we encode in the debug info to be
a reference to the type in the source code.

This fixes PR34261.

Reviewers: aprantl, rnk, zturner

Reviewed By: rnk

Subscribers: mgorny, llvm-commits, aprantl, hiraditya

Differential Revision: https://reviews.llvm.org/D36907

llvm-svn: 311957
2017-08-29 00:06:59 +00:00
..
AddressPool.cpp [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
AddressPool.h [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
ARMException.cpp Move Object format code to lib/BinaryFormat. 2017-06-07 03:48:56 +00:00
AsmPrinter.cpp [XRay][CodeGen] Use PIC-friendly code in XRay sleds; remove synthetic references in .text 2017-08-23 04:49:41 +00:00
AsmPrinterDwarf.cpp Move Object format code to lib/BinaryFormat. 2017-06-07 03:48:56 +00:00
AsmPrinterHandler.h Extract the method to begin and end a fragment in AsmPrinterHandler in their own method. NFC 2016-02-26 20:30:37 +00:00
AsmPrinterInlineAsm.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
ByteStreamer.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
CMakeLists.txt [CMake] NFC. Updating CMake dependency specifications 2016-11-17 04:36:50 +00:00
CodeViewDebug.cpp [codeview] support more DW_OPs for more complete debug info 2017-08-29 00:06:59 +00:00
CodeViewDebug.h [codeview] support more DW_OPs for more complete debug info 2017-08-29 00:06:59 +00:00
DbgValueHistoryCalculator.cpp [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DbgValueHistoryCalculator.h [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DebugHandlerBase.cpp [codeview] support more DW_OPs for more complete debug info 2017-08-29 00:06:59 +00:00
DebugHandlerBase.h [codeview] support more DW_OPs for more complete debug info 2017-08-29 00:06:59 +00:00
DebugLocEntry.h Remove unreachable code. (NFC) 2017-08-02 15:22:17 +00:00
DebugLocStream.cpp
DebugLocStream.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
DIE.cpp Mark dump() methods as const. NFC 2017-06-21 22:19:17 +00:00
DIEHash.cpp Move Object format code to lib/BinaryFormat. 2017-06-07 03:48:56 +00:00
DIEHash.h DebugInfo: Include .dwo file name when hashing multiple CUs in a single file 2017-05-29 06:32:34 +00:00
DIEHashAttributes.def Fix DIEHash refactoring that dropped the DW_AT_name from the hash 2017-05-23 18:36:07 +00:00
DwarfAccelTable.cpp [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DwarfAccelTable.h [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DwarfCFIException.cpp Move Object format code to lib/BinaryFormat. 2017-06-07 03:48:56 +00:00
DwarfCompileUnit.cpp [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DwarfCompileUnit.h [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DwarfDebug.cpp Untabify. 2017-08-28 06:47:47 +00:00
DwarfDebug.h [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DwarfException.h Emit .cfi_sections before the first .cfi_startproc 2017-01-02 18:05:27 +00:00
DwarfExpression.cpp Fix a logic error in DwarfExpression::addMachineReg() 2017-08-28 23:07:43 +00:00
DwarfExpression.h [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DwarfFile.cpp [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DwarfFile.h [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DwarfStringPool.cpp [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DwarfStringPool.h [CodeGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-08-17 21:26:39 +00:00
DwarfUnit.cpp Remove unreachable code. (NFC) 2017-08-02 15:22:17 +00:00
DwarfUnit.h [DWARF] Move a couple of member functions to the DWARFUnit baseclass. NFC. 2017-06-30 00:27:45 +00:00
EHStreamer.cpp [EH] Fix the LSDA that we emit for unknown EH personalities 2017-05-31 22:18:49 +00:00
EHStreamer.h Extract the method to begin and end a fragment in AsmPrinterHandler in their own method. NFC 2016-02-26 20:30:37 +00:00
ErlangGCPrinter.cpp Move Object format code to lib/BinaryFormat. 2017-06-07 03:48:56 +00:00
LLVMBuild.txt Update libdeps to add BinaryFormat, introduced in r304864. 2017-06-07 04:48:49 +00:00
OcamlGCPrinter.cpp [CodeGen] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-06-07 23:53:32 +00:00
WinException.cpp Move Object format code to lib/BinaryFormat. 2017-06-07 03:48:56 +00:00
WinException.h [WinEH] Don't assume endFunction is called while in .text 2016-12-28 19:05:12 +00:00