diff options
author | Dan Gohman <gohman@apple.com> | 2010-08-20 22:02:26 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2010-08-20 22:02:26 +0000 |
commit | 489b29b0a4ee4526e3d50ad88d3d48745baf5042 (patch) | |
tree | 6602f14da364b9d6e0714e7b327adf14d7ffac23 /include/llvm/Analysis | |
parent | 95c79302259c03aa99010bbbc7d8ffeae3fa9740 (diff) | |
download | llvm-489b29b0a4ee4526e3d50ad88d3d48745baf5042.tar.gz llvm-489b29b0a4ee4526e3d50ad88d3d48745baf5042.tar.bz2 llvm-489b29b0a4ee4526e3d50ad88d3d48745baf5042.tar.xz |
Introduce a new temporary MDNode concept. Temporary MDNodes are
not part of the IR, are not uniqued, and may be safely RAUW'd.
This replaces a variety of alternate mechanisms for achieving
the same effect.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111681 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis')
-rw-r--r-- | include/llvm/Analysis/DebugInfo.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/include/llvm/Analysis/DebugInfo.h b/include/llvm/Analysis/DebugInfo.h index 625ca8a844..da226273a0 100644 --- a/include/llvm/Analysis/DebugInfo.h +++ b/include/llvm/Analysis/DebugInfo.h @@ -272,6 +272,10 @@ namespace llvm { StringRef getFilename() const { return getCompileUnit().getFilename();} StringRef getDirectory() const { return getCompileUnit().getDirectory();} + /// replaceAllUsesWith - Replace all uses of debug info referenced by + /// this descriptor. + void replaceAllUsesWith(DIDescriptor &D); + /// print - print type. void print(raw_ostream &OS) const; @@ -314,10 +318,6 @@ namespace llvm { /// dump - print derived type to dbgs() with a newline. void dump() const; - - /// replaceAllUsesWith - Replace all uses of debug info referenced by - /// this descriptor. - void replaceAllUsesWith(DIDescriptor &D); }; /// DICompositeType - This descriptor holds a type that can refer to multiple @@ -654,6 +654,9 @@ namespace llvm { unsigned RunTimeLang = 0, MDNode *ContainingType = 0); + /// CreateTemporaryType - Create a temporary forward-declared type. + DIType CreateTemporaryType(DIDescriptor Context); + /// CreateArtificialType - Create a new DIType with "artificial" flag set. DIType CreateArtificialType(DIType Ty); |