diff options
author | Devang Patel <dpatel@apple.com> | 2010-12-08 20:18:20 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2010-12-08 20:18:20 +0000 |
commit | 0a2551de2c61b372d45b236b413a5d2e15225c0f (patch) | |
tree | 5984b9921eb18f8cedf78f29fcf7075f0252a0f3 /include/llvm/Analysis | |
parent | f4f39d35cd30073362c04ab5c37dda6d646d4b0b (diff) | |
download | external_llvm-0a2551de2c61b372d45b236b413a5d2e15225c0f.zip external_llvm-0a2551de2c61b372d45b236b413a5d2e15225c0f.tar.gz external_llvm-0a2551de2c61b372d45b236b413a5d2e15225c0f.tar.bz2 |
Add support to create class type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121279 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis')
-rw-r--r-- | include/llvm/Analysis/DIBuilder.h | 22 | ||||
-rw-r--r-- | include/llvm/Analysis/DebugInfo.h | 1 |
2 files changed, 21 insertions, 2 deletions
diff --git a/include/llvm/Analysis/DIBuilder.h b/include/llvm/Analysis/DIBuilder.h index 50382c2..0140f93 100644 --- a/include/llvm/Analysis/DIBuilder.h +++ b/include/llvm/Analysis/DIBuilder.h @@ -142,6 +142,26 @@ namespace llvm { uint64_t AlignInBits, uint64_t OffsetInBits, unsigned Flags, DIType Ty); + /// CreateClassType - Create debugging information entry for a class. + /// @param Scope Scope in which this class is defined. + /// @param Name class name. + /// @param File File where this member is defined. + /// @param LineNo Line number. + /// @param SizeInBits Member size. + /// @param AlignInBits Member alignment. + /// @param OffsetInBits Member offset. + /// @param Flags Flags to encode member attribute, e.g. private + /// @param Elements class members. + /// @param VTableHolder Debug info of the base class that contains vtable + /// for this type. This is used in + /// DW_AT_containing_type. See DWARF documentation + /// for more info. + DIType CreateClassType(DIDescriptor Scope, StringRef Name, DIFile File, + unsigned LineNumber, uint64_t SizeInBits, + uint64_t AlignInBits, uint64_t OffsetInBits, + unsigned Flags, DIType DerivedFrom, + DIArray Elements, MDNode *VTableHolder = 0); + /// CreateStructType - Create debugging information entry for a struct. /// @param Scope Scope in which this struct is defined. /// @param Name Struct name. @@ -149,7 +169,6 @@ namespace llvm { /// @param LineNo Line number. /// @param SizeInBits Member size. /// @param AlignInBits Member alignment. - /// @param OffsetInBits Member offset. /// @param Flags Flags to encode member attribute, e.g. private /// @param Elements Struct elements. /// @param RunTimeLang Optional parameter, Objective-C runtime version. @@ -165,7 +184,6 @@ namespace llvm { /// @param LineNo Line number. /// @param SizeInBits Member size. /// @param AlignInBits Member alignment. - /// @param OffsetInBits Member offset. /// @param Flags Flags to encode member attribute, e.g. private /// @param Elements Union elements. /// @param RunTimeLang Optional parameter, Objective-C runtime version. diff --git a/include/llvm/Analysis/DebugInfo.h b/include/llvm/Analysis/DebugInfo.h index 5f4db24..f0effb7 100644 --- a/include/llvm/Analysis/DebugInfo.h +++ b/include/llvm/Analysis/DebugInfo.h @@ -288,6 +288,7 @@ namespace llvm { /// replaceAllUsesWith - Replace all uses of debug info referenced by /// this descriptor. void replaceAllUsesWith(DIDescriptor &D); + void replaceAllUsesWith(MDNode *D); /// print - print type. void print(raw_ostream &OS) const; |