llvm-project/llvm/lib
Taewook Oh fb1833efeb [BranchFolding] Merge debug locations from common tail instead of removing
Summary: D25742 improved the precision of debug locations for PGO by removing debug locations from common tail when tail-merging. However, if identical insturctions that are merged into a common tail have the same debug locations, there's no need to remove them. This patch creates a merged debug location of identical instructions across SameTails and assign it to the instruction in the common tail, so that the debug locations are maintained if they are same across identical instructions.

Reviewers: aprantl, probinson, MatzeB, rob.lougher

Reviewed By: aprantl

Subscribers: andreadb, llvm-commits

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

llvm-svn: 297805
2017-03-15 05:44:59 +00:00
..
Analysis [ValueTracking] Out of range shifts might be undef 2017-03-14 10:13:17 +00:00
AsmParser [DebugInfo] Emit address space with DW_AT_address_class attribute for pointer and reference types 2017-03-08 23:55:44 +00:00
Bitcode SamplePGO ThinLTO ICP fix for local functions. 2017-03-14 17:33:01 +00:00
CodeGen [BranchFolding] Merge debug locations from common tail instead of removing 2017-03-15 05:44:59 +00:00
DebugInfo Fix llvm-symbolizer to navigate both DW_AT_abstract_origin and DW_AT_specification in a single chain 2017-03-13 21:46:37 +00:00
Demangle Add support for demangling C++11 thread_local variables. 2017-01-31 15:56:36 +00:00
ExecutionEngine [Orc] Rename ObjectLinkingLayer -> RTDyldObjectLinkingLayer. 2017-02-20 05:45:14 +00:00
Fuzzer [libFuzzer] remove even more stale code 2017-03-15 00:39:06 +00:00
IR Revert "Debug Info: Add basic support for external types references." 2017-03-13 22:56:14 +00:00
IRReader Timer: Track name and description. 2016-11-18 19:43:18 +00:00
LTO LTO: Hash type identifier resolutions for WholeProgramDevirt. 2017-03-10 21:37:10 +00:00
LibDriver LibDriver: Allow resource files to be archive members. 2016-12-15 19:37:46 +00:00
LineEditor
Linker [Linker] Provide callback for internalization 2017-03-13 18:08:11 +00:00
MC [WebAssembly] Use LEB encoding for value types 2017-03-14 20:23:22 +00:00
Object Archives require a symbol table on Solaris, even if empty. 2017-03-14 19:57:13 +00:00
ObjectYAML [ObjectYAML] Fix issue with DWARF2 AddrSize 8 2017-03-07 21:34:35 +00:00
Option Cleanup dump() functions. 2017-01-28 02:02:38 +00:00
Passes Add call branch annotation for ICP promoted direct call in SamplePGO mode. 2017-02-23 22:15:18 +00:00
ProfileData SamplePGO ThinLTO ICP fix for local functions. 2017-03-14 17:33:01 +00:00
Support Make FileOutputBuffer fail early if you pass a directory. 2017-03-13 22:19:05 +00:00
TableGen Use print() instead of dump() in code 2017-01-28 02:47:46 +00:00
Target [globalisel] LLVM_BUILD_GLOBAL_ISEL=OFF should prevent GlobalISel instruction selector from being declared. 2017-03-14 22:09:29 +00:00
Transforms MemCpyOptimizer: don't create new addrspace casts 2017-03-14 22:37:38 +00:00
XRay [XRAY] [x86_64] Adding a Flight Data filetype reader to the llvm-xray Trace implementation. 2017-02-17 01:47:16 +00:00
CMakeLists.txt [XRay] Define the library for XRay trace logs 2017-01-11 06:39:09 +00:00
LLVMBuild.txt Add an c++ itanium demangler to llvm. 2016-09-06 19:16:48 +00:00