[m-rev.] for post-commit review: ssdb retry N

Julien Fischer juliensf at csse.unimelb.edu.au
Wed May 19 17:35:11 AEST 2010


On Wed, 19 May 2010, Peter Wang wrote:

> ssdb/ssdb.m:
>        Fix `retry N'.  The main problem was that the event number and CSN
>        counters were reset when the user enters the command, but for N > 0 we
>        need to perform forward execution before reaching the event to retry
>        from.  During forward execution the counters are incremented as usual,
>        so the debugger state is corrupted.
>
>        Delete code related to the special state `debugger_off', which was
>        somehow related to retrying from nondet exit ports.  It didn't make
>        sense and didn't work.  Rename `debugger_disabled' to `debugger_off'.
>
>        Change the shadow stack representation from `stack(T)' to `list(T)' as
>        the stack operations are too limited.

Is there a case to be made for adding extra operations to the stack
module?  (Or are these the sort of operations that would violate the
abstraction barrier with the stack ADT?)

>
>        Consistently use the mutables that record the shadow stack depths.
>        The old code made no sense and created performance problems by calling
>        `stack.depth', which is O(n).

Perhaps we should consider storing the depth of the stack separately so
that stack.depth is constant-time.

Julien.
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list