llvm-project/llvm/lib
Jeremy Morse a2b780b731 [DebugInfo] Use zero linenos for debug intrinsics when promoting dbg.declare
In certain circumstances, optimizations pick line numbers from debug
intrinsic instructions as the new location for altered instructions. This
is problematic because the line number of a debugging intrinsic is
meaningless (it doesn't produce any machine instruction), only the scope
information is valid. The result can be the line number of a variable
declaration "leaking" into real code from debugging intrinsics, making the
line table un-necessarily jumpy, and potentially different with / without
variable locations.

Fix this by using zero line numbers when promoting dbg.declare intrinsics
into dbg.values: this is safe for debug intrinsics as their line numbers
are meaningless, and reduces the scope for damage / misleading stepping
when optimizations pick locations from the wrong place.

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

llvm-svn: 360415
2019-05-10 10:03:41 +00:00
..
Analysis Compile time tweak for libcall lookup 2019-05-09 23:13:09 +00:00
AsmParser [LLParser] Remove unused variable after r359987. NFC 2019-05-05 17:46:17 +00:00
BinaryFormat [XCOFF] Add functionality for parsing AIX XCOFF object file headers 2019-04-04 00:53:21 +00:00
Bitcode Avoid use-after-move warnings by using swap instead. NFCI. 2019-05-07 15:45:00 +00:00
CodeGen [CodeGen] Add comment about FSUB <-> FNEG xforms 2019-05-09 19:28:52 +00:00
DebugInfo DebugInfo/DWARF: Minor expression simplification 2019-05-09 21:23:40 +00:00
Demangle llvm-undname: Fix assert-on->4GiB-string-literal, found by oss-fuzz 2019-04-24 16:09:38 +00:00
ExecutionEngine [JITLink] Fixed a signedness bug when processing X86_64_RELOC_SUBTRACTOR. 2019-05-09 23:17:41 +00:00
FuzzMutate [opaque pointer types] Pass value type to LoadInst creation. 2019-02-01 20:44:24 +00:00
Fuzzer
IR [llvm] Avoid div by 0 when updating profile weights. 2019-05-08 03:57:25 +00:00
IRReader [IRReader] Expose getLazyIRModule 2019-02-11 22:01:13 +00:00
LTO [ThinLTO] Adding architecture name into saved object filename 2019-04-29 21:39:54 +00:00
LineEditor Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Linker [Linker] Fix crash handling appending linkage 2019-03-20 19:20:07 +00:00
MC [AArch64][Windows] Compute function length correctly in unwind tables. 2019-05-03 00:10:45 +00:00
MCA [MCA] Remove dead assignment. NFC 2019-05-08 10:28:56 +00:00
Object [Object] Change SymbolicFile::printSymbolName to use Error 2019-05-10 09:59:04 +00:00
ObjectYAML MinidumpYAML: add support for the ThreadList stream 2019-05-09 15:13:53 +00:00
Option Option spell checking: Penalize delimiter flags if input has no argument 2019-05-01 16:45:15 +00:00
Passes [NewPM] Setup Passes for KASan and KMSan 2019-05-09 06:09:35 +00:00
ProfileData Fix a few -Werror warnings: 2019-04-30 21:44:21 +00:00
Remarks [Remarks] Add string deduplication using a string table 2019-04-24 00:06:24 +00:00
Support [FileCheck] Fix code style of method comments 2019-05-08 21:47:31 +00:00
TableGen [TableGen] Fix null pointer dereferencing in token parser. 2019-04-30 13:09:55 +00:00
Target [WebAssembly] Don't assume that strongly defined symbols are DSO-local 2019-05-10 01:52:08 +00:00
Testing [Testing] Move clangd::Annotations to llvm testing support 2019-04-25 10:08:31 +00:00
TextAPI [TextAPI] Fix Symbol::dump which was failing to append the SymbolKind string. 2019-04-29 18:25:04 +00:00
ToolDrivers [llvm-ar][libObject] Fix relative paths when nesting thin archives. 2019-02-13 23:39:41 +00:00
Transforms [DebugInfo] Use zero linenos for debug intrinsics when promoting dbg.declare 2019-05-10 10:03:41 +00:00
WindowsManifest Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
XRay Use llvm::stable_sort 2019-04-23 14:51:27 +00:00
CMakeLists.txt [OptRemarks] Make OptRemarks more generic: rename OptRemarks to Remarks 2019-03-05 20:45:17 +00:00
LLVMBuild.txt [OptRemarks] Make OptRemarks more generic: rename OptRemarks to Remarks 2019-03-05 20:45:17 +00:00