aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2010-08-02 22:51:46 +0000
committerDevang Patel <dpatel@apple.com>2010-08-02 22:51:46 +0000
commit5b164b5a5cab577fdfc21b22b78b3207dbcfbcf1 (patch)
tree97555581a865cfdabf1def731a831c1ff7d0203e
parent32a9e831c27dd18e388e02a6bf1e95aae240c575 (diff)
downloadexternal_llvm-5b164b5a5cab577fdfc21b22b78b3207dbcfbcf1.zip
external_llvm-5b164b5a5cab577fdfc21b22b78b3207dbcfbcf1.tar.gz
external_llvm-5b164b5a5cab577fdfc21b22b78b3207dbcfbcf1.tar.bz2
Add explicit constructors. Patch by Renato Golin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110072 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/Analysis/DebugInfo.h11
-rw-r--r--lib/Analysis/DebugInfo.cpp15
2 files changed, 26 insertions, 0 deletions
diff --git a/include/llvm/Analysis/DebugInfo.h b/include/llvm/Analysis/DebugInfo.h
index f6e7832..488c48a 100644
--- a/include/llvm/Analysis/DebugInfo.h
+++ b/include/llvm/Analysis/DebugInfo.h
@@ -36,6 +36,12 @@ namespace llvm {
class LLVMContext;
class raw_ostream;
+ class DIFile;
+ class DISubprogram;
+ class DILexicalBlock;
+ class DIVariable;
+ class DIType;
+
/// DIDescriptor - A thin wraper around MDNode to access encoded debug info.
/// This should not be stored in a container, because underly MDNode may
/// change in certain situations.
@@ -61,6 +67,11 @@ namespace llvm {
public:
explicit DIDescriptor() : DbgNode(0) {}
explicit DIDescriptor(const MDNode *N) : DbgNode(N) {}
+ explicit DIDescriptor(const DIFile F);
+ explicit DIDescriptor(const DISubprogram F);
+ explicit DIDescriptor(const DILexicalBlock F);
+ explicit DIDescriptor(const DIVariable F);
+ explicit DIDescriptor(const DIType F);
bool Verify() const { return DbgNode != 0; }
diff --git a/lib/Analysis/DebugInfo.cpp b/lib/Analysis/DebugInfo.cpp
index 472669c..77e0ece 100644
--- a/lib/Analysis/DebugInfo.cpp
+++ b/lib/Analysis/DebugInfo.cpp
@@ -32,6 +32,21 @@ using namespace llvm::dwarf;
// DIDescriptor
//===----------------------------------------------------------------------===//
+DIDescriptor::DIDescriptor(const DIFile F) : DbgNode(F.DbgNode) {
+}
+
+DIDescriptor::DIDescriptor(const DISubprogram F) : DbgNode(F.DbgNode) {
+}
+
+DIDescriptor::DIDescriptor(const DILexicalBlock F) : DbgNode(F.DbgNode) {
+}
+
+DIDescriptor::DIDescriptor(const DIVariable F) : DbgNode(F.DbgNode) {
+}
+
+DIDescriptor::DIDescriptor(const DIType F) : DbgNode(F.DbgNode) {
+}
+
StringRef
DIDescriptor::getStringField(unsigned Elt) const {
if (DbgNode == 0)