llvm-6502/include/llvm/IR
Duncan P. N. Exon Smith cb334476f1 DebugInfo: Require a DebugLoc in DIBuilder::insertDeclare()
Change `DIBuilder::insertDeclare()` and `insertDbgValueIntrinsic()` to
take an `MDLocation*`/`DebugLoc` parameter which it attaches to the
created intrinsic.  Assert at creation time that the `scope:` field's
subprogram matches the variable's.  There's a matching `clang` commit to
use the API.

The context for this is PR22778, which is removing the `inlinedAt:`
field from `MDLocalVariable`, instead deferring to the `!dbg` location
attached to the debug info intrinsic.  The best way to ensure we always
have a `!dbg` attachment is to require one at creation time.  I'll be
adding verifier checks next, but this API change is the best way to
shake out frontend bugs.

Note: I added an `llvm_unreachable()` in `bindings/go` and passed in
`nullptr` for the `DebugLoc`.  The `llgo` folks will eventually need to
pass a valid `DebugLoc` here.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@235041 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-15 21:18:07 +00:00
..
Argument.h
AssemblyAnnotationWriter.h
Attributes.h
AutoUpgrade.h
BasicBlock.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
CallingConv.h
CallSite.h [CallSite] Use the injected base class name. NFC. 2015-04-10 16:02:34 +00:00
CFG.h
CMakeLists.txt
Comdat.h
Constant.h
ConstantFolder.h [opaque pointer types] Push explicit type parameter for geps through the constant folders 2015-04-03 01:15:16 +00:00
ConstantRange.h
Constants.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
DataLayout.h
DebugInfo.h DebugInfo: Add implicit conversion from DISubprogram to DIScope 2015-04-14 16:19:44 +00:00
DebugInfoFlags.def
DebugInfoMetadata.h DebugInfo: Add MDLexicalBlockBase::getLine(), etc. 2015-04-14 02:50:07 +00:00
DebugLoc.h DebugLoc: Remove getFromDILexicalBlock() 2015-03-30 23:47:26 +00:00
DerivedTypes.h
DiagnosticInfo.h
DiagnosticPrinter.h
DIBuilder.h DebugInfo: Require a DebugLoc in DIBuilder::insertDeclare() 2015-04-15 21:18:07 +00:00
Dominators.h
Function.h Allow printing functions with an optional annotationwriter 2015-04-13 22:36:38 +00:00
GetElementPtrTypeIterator.h
GlobalAlias.h
GlobalObject.h Add some type safety to GlobalObject/GlobalValue - they're always PointerTypes so let's type them that way. 2015-04-06 18:06:06 +00:00
GlobalValue.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
GlobalVariable.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
GVMaterializer.h Fix PR23045. 2015-03-30 21:36:43 +00:00
InlineAsm.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
InstIterator.h
InstrTypes.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
Instruction.def
Instruction.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
Instructions.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
InstVisitor.h
IntrinsicInst.h
Intrinsics.h
Intrinsics.td [WinEH] Sink UnwindHelp completely out of IR 2015-04-03 22:32:26 +00:00
IntrinsicsAArch64.td
IntrinsicsARM.td
IntrinsicsBPF.td [bpf] add support for bpf pseudo instruction 2015-03-27 18:51:42 +00:00
IntrinsicsHexagon.td
IntrinsicsMips.td
IntrinsicsNVVM.td
IntrinsicsPowerPC.td Add LLVM support for remaining integer divide and permute instructions from ISA 2.06 2015-04-09 23:54:37 +00:00
IntrinsicsR600.td
IntrinsicsSystemZ.td [SystemZ] Support transactional execution on zEC12 2015-04-01 12:51:43 +00:00
IntrinsicsX86.td AVX-512: intrinsics for VPADD, VPMULDQ and VPSUB 2015-04-02 10:51:40 +00:00
IntrinsicsXCore.td
IRBuilder.h [opaque pointer type] Remove some backwards compatible GEP APIs 2015-04-05 22:53:21 +00:00
IRPrintingPasses.h uselistorder: Pull the bit through PrintModulePass 2015-04-15 02:38:06 +00:00
LegacyPassManager.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
LegacyPassManagers.h
LegacyPassNameParser.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
LLVMContext.h
Mangler.h
MDBuilder.h
Metadata.def
Metadata.h Remove empty non-virtual destructors or mark them =default when non-public 2015-04-11 15:32:26 +00:00
MetadataTracking.h
Module.h uselistorder: Pull the assembly bit up out of the printer 2015-04-15 02:12:41 +00:00
NoFolder.h [opaque pointer types] Push explicit type parameter for geps through the constant folders 2015-04-03 01:15:16 +00:00
OperandTraits.h
Operator.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
PassManager.h
PassManagerInternal.h
PatternMatch.h [InstCombine][CodeGenPrep] Create llvm.uadd.with.overflow in CGP. 2015-04-10 21:07:09 +00:00
PredIteratorCache.h
Statepoint.h
SymbolTableListTraits.h
TrackingMDRef.h
Type.h Remove empty non-virtual destructors or mark them =default when non-public 2015-04-11 15:32:26 +00:00
TypeBuilder.h
TypeFinder.h
Use.h
UseListOrder.h uselistorder: Remove the global bits 2015-04-15 03:14:06 +00:00
User.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
Value.h
ValueHandle.h
ValueMap.h Remove empty non-virtual destructors or mark them =default when non-public 2015-04-11 15:32:26 +00:00
ValueSymbolTable.h
Verifier.h