[Lldb-commits] [PATCH] D134111: [lldb] Add newline in output of `target modules lookup`
Alvin Wong via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Sat Sep 17 06:04:35 PDT 2022
alvinhochun created this revision.
alvinhochun added a reviewer: labath.
Herald added a project: All.
alvinhochun requested review of this revision.
Herald added a project: LLDB.
Herald added a subscriber: lldb-commits.
This adds a line break between each result address in the output of the
lldb command `target modules lookup`. Before this change, a new address
result will be printed on the same line as the summary of the last
result, making the output difficult to view.
Also adds a test for this command.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D134111
Files:
lldb/source/Commands/CommandObjectTarget.cpp
lldb/test/Shell/Commands/Inputs/symbols.yaml
lldb/test/Shell/Commands/command-target-modules-lookup.test
Index: lldb/test/Shell/Commands/command-target-modules-lookup.test
===================================================================
--- /dev/null
+++ lldb/test/Shell/Commands/command-target-modules-lookup.test
@@ -0,0 +1,13 @@
+# RUN: yaml2obj %S/Inputs/symbols.yaml -o %t
+
+# RUN: %lldb %t -b -o "target modules lookup -A -r -s some" | FileCheck %s -DMODULE=%basename_t.tmp
+# CHECK: 4 symbols match the regular expression 'some' in {{.*}}[[MODULE]]:
+# CHECK-NEXT: Address: [[MODULE]][0x0000000000000000] ([[MODULE]]..text + 0)
+# CHECK-NEXT: Summary: [[MODULE]]`someFunc(int, int, int)
+# CHECK-NEXT: Address: [[MODULE]][0x000000000000001c] ([[MODULE]]..text + 28)
+# CHECK-NEXT: Summary: [[MODULE]]`someFunc(char, int)
+# CHECK-NEXT: Address: [[MODULE]][0x0000000000000034] ([[MODULE]]..text + 52)
+# CHECK-NEXT: Summary: [[MODULE]]`someOtherFunc()
+# CHECK-NEXT: Address: [[MODULE]][0x0000000000000038] ([[MODULE]]..text + 56)
+# CHECK-NEXT: Summary: [[MODULE]]`someOtherFunc(double)
+# CHECK-NOT: ignoreThisFunction
Index: lldb/test/Shell/Commands/Inputs/symbols.yaml
===================================================================
--- /dev/null
+++ lldb/test/Shell/Commands/Inputs/symbols.yaml
@@ -0,0 +1,48 @@
+--- !ELF
+FileHeader:
+ Class: ELFCLASS64
+ Data: ELFDATA2LSB
+ Type: ET_REL
+ Machine: EM_AARCH64
+ SectionHeaderStringTable: .strtab
+Sections:
+ - Name: .text
+ Type: SHT_PROGBITS
+ Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
+ AddressAlign: 0x4
+ - Type: SectionHeaderTable
+ Sections:
+ - Name: .text
+ - Name: .strtab
+ - Name: .symtab
+Symbols:
+ - Name: _Z8someFunciii
+ Type: STT_FUNC
+ Section: .text
+ Binding: STB_GLOBAL
+ Size: 0x1C
+ - Name: _Z8someFuncci
+ Type: STT_FUNC
+ Section: .text
+ Binding: STB_GLOBAL
+ Value: 0x1C
+ Size: 0x18
+ - Name: _Z13someOtherFuncv
+ Type: STT_FUNC
+ Section: .text
+ Binding: STB_GLOBAL
+ Value: 0x34
+ Size: 0x4
+ - Name: _Z13someOtherFuncd
+ Type: STT_FUNC
+ Section: .text
+ Binding: STB_GLOBAL
+ Value: 0x38
+ Size: 0x10
+ - Name: _Z18ignoreThisFunctionv
+ Type: STT_FUNC
+ Section: .text
+ Binding: STB_GLOBAL
+ Value: 0x48
+ Size: 0x8
+...
Index: lldb/source/Commands/CommandObjectTarget.cpp
===================================================================
--- lldb/source/Commands/CommandObjectTarget.cpp
+++ lldb/source/Commands/CommandObjectTarget.cpp
@@ -1546,6 +1546,7 @@
DumpAddress(
interpreter.GetExecutionContext().GetBestExecutionContextScope(),
symbol->GetAddressRef(), verbose, all_ranges, strm);
+ strm.EOL();
} else {
strm.IndentMore();
strm.Indent(" Value: ");
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D134111.460999.patch
Type: text/x-patch
Size: 3160 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20220917/67edd949/attachment.bin>
More information about the lldb-commits
mailing list