[PATCH] D116987: [clang][utils] Remove StringRef lldb summary provider
Dave Lee via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Jan 10 18:52:51 PST 2022
kastiglione created this revision.
kastiglione added reviewers: akyrtzi, jingham.
Herald added subscribers: usaxena95, arphaman.
kastiglione requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.
Remove the `StringRef` summary provider in favor of the implementation in
`llvm/utils/lldbDataFormatters.py`.
This implementation was resulting in errors in some cases.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D116987
Files:
clang/utils/ClangDataFormat.py
Index: clang/utils/ClangDataFormat.py
===================================================================
--- clang/utils/ClangDataFormat.py
+++ clang/utils/ClangDataFormat.py
@@ -24,7 +24,6 @@
def __lldb_init_module(debugger, internal_dict):
debugger.HandleCommand("type summary add -F ClangDataFormat.SourceLocation_summary clang::SourceLocation")
debugger.HandleCommand("type summary add -F ClangDataFormat.QualType_summary clang::QualType")
- debugger.HandleCommand("type summary add -F ClangDataFormat.StringRef_summary llvm::StringRef")
def SourceLocation_summary(srcloc, internal_dict):
return SourceLocation(srcloc).summary()
@@ -32,9 +31,6 @@
def QualType_summary(qualty, internal_dict):
return QualType(qualty).summary()
-def StringRef_summary(strref, internal_dict):
- return StringRef(strref).summary()
-
class SourceLocation(object):
def __init__(self, srcloc):
self.srcloc = srcloc
@@ -79,23 +75,6 @@
return "<NULL TYPE>"
return desc
-class StringRef(object):
- def __init__(self, strref):
- self.strref = strref
- self.Data_value = strref.GetChildAtIndex(0)
- self.Length = strref.GetChildAtIndex(1).GetValueAsUnsigned()
-
- def summary(self):
- if self.Length == 0:
- return '""'
- data = self.Data_value.GetPointeeData(0, self.Length)
- error = lldb.SBError()
- string = data.ReadRawData(error, 0, data.GetByteSize())
- if error.Fail():
- return None
- return '"%s"' % string
-
-
# Key is a (function address, type name) tuple, value is the expression path for
# an object with such a type name from inside that function.
FramePathMapCache = {}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D116987.398807.patch
Type: text/x-patch
Size: 1608 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20220111/987328b1/attachment.bin>
More information about the cfe-commits
mailing list