llvm-mirror/lib
Markus Lavin cc6ad63452 [DebugInfo] Introduce DW_OP_LLVM_convert
Introduce a DW_OP_LLVM_convert Dwarf expression pseudo op that allows
for a convenient way to perform type conversions on the Dwarf expression
stack. As an additional bonus it paves the way for using other Dwarf
v5 ops that need to reference a base_type.

The new DW_OP_LLVM_convert is used from lib/Transforms/Utils/Local.cpp
to perform sext/zext on debug values but mainly the patch is about
preparing terrain for adding other Dwarf v5 ops that need to reference a
base_type.

For Dwarf v5 the op maps to DW_OP_convert and for earlier versions a
complex shift & mask pattern is generated to emulate sext/zext.

This is a recommit of r356442 with trivial fixes for the failing tests.

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

llvm-svn: 356451
2019-03-19 13:16:28 +00:00
..
Analysis Revert "[ValueTracking][InstSimplify] Support min/max selects in computeConstantRange()" 2019-03-18 22:26:27 +00:00
AsmParser [DebugInfo] Introduce DW_OP_LLVM_convert 2019-03-19 13:16:28 +00:00
BinaryFormat [DebugInfo] Introduce DW_OP_LLVM_convert 2019-03-19 13:16:28 +00:00
Bitcode [ThinLTO] Restructure AliasSummary to contain ValueInfo of Aliasee 2019-03-15 15:11:38 +00:00
CodeGen [DebugInfo] Introduce DW_OP_LLVM_convert 2019-03-19 13:16:28 +00:00
DebugInfo [DebugInfo] Introduce DW_OP_LLVM_convert 2019-03-19 13:16:28 +00:00
Demangle
ExecutionEngine Add newline to interpreter debugging output 2019-03-07 10:14:38 +00:00
Fuzzer
FuzzMutate
IR [DebugInfo] Introduce DW_OP_LLVM_convert 2019-03-19 13:16:28 +00:00
IRReader
LineEditor
Linker
LTO Reland "[Remarks] Add -foptimization-record-passes to filter remark emission" 2019-03-12 21:22:27 +00:00
MC [DebugInfo] Introduce DW_OP_LLVM_convert 2019-03-19 13:16:28 +00:00
MCA [MCA] Highlight kernel bottlenecks in the summary view. 2019-03-04 11:52:34 +00:00
Object [WebAssembly] Improve support for "needed" list in dylink section 2019-03-13 21:29:20 +00:00
ObjectYAML [yaml2obj]Allow explicit setting of p_filesz, p_memsz, and p_offset 2019-03-15 10:35:27 +00:00
Option
Passes [PGO] Context sensitive PGO (part 3) 2019-03-04 20:21:27 +00:00
ProfileData [SampleFDO] add suffix elision control for fcn names 2019-03-14 13:56:49 +00:00
Remarks [Remarks][NFC] Rename RemarkParser to YAMLRemarkParser 2019-03-05 20:50:35 +00:00
Support [llvm-objcopy] Make .build-id linking atomic 2019-03-18 20:35:18 +00:00
TableGen [TableGen] Allow 2^63-1 and 2^63-2 as int literals. 2019-03-12 09:28:19 +00:00
Target [WebAssembly] Small improvements in FixIrreducibleControlFlow (NFC) 2019-03-19 05:26:33 +00:00
Testing
TextAPI
ToolDrivers
Transforms [DebugInfo] Introduce DW_OP_LLVM_convert 2019-03-19 13:16:28 +00:00
WindowsManifest
XRay
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