Add support for hardware / software watchpoints. Initially should only support watching a variable, but in the future should be expanded to support expressions.
Any update on this? Is there a different thread I can follow along with?
Watchpoints are the reason I use a debugger at all. They are invaluable. If possible, please prioritize them.
Especially setting watchpoints on channels would be really useful to follow execution flow.
I have a question here: are hardware watchpoints realized by CPU debug registers DR0 ~ DR3 on amd64?
Especially setting watchpoints on channels would be really useful to follow execution flow.
Writing to a channel is actually converted into a function call, so it would just be a regular conditional breakpoint on runtime.chansend/runtime.chanrecv (however it is currently impossible to write the appropriate condition).
I have a question here: are hardware watchpoints realized by CPU debug registers DR0 ~ DR3 on amd64?
Yes, however things are complicated substantially by stack resize operations.
Hi. Is this being working on ? Right now I've found during VSCode + dlv debugging, I can see the watched variables' value, but can't see the program is stopped when the watched variables are changed, which seems not to match watch semantics. Better to behave like gdb watch
Most helpful comment
Watchpoints are the reason I use a debugger at all. They are invaluable. If possible, please prioritize them.