Do not rely on context to find file info. It is already provided as a separate field.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117577 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Devang Patel 2010-10-28 19:14:28 +00:00
parent 29129728f1
commit a514a4e172

View File

@ -582,8 +582,14 @@ namespace llvm {
explicit DINameSpace(const MDNode *N = 0) : DIScope(N) {}
DIScope getContext() const { return getFieldAs<DIScope>(1); }
StringRef getName() const { return getStringField(2); }
StringRef getDirectory() const { return getContext().getDirectory(); }
StringRef getFilename() const { return getContext().getFilename(); }
StringRef getDirectory() const {
DIFile F = getFieldAs<DIFile>(3);
return F.getDirectory();
}
StringRef getFilename() const {
DIFile F = getFieldAs<DIFile>(3);
return F.getFilename();
}
DICompileUnit getCompileUnit() const{
if (getVersion() == llvm::LLVMDebugVersion7)
return getFieldAs<DICompileUnit>(3);