[fpc-devel] bounty: FPC based debugger

Jeppe Græsdal Johansen jjohan07 at student.aau.dk
Tue Sep 13 16:37:21 CEST 2011


Den 13-09-2011 16:52, Hans-Peter Diettrich skrev:
> Michael Schnell schrieb:
>> On 09/12/2011 11:16 PM, Hans-Peter Diettrich wrote:
>>>>  - watchpoints. break when data at memory address changed.
>>>  I've seen applications crawl when such a feature was used :-(
>>
>> This is bound to happen unless the CPU provides support for this.
>
> It's not the CPU, it's more the MMU which can help in finding changed 
> (global) variables. When the static data segment supports interrupts 
> on write, a debugger only has to check whether the affected address in 
> the watch list. Doing such checks on *every* write to memory (stack!?) 
> requires many more lookups.
>
> Hardware support for writes to arbitrary memory addresses is 
> restricted to very few addresses, not really useful.
How many times do you think you need more than 1-2 watchpoints? Lots of 
breakpoints I can understand, but I've never found many uses for 
watchpoints.
> That's why Delphi normally checks for changed values only when a 
> breakpoint is hit, not on every instruction.
That isn't really much of a watchpoint then, unless you single step.



More information about the fpc-devel mailing list