aboutsummaryrefslogtreecommitdiff
path: root/lldb/test/Shell/ScriptInterpreter/Python
diff options
context:
space:
mode:
authorMed Ismail Bennani <medismail.bennani@gmail.com>2022-08-02 17:29:01 -0700
committerMed Ismail Bennani <medismail.bennani@gmail.com>2022-08-09 21:01:37 -0700
commit41c1a5f9bdc4cb6914e7971f50e4f45aeb11e087 (patch)
tree7e5e0050688cf5eba428eb0a3535548da407e30e /lldb/test/Shell/ScriptInterpreter/Python
parent13aa780f37e193d8c23a6c5ff98cc4c7febc1f95 (diff)
downloadllvm-41c1a5f9bdc4cb6914e7971f50e4f45aeb11e087.zip
llvm-41c1a5f9bdc4cb6914e7971f50e4f45aeb11e087.tar.gz
llvm-41c1a5f9bdc4cb6914e7971f50e4f45aeb11e087.tar.bz2
[lldb/crashlog] Add `-s|--skip-status` option to interactive mode
This patch introduces a new option for the interactive crashlog mode, that will prevent it from dumping the `process status` & `thread backtrace` output to the debugger console. This is necessary when lldb in running from an IDE, to prevent flooding the console with information that should be already present in the UI. rdar://96813296 Differential Revision: https://reviews.llvm.org/D131036 Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
Diffstat (limited to 'lldb/test/Shell/ScriptInterpreter/Python')
-rw-r--r--lldb/test/Shell/ScriptInterpreter/Python/Crashlog/skipped_status_interactive_crashlog.test43
1 files changed, 43 insertions, 0 deletions
diff --git a/lldb/test/Shell/ScriptInterpreter/Python/Crashlog/skipped_status_interactive_crashlog.test b/lldb/test/Shell/ScriptInterpreter/Python/Crashlog/skipped_status_interactive_crashlog.test
new file mode 100644
index 0000000..f32c2d9
--- /dev/null
+++ b/lldb/test/Shell/ScriptInterpreter/Python/Crashlog/skipped_status_interactive_crashlog.test
@@ -0,0 +1,43 @@
+# REQUIRES: python, native && target-aarch64 && system-darwin
+
+# RUN: mkdir -p %t.dir
+# RUN: yaml2obj %S/Inputs/interactive_crashlog/multithread-test.yaml > %t.dir/multithread-test
+# RUN: %lldb -b -o 'command script import lldb.macosx.crashlog' \
+# RUN: -o 'crashlog -a -i -s -t %t.dir/multithread-test %S/Inputs/interactive_crashlog/multithread-test.ips' \
+# RUN: -o 'command source -s 0 %s' 2>&1 | FileCheck %s
+
+# CHECK: "crashlog" {{.*}} commands have been installed, use the "--help" options on these commands
+
+process status
+# CHECK: Process 22511 stopped
+# CHECK-NEXT: * thread #3, stop reason = EXC_BAD_ACCESS
+# CHECK-NEXT: frame #0: 0x0000000100ec58f4 multithread-test`bar
+
+thread backtrace
+# CHECK: * thread #3, stop reason = EXC_BAD_ACCESS
+# CHECK-NEXT: * frame #0: 0x0000000100ec58f4 multithread-test`bar{{.*}} [artificial]
+# CHECK-NEXT: frame #1: 0x0000000100ec591b multithread-test`foo{{.*}} [artificial]
+# CHECK-NEXT: frame #2: 0x0000000100ec5a87 multithread-test`compute_pow{{.*}} [artificial]
+
+thread list
+# CHECK: Process 22511 stopped
+# CHECK-NEXT: thread #1: tid = 0x23c7fe, 0x000000019cc40b84 libsystem_kernel.dylib`__ulock_wait{{.*}}, queue = 'com.apple.main-thread'
+# CHECK-NEXT: thread #2: tid = 0x23c800, 0x000000019cc42c9c libsystem_kernel.dylib`{{.*}}
+# CHECK-NEXT: * thread #3: tid = 0x23c801, 0x0000000100ec58f4 multithread-test`bar{{.*}}, stop reason = EXC_BAD_ACCESS
+
+bt all
+# CHECK: thread #1, queue = 'com.apple.main-thread'
+# CHECK: frame #{{[0-9]+}}: 0x000000019cc40b84 libsystem_kernel.dylib`__ulock_wait{{.*}} [artificial]
+# CHECK: frame #{{[0-9]+}}: 0x0000000100ec5b3b multithread-test`main{{.*}} [artificial]
+# CHECK: frame #{{[0-9]+}}: 0x00000002230f8da7 dyld`start{{.*}} [artificial]
+# CHECK-NEXT: thread #2
+# CHECK-NEXT: frame #0: 0x000000019cc42c9c libsystem_kernel.dylib`__write_nocancel{{.*}} [artificial]
+# CHECK: frame #{{[0-9]+}}: 0x0000000100ec5957 multithread-test`call_and_wait{{.*}} [artificial]
+# CHECK: frame #{{[0-9]+}}: 0x000000019cc7e06b libsystem_pthread.dylib`_pthread_start{{.*}} [artificial]
+# CHECK: frame #{{[0-9]+}}: 0x000000019cc78e2b libsystem_pthread.dylib`thread_start{{.*}} [artificial]
+# CHECK-NEXT:* thread #3, stop reason = EXC_BAD_ACCESS
+# CHECK-NEXT: * frame #0: 0x0000000100ec58f4 multithread-test`bar{{.*}} [artificial]
+# CHECK-NEXT: frame #1: 0x0000000100ec591b multithread-test`foo{{.*}} [artificial]
+# CHECK-NEXT: frame #2: 0x0000000100ec5a87 multithread-test`compute_pow{{.*}} [artificial]
+# CHECK: frame #{{[0-9]+}}: 0x000000019cc7e06b libsystem_pthread.dylib`_pthread_start{{.*}} [artificial]
+# CHECK: frame #{{[0-9]+}}: 0x000000019cc78e2b libsystem_pthread.dylib`thread_start{{.*}} [artificial]