## Description This pull request adds a new `stop-at-user-entry` option to LLDB `process launch` command, allowing users to launch a process and pause execution at the entry point of the program (for C-based languages, `main` function). ## Motivation This option provides a convenient way to begin debugging a program by launching it and breaking at the desired entry point. ## Changes Made - Added `stop-at-user-entry` option to `Options.td` and the corresponding case in `CommandOptionsProcessLaunch.cpp` (short option is 'm') - Implemented `GetUserEntryPointName` method in the Language plugins available at the moment. - Declared the `CreateBreakpointAtUserEntry` method in the Target API. - Create Shell test for the command `command-process-launch-user-entry.test`. ## Usage `process launch --stop-at-user-entry` or `process launch -m` launches the process and pauses execution at the entry point of the program.
9 lines
262 B
Plaintext
9 lines
262 B
Plaintext
# RUN: %clang_host -g %S/Inputs/main.c -o %t
|
|
# RUN: %lldb %t -s %s -o exit | FileCheck %s
|
|
|
|
process launch -m
|
|
# CHECK-LABEL: process launch -m
|
|
# CHECK: Process {{.*}} stopped
|
|
# CHECK: stop reason = one-shot breakpoint 1
|
|
# CHECK: frame #0: {{.*}}`main at main.c
|