llvm-project/llvm/lib
Vedant Kumar b0585893cc [Mem2Reg] Create merged debug locations for inserted phis
Track the debug locations of the incoming values to newly-created phis,
and apply merged debug locations to the phis.

A merged location will be on line 0, but will have the correct scope
set. This improves crash reporting when an inlined instruction with a
merged location triggers a machine exception. A debugger will be able to
narrow down the crash to the correct inlined scope, instead of simply
pointing to the outer scope of the caller.

Taken together with a change allows generating merged line-0 locations
for  instructions which aren't calls, this results in a 0.5% increase in
the uncompressed size of the .debug_line section of a stage2+Release
build of clang (-O3 -g).

rdar://33858697

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

llvm-svn: 330227
2018-04-17 22:03:08 +00:00
..
Analysis [BasicAA] Return MayAlias for the pointer plus variable offset to 2018-04-16 01:58:39 +00:00
AsmParser Add the ShadowCallStack attribute 2018-04-03 20:10:40 +00:00
BinaryFormat Fix build broken by r328090 2018-03-21 12:18:03 +00:00
Bitcode [IR] Upgrade comment token in objc retain release marker for asm call 2018-04-17 04:02:24 +00:00
CodeGen [XRay] Typed event logging intrinsic 2018-04-17 21:30:29 +00:00
DebugInfo [llvm-pdbutil] Dump first section contribution for each module. 2018-04-17 20:06:43 +00:00
Demangle [demangler] Add a partial demangling API for LLDB. 2018-04-12 20:41:38 +00:00
ExecutionEngine [ORC] Add a MaterializationResponsibility class to track responsibility for 2018-04-16 18:05:24 +00:00
FuzzMutate [llvm-opt-fuzzer] Add irce to the fuzzing options 2018-03-20 11:32:13 +00:00
Fuzzer [libFuzzer] Delete llvm/lib/Fuzzer 2017-10-16 20:48:19 +00:00
IR [LLVM-C] [PR34633] Avoid calling ->dump() methods from LLVMDump*. 2018-04-17 14:52:43 +00:00
IRReader LLParser: add an argument for overriding data layout and do not check alloca addr space 2018-01-30 22:32:39 +00:00
LTO Rename ObjectMemoryBuffer to SmallVectorMemoryBuffer; NFCI 2018-04-16 03:44:03 +00:00
LineEditor
Linker [ThinLTO] Recommit of import global variables 2018-03-12 10:30:50 +00:00
MC [MC] Moved all the remaining logic that computed instruction latency and reciprocal throughput from TargetSchedModel to MCSchedModel. 2018-04-15 17:32:17 +00:00
Object COFF: Make SectionChunk::Relocs field an ArrayRef. NFCI. 2018-04-17 01:54:34 +00:00
ObjectYAML Fix line endings (CR/LF -> LF) introduced by rL329613 2018-04-10 00:09:15 +00:00
Option [NFC] Replace iterators in PrintHelp with range-based for 2018-03-12 18:31:07 +00:00
Passes Re-land r329273: [Plugins] Add a slim plugin API to work together with the new PM 2018-04-05 15:04:13 +00:00
ProfileData [ProfileData] Change std::sort to llvm::sort in response to r327219 2018-04-13 19:46:36 +00:00
Support Rename sys::Process::GetArgumentVector -> sys::windows::GetCommandLineArguments 2018-04-17 21:09:16 +00:00
TableGen [TableGen] Change std::sort to llvm::sort in response to r327219 2018-04-06 20:18:05 +00:00
Target [RISCV] implement li pseudo instruction 2018-04-17 21:56:40 +00:00
Testing [LLVMTestingSupport] Add explicit linkage to LLVMSupport 2018-04-08 06:49:17 +00:00
ToolDrivers [COFF] Keep the underscore on exported decorated stdcall functions in MSVC mode 2018-01-20 11:44:32 +00:00
Transforms [Mem2Reg] Create merged debug locations for inserted phis 2018-04-17 22:03:08 +00:00
WindowsManifest Convert line endings of lib/WindowsManifest/CMakeLists.txt to unix. 2018-04-07 04:28:08 +00:00
XRay [XRay] clarify error messages when parsing broken traces 2018-01-30 13:41:34 +00:00
CMakeLists.txt
LLVMBuild.txt