summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR/DebugInfo.cpp
diff options
context:
space:
mode:
authorAdrian Prantl <aprantl@apple.com>2014-08-29 22:44:07 +0000
committerAdrian Prantl <aprantl@apple.com>2014-08-29 22:44:07 +0000
commitdaedfda8920080193319ee11334557635369a378 (patch)
tree7a3a7e832a754427ce8d33e6489f051f3f5e120e /llvm/lib/IR/DebugInfo.cpp
parent97bfbb84ebf301bff7a5b23d320c8ccf1c50321d (diff)
downloadbcm5719-llvm-daedfda8920080193319ee11334557635369a378.tar.gz
bcm5719-llvm-daedfda8920080193319ee11334557635369a378.zip
Debug info: Add a new explicit DIDescriptor flag for the "public" access
specifier and change the default behavior to only emit the DW_AT_accessibility(public) attribute when the isPublic() is explicitly set. rdar://problem/18154959 llvm-svn: 216799
Diffstat (limited to 'llvm/lib/IR/DebugInfo.cpp')
-rw-r--r--llvm/lib/IR/DebugInfo.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/IR/DebugInfo.cpp b/llvm/lib/IR/DebugInfo.cpp
index 284f0443939..b6f9b51b3d1 100644
--- a/llvm/lib/IR/DebugInfo.cpp
+++ b/llvm/lib/IR/DebugInfo.cpp
@@ -489,6 +489,7 @@ bool DIType::Verify() const {
Tag != dwarf::DW_TAG_inheritance && Tag != dwarf::DW_TAG_friend &&
getFilename().empty())
return false;
+
// DIType is abstract, it should be a BasicType, a DerivedType or
// a CompositeType.
if (isBasicType())
@@ -1344,6 +1345,8 @@ void DIType::printInternal(raw_ostream &OS) const {
OS << " [private]";
else if (isProtected())
OS << " [protected]";
+ else if (isPublic())
+ OS << " [public]";
if (isArtificial())
OS << " [artificial]";
@@ -1403,6 +1406,8 @@ void DISubprogram::printInternal(raw_ostream &OS) const {
OS << " [private]";
else if (isProtected())
OS << " [protected]";
+ else if (isPublic())
+ OS << " [public]";
if (isLValueReference())
OS << " [reference]";
OpenPOWER on IntegriCloud