delve/pkg/proc
Suzy Mueller c426c5b38d
pkg/proc: configure target to not clear stepping breakpoints (#2635)
In order for DAP to support halting the program (either manually or on a breakpoint) performing some action and then resuming execution, there needs to be a way to stop the program without clearing the internal breakpoints. This is necessary for log points and stopping the program to set breakpoints.

The debugging UI makes it seem like a user should be able to set or clear a breakpoint at any time. Adding this ability to complete synchronous requests while the program is running is thus important to create a seamless user experience.

This change just adds a configuration to determine whether the target should clear the stepping breakpoints, and changes the server to use this new mode. Using the new mode means that the DAP server must determine when it expect the next to be canceled and do this manually.
2021-08-09 10:56:20 -07:00
..
amd64util proc/native: low level support for watchpoints in linux/amd64 (#2301) 2021-05-06 10:33:56 -07:00
core proc: move breakpoint condition evaluation out of backends (#2628) 2021-08-09 10:16:24 -07:00
fbsdutil proc: remove duplicate Registers.Get implementations (#2415) 2021-04-28 10:00:26 -07:00
gdbserial proc: move breakpoint condition evaluation out of backends (#2628) 2021-08-09 10:16:24 -07:00
internal/ebpf *: Initial eBPF tracing support (#2625) 2021-07-31 17:16:26 +02:00
linutil proc: remove duplicate Registers.Get implementations (#2415) 2021-04-28 10:00:26 -07:00
macutil proc/native,proc/gdbserial: detect and complain about Rosetta (#2569) 2021-07-06 08:53:39 -07:00
native proc: move breakpoint condition evaluation out of backends (#2628) 2021-08-09 10:16:24 -07:00
test tests: check presence of gcc for cgo tests (#2644) 2021-08-04 14:12:15 -07:00
winutil proc: remove duplicate Registers.Get implementations (#2415) 2021-04-28 10:00:26 -07:00
amd64_arch.go pkg/proc: Prefer throw instead of fatalthrow (#2616) 2021-07-27 23:58:02 -07:00
amd64_disasm.go proc: remove duplicate Registers.Get implementations (#2415) 2021-04-28 10:00:26 -07:00
arch.go proc: add way to use CPU registers in expressions (#2446) 2021-05-04 12:56:17 -07:00
arm64_arch.go pkg/proc: Prefer throw instead of fatalthrow (#2616) 2021-07-27 23:58:02 -07:00
arm64_disasm.go proc: remove duplicate Registers.Get implementations (#2415) 2021-04-28 10:00:26 -07:00
bininfo.go dwarf/op,proc: implement more DWARF expression opcodes (#2606) 2021-08-03 09:51:15 -07:00
breakpoints.go proc,terminal,service: support stack watchpoints (#2521) 2021-08-09 10:41:25 -07:00
disasm.go proc: remove duplicate Registers.Get implementations (#2415) 2021-04-28 10:00:26 -07:00
doc.go Move top-level packages into pkg 2017-02-08 12:17:19 -08:00
dump.go terminal,service,proc/*: adds dump command (gcore equivalent) (#2173) 2021-01-29 13:39:33 -08:00
dwarf_export_test.go proc: give unique addresses to registerized variables (#2527) 2021-07-02 18:37:55 +02:00
dwarf_expr_test.go dwarf/op,proc: fix handling of DW_OP_piece (#2485) 2021-05-17 10:26:49 -07:00
eval.go proc: move breakpoint condition evaluation out of backends (#2628) 2021-08-09 10:16:24 -07:00
fncall.go dwarf/op,proc: implement more DWARF expression opcodes (#2606) 2021-08-03 09:51:15 -07:00
goroutine_cache.go proc/*,service: replace uses of uintptr with uint64 (#2163) 2020-09-09 10:36:15 -07:00
i386_arch.go pkg/proc: Prefer throw instead of fatalthrow (#2616) 2021-07-27 23:58:02 -07:00
i386_disasm.go proc: remove duplicate Registers.Get implementations (#2415) 2021-04-28 10:00:26 -07:00
interface.go *: Initial eBPF tracing support (#2625) 2021-07-31 17:16:26 +02:00
mem.go dwarf/op,proc: implement more DWARF expression opcodes (#2606) 2021-08-03 09:51:15 -07:00
moduledata.go proc: move breakpoint condition evaluation out of backends (#2628) 2021-08-09 10:16:24 -07:00
pe.go proc: fix typo 'unkown' => 'unknown' (#2473) 2021-05-10 11:36:03 -07:00
proc_general_test.go Go 1.17 support branch (#2451) 2021-07-08 08:47:53 -07:00
proc_linux_test.go proc/*: add launch option to disable ASLR (#2202) 2020-10-21 12:50:52 -07:00
proc_test.go pkg/proc: configure target to not clear stepping breakpoints (#2635) 2021-08-09 10:56:20 -07:00
proc_unexported_test.go proc: correctly truncate the result of binary ops on integers (#2463) 2021-05-17 10:31:05 -07:00
proc_unix_test.go proc/native/linux: better handling of process death due to signals (#2477) 2021-05-17 09:48:48 -07:00
registers.go proc: remove duplicate Registers.Get implementations (#2415) 2021-04-28 10:00:26 -07:00
scope_test.go proc: give unique addresses to registerized variables (#2527) 2021-07-02 18:37:55 +02:00
stack.go dwarf/op,proc: implement more DWARF expression opcodes (#2606) 2021-08-03 09:51:15 -07:00
stackwatch.go proc,terminal,service: support stack watchpoints (#2521) 2021-08-09 10:41:25 -07:00
target_exec.go pkg/proc: configure target to not clear stepping breakpoints (#2635) 2021-08-09 10:56:20 -07:00
target.go pkg/proc: configure target to not clear stepping breakpoints (#2635) 2021-08-09 10:56:20 -07:00
threads.go proc/*: implement proc.(*compositeMemory).WriteMemory (#2271) 2021-03-04 10:28:28 -08:00
types.go proc: make moduleDataToImage more robust (#2613) 2021-07-23 09:21:24 -07:00
variable_test.go pkg/proc: Move proc exec funcs to Target methods 2020-03-25 17:45:12 +01:00
variables.go proc: move breakpoint condition evaluation out of backends (#2628) 2021-08-09 10:16:24 -07:00
x86_disasm.go proc: remove duplicate Registers.Get implementations (#2415) 2021-04-28 10:00:26 -07:00