1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/lib
Bjorn Pettersson 574bf7e17c [SelectionDAG] Improve handling of dangling debug info
Summary:
1) Make sure to discard dangling debug info if the variable (or
variable fragment) is mapped to something new before we had a
chance to resolve the dangling debug info.

2) When resolving debug info, make sure to bump the associated
SDNodeOrder to ensure that the DBG_VALUE is emitted after the
instruction that defines the value used in the DBG_VALUE.
This will avoid a debug-use before def scenario as seen in
https://bugs.llvm.org/show_bug.cgi?id=36417.

The new test case, test/DebugInfo/X86/sdag-dangling-dbgvalue.ll,
show some other limitations in how dangling debug info is
handled in the SelectionDAG. Since we currently only support
having one dangling dbg.value per Value, we will end up dropping
debug info when there are more than one variable that is described
by the same "dangling value".

Reviewers: aprantl

Reviewed By: aprantl

Subscribers: aprantl, eraman, llvm-commits, JDevlieghere

Tags: #debug-info

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

llvm-svn: 327303
2018-03-12 18:02:39 +00:00
..
Analysis [MemorySSA] Fix comment + remove redundant dyn_casts; NFC 2018-03-11 04:16:12 +00:00
AsmParser
BinaryFormat [DWARF v5] Support for verbose dumping of .debug_rnglist entries 2018-03-08 20:52:35 +00:00
Bitcode
CodeGen [SelectionDAG] Improve handling of dangling debug info 2018-03-12 18:02:39 +00:00
DebugInfo [DebugInfo] Replace unreachable with None 2018-03-12 14:45:08 +00:00
Demangle
ExecutionEngine
Fuzzer
FuzzMutate
IR [ConstantFold] fp_binop AnyConstant, undef --> NaN 2018-03-10 15:56:25 +00:00
IRReader
LineEditor
Linker [ThinLTO] Recommit of import global variables 2018-03-12 10:30:50 +00:00
LTO Revert "[LTO] Support filtering by hotness threshold" 2018-03-08 01:13:10 +00:00
MC Delay creating an alias for @@@. 2018-03-09 18:42:25 +00:00
Object Delay creating an alias for @@@. 2018-03-09 18:42:25 +00:00
ObjectYAML Reland "[DebugInfo] Support DWARF expressions in eh_frame" 2018-03-08 00:46:53 +00:00
Option [Bash-autocompletion] Pass all flags in shell command-line to Clang 2018-03-05 08:54:20 +00:00
Passes
ProfileData [SampleFDO] Extend SampleProfReader to handle demangled names. 2018-03-07 16:45:33 +00:00
Support Fix compilation on Darwin with expensive checks. 2018-03-12 11:01:05 +00:00
TableGen TableGen: Remove space at EOL in TGLexer.{h,cpp} 2018-03-09 18:32:04 +00:00
Target [Hexagon] Subtarget feature to emit one instruction per packet 2018-03-12 17:47:46 +00:00
Testing
ToolDrivers
Transforms [ThinLTO] Recommit of import global variables 2018-03-12 10:30:50 +00:00
WindowsManifest
XRay
CMakeLists.txt
LLVMBuild.txt