diff options
| author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2014-10-15 16:11:41 +0000 |
|---|---|---|
| committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2014-10-15 16:11:41 +0000 |
| commit | 3bfffde27a820789b37a0c6e3d7f32d3757f4b32 (patch) | |
| tree | 6afe88db9b138aa9fb7b045130879ec7fd087de4 /llvm/include | |
| parent | 146700ee64055aa49b5a5a690ac3bac8075e9aaa (diff) | |
| download | bcm5719-llvm-3bfffde27a820789b37a0c6e3d7f32d3757f4b32.tar.gz bcm5719-llvm-3bfffde27a820789b37a0c6e3d7f32d3757f4b32.zip | |
DI: Use a `DenseMap` instead of named metadata, NFC
Remove a strange round-trip through named metadata to assign preserved
local variables to their subprograms.
llvm-svn: 219798
Diffstat (limited to 'llvm/include')
| -rw-r--r-- | llvm/include/llvm/IR/DIBuilder.h | 3 | ||||
| -rw-r--r-- | llvm/include/llvm/IR/DebugInfo.h | 8 |
2 files changed, 3 insertions, 8 deletions
diff --git a/llvm/include/llvm/IR/DIBuilder.h b/llvm/include/llvm/IR/DIBuilder.h index d12a0c609db..8484d04e914 100644 --- a/llvm/include/llvm/IR/DIBuilder.h +++ b/llvm/include/llvm/IR/DIBuilder.h @@ -73,6 +73,9 @@ namespace llvm { SmallVector<Value *, 4> AllGVs; SmallVector<TrackingVH<MDNode>, 4> AllImportedModules; + /// Each subprogram's preserved local variables. + DenseMap<MDNode *, std::vector<TrackingVH<MDNode>>> PreservedVariables; + // Private use for multiple types of template parameters. DITemplateValueParameter createTemplateValueParameter(unsigned Tag, DIDescriptor Scope, diff --git a/llvm/include/llvm/IR/DebugInfo.h b/llvm/include/llvm/IR/DebugInfo.h index 510c36cb5cd..fe627d52dff 100644 --- a/llvm/include/llvm/IR/DebugInfo.h +++ b/llvm/include/llvm/IR/DebugInfo.h @@ -958,14 +958,6 @@ DISubprogram getDISubprogram(const MDNode *Scope); /// getDICompositeType - Find underlying composite type. DICompositeType getDICompositeType(DIType T); -/// getOrInsertFnSpecificMDNode - Return a NameMDNode that is suitable -/// to hold function specific information. -NamedMDNode *getOrInsertFnSpecificMDNode(Module &M, DISubprogram SP); - -/// getFnSpecificMDNode - Return a NameMDNode, if available, that is -/// suitable to hold function specific information. -NamedMDNode *getFnSpecificMDNode(const Module &M, DISubprogram SP); - /// createInlinedVariable - Create a new inlined variable based on current /// variable. /// @param DV Current Variable. |

