llvm-project/llvm/lib/IR
Scott Linder 16c7bdaf32 [DebugInfo] Support DWARF v5 source code embedding extension
In DWARF v5 the Line Number Program Header is extensible, allowing values with
new content types. In this extension a content type is added,
DW_LNCT_LLVM_source, which contains the embedded source code of the file.

Add new optional attribute for !DIFile IR metadata called source which contains
source text. Use this to output the source to the DWARF line table of code
objects. Analogously extend METADATA_FILE in Bitcode and .file directive in ASM
to support optional source.

Teach llvm-dwarfdump and llvm-objdump about the new values. Update the output
format of llvm-dwarfdump to make room for the new attribute on file_names
entries, and support embedded sources for the -source option in llvm-objdump.

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

llvm-svn: 325970
2018-02-23 23:01:06 +00:00
..
AsmWriter.cpp [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
AttributeImpl.h
Attributes.cpp [Attributes] Fix crash when attempting to remove alignment from an attribute list/set 2018-01-17 19:15:21 +00:00
AttributesCompatFunc.td
AutoUpgrade.cpp [X86] Add 512-bit unmasked pmulhrsw/pmulhw/pmulhuw intrinsics. Remove and auto upgrade 128/256/512 bit masked pmulhrsw/pmulhw/pmulhuw intrinsics. 2018-02-20 07:28:14 +00:00
BasicBlock.cpp IR: Fix BasicBlock::phis for empty blocks 2017-12-29 19:25:53 +00:00
CMakeLists.txt GCOV: Move GCOV from IR & Support into ProfileData to fix layering 2017-11-03 20:57:10 +00:00
Comdat.cpp
ConstantFold.cpp Silence a bunch of implicit fallthrough warnings 2017-12-19 22:05:25 +00:00
ConstantFold.h
ConstantRange.cpp [ConstantRange] Support for ashr in ConstantRange computation 2017-12-18 13:01:32 +00:00
Constants.cpp [InstCombine] fold fdiv with non-splat divisor to fmul: X/C --> X * (1/C) 2018-02-20 16:08:15 +00:00
ConstantsContext.h
Core.cpp [LLVM-C] Add Accessors For A Module's Source File Name 2018-01-30 21:34:29 +00:00
DIBuilder.cpp [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
DataLayout.cpp Add default address space for functions to the data layout (1/3) 2018-02-19 09:56:22 +00:00
DebugInfo.cpp Remove redundant includes from lib/IR. 2017-12-13 21:30:52 +00:00
DebugInfoMetadata.cpp [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
DebugLoc.cpp Remove redundant includes from lib/IR. 2017-12-13 21:30:52 +00:00
DiagnosticHandler.cpp Allow ORE.emit to take a closure to delay building the remark object 2017-09-19 23:00:55 +00:00
DiagnosticInfo.cpp This change add's optimization remark in LoopVersioning LICM pass. 2018-01-23 09:47:28 +00:00
DiagnosticPrinter.cpp
Dominators.cpp [JumpThreading] PR36133 enable/disable DominatorTree for LVI analysis 2018-02-16 16:35:17 +00:00
Function.cpp Add a ProfileCount class to represent entry counts. 2018-01-17 22:24:23 +00:00
GVMaterializer.cpp
Globals.cpp Represent runtime preemption in the IR. 2017-10-26 15:00:26 +00:00
IRBuilder.cpp [InstCombine] allow fmul-sqrt folds with less than full -ffast-math 2018-02-23 21:16:12 +00:00
IRPrintingPasses.cpp [IR] Avoid dangling else warning. NFC. 2017-12-01 18:39:58 +00:00
InlineAsm.cpp [inlineasm] Fix crash when number of matched input constraint operands overflows signed char 2017-10-25 12:51:32 +00:00
Instruction.cpp [IPSCCP] Remove calls without side effects 2018-01-09 21:58:46 +00:00
Instructions.cpp Syndicate duplicate code between CallInst and InvokeInst 2018-02-22 13:30:32 +00:00
IntrinsicInst.cpp Add ‘llvm.experimental.constrained.fma‘ Intrinsic. 2017-08-24 04:18:24 +00:00
LLVMBuild.txt
LLVMContext.cpp Irreducible loop metadata for more accurate block frequency under PGO. 2017-11-02 22:26:51 +00:00
LLVMContextImpl.cpp This patch fixes https://bugs.llvm.org/show_bug.cgi?id=32352 2017-09-15 20:10:09 +00:00
LLVMContextImpl.h [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
LegacyPassManager.cpp IR printing improvement for function passes - introducing -print-module-scope 2017-12-01 17:42:46 +00:00
MDBuilder.cpp [IR] Fix creating mutable versions of TBAA access tags 2018-02-13 14:44:25 +00:00
Mangler.cpp CodeGen: handle llvm.used properly for COFF 2018-01-20 00:28:02 +00:00
Metadata.cpp [DeadArgumentElimination] Preserve llvm.dbg.values's first argument 2018-01-30 16:42:04 +00:00
MetadataImpl.h
Module.cpp Intrinsics calls should avoid the PLT when "RtLibUseGOT" metadata is present. 2018-02-23 21:32:06 +00:00
ModuleSummaryIndex.cpp [ThinLTO] Add GraphTraits for FunctionSummaries 2018-02-19 15:14:50 +00:00
Operator.cpp Adding a width of the GEP index to the Data Layout. 2018-02-14 06:58:08 +00:00
OptBisect.cpp [IR] Missing changes for r312289 (NFC). 2017-08-31 22:06:09 +00:00
Pass.cpp Reverting r315590; it did not include changes for llvm-tblgen, which is causing link errors for several people. 2017-10-15 14:32:27 +00:00
PassManager.cpp
PassRegistry.cpp [Pass] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-09-06 23:05:38 +00:00
ProfileSummary.cpp
SafepointIRVerifier.cpp [SafepointIRVerifier] Allow non-dereferencing uses of unrelocated or poisoned PHI nodes 2017-12-25 09:35:10 +00:00
Statepoint.cpp
SymbolTableListTraitsImpl.h
Type.cpp [IR] Add Type::isIntOrIntVectorTy(unsigned) similar to the existing isIntegerTy(unsigned), but also works for vectors. 2017-07-09 07:04:03 +00:00
TypeFinder.cpp Use ranged for loops in TypeFinder.cpp, NFC 2018-02-08 18:02:27 +00:00
Use.cpp
User.cpp Remove redundant includes from lib/IR. 2017-12-13 21:30:52 +00:00
Value.cpp Adding a width of the GEP index to the Data Layout. 2018-02-14 06:58:08 +00:00
ValueSymbolTable.cpp [NVPTX] Assign valid global names 2017-12-04 14:19:33 +00:00
ValueTypes.cpp Test commit access 2018-01-10 19:27:20 +00:00
Verifier.cpp [DebugInfo] Unify ChecksumKind and Checksum value in DIFile 2018-02-12 19:45:54 +00:00