mirror of
https://github.com/RPCS3/llvm.git
synced 2025-04-02 05:12:20 +00:00
Provide more details for DINameSpace debug info in the IR comment annotations
Sorry for the version skew - I should've committed this before the corresponding Clang test case. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177486 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
42317ccb5f
commit
1cd30fd994
@ -640,6 +640,8 @@ namespace llvm {
|
||||
|
||||
/// DINameSpace - A wrapper for a C++ style name space.
|
||||
class DINameSpace : public DIScope {
|
||||
friend class DIDescriptor;
|
||||
void printInternal(raw_ostream &OS) const;
|
||||
public:
|
||||
explicit DINameSpace(const MDNode *N = 0) : DIScope(N) {}
|
||||
DIScope getContext() const { return getFieldAs<DIScope>(1); }
|
||||
|
@ -1033,6 +1033,8 @@ void DIDescriptor::print(raw_ostream &OS) const {
|
||||
DIVariable(DbgNode).printInternal(OS);
|
||||
} else if (this->isObjCProperty()) {
|
||||
DIObjCProperty(DbgNode).printInternal(OS);
|
||||
} else if (this->isNameSpace()) {
|
||||
DINameSpace(DbgNode).printInternal(OS);
|
||||
} else if (this->isScope()) {
|
||||
DIScope(DbgNode).printInternal(OS);
|
||||
}
|
||||
@ -1106,6 +1108,14 @@ void DICompositeType::printInternal(raw_ostream &OS) const {
|
||||
OS << " [" << A.getNumElements() << " elements]";
|
||||
}
|
||||
|
||||
void DINameSpace::printInternal(raw_ostream &OS) const {
|
||||
StringRef Name = getName();
|
||||
if (!Name.empty())
|
||||
OS << " [" << Name << ']';
|
||||
|
||||
OS << " [line " << getLineNumber() << ']';
|
||||
}
|
||||
|
||||
void DISubprogram::printInternal(raw_ostream &OS) const {
|
||||
// TODO : Print context
|
||||
OS << " [line " << getLineNumber() << ']';
|
||||
|
Loading…
x
Reference in New Issue
Block a user