diff --git a/include/llvm/DebugInfo.h b/include/llvm/DebugInfo.h index 05ca3853c0c..3a2aff3f15c 100644 --- a/include/llvm/DebugInfo.h +++ b/include/llvm/DebugInfo.h @@ -604,12 +604,6 @@ namespace llvm { DIScope getContext() const { if (getScope().isSubprogram()) return getScope(); return getScope().getContext(); } unsigned getLineNumber() const { return getScope().getLineNumber(); } unsigned getColumnNumber() const { return getScope().getColumnNumber(); } - StringRef getDirectory() const { - return getFieldAs(1).getDirectory(); - } - StringRef getFilename() const { - return getFieldAs(1).getFilename(); - } DILexicalBlock getScope() const { return getFieldAs(2); } bool Verify() const; }; diff --git a/lib/IR/DIBuilder.cpp b/lib/IR/DIBuilder.cpp index 56024573dea..033af3bd1d7 100644 --- a/lib/IR/DIBuilder.cpp +++ b/lib/IR/DIBuilder.cpp @@ -1007,7 +1007,7 @@ DILexicalBlockFile DIBuilder::createLexicalBlockFile(DIDescriptor Scope, DIFile File) { Value *Elts[] = { GetTagConstant(VMContext, dwarf::DW_TAG_lexical_block), - File, + File.getFileNode(), Scope }; DILexicalBlockFile R(MDNode::get(VMContext, Elts)); diff --git a/lib/IR/DebugInfo.cpp b/lib/IR/DebugInfo.cpp index 990233404e7..5ab64265e49 100644 --- a/lib/IR/DebugInfo.cpp +++ b/lib/IR/DebugInfo.cpp @@ -664,16 +664,12 @@ DIArray DISubprogram::getVariables() const { StringRef DIScope::getFilename() const { if (!DbgNode) return StringRef(); - if (isLexicalBlockFile()) - return DILexicalBlockFile(DbgNode).getFilename(); return ::getStringField(getNodeField(DbgNode, 1), 0); } StringRef DIScope::getDirectory() const { if (!DbgNode) return StringRef(); - if (isLexicalBlockFile()) - return DILexicalBlockFile(DbgNode).getDirectory(); return ::getStringField(getNodeField(DbgNode, 1), 1); }