[m-dev.] add goal path at external ports
Mark Anthony BROWN
dougl at cs.mu.OZ.AU
Thu Jan 28 17:15:07 AEDT 1999
Erwan Jahier writes:
>
>
> | > Sure. But if I want to work out the coverage ratio of a several millions events
> | > execution, it would be far more too inneffective (see after).
> |
> | I don't understand.
>
> Because you need to stop at each internal event, push the path, the call number
> and the name of the procedure to the stack. Then you also need to stop at each
> external event, you need to look up in the stack, ...
>
> With what I propose, you only stop at external events, and not all of them;
> only the one not covered yet (this makes a big difference in you have a
> strongly recursive procedures for example, where you always have the path
> being covered).
>
Ok, I get it now.
> | > Well, is there any reason why this can't be done at compile time (i.e. when
> | > generating the code and the MR_trace statements ?)
> |
> | No, this could be done. But I forgot to mention my main point: I
> | think this could be done more easily in Opium.
>
> I know that.
> Could it be done at compile time ?
> (which is my original question)
>
If I understand you correctly, then yes. The goal path could be
stored in the MR_Stack_Layout_Label structure (at compile time), and
for each call you could find a way to pass the caller's stack layout
structure to the called procedure (so it can pass it to MR_trace,
or whatever).
Cheers,
Mark
--
Mark Brown (dougl at cs.mu.oz.au) )O+ | For Microsoft to win,
MEngSc student, | the customer must lose
Dept of Computer Science, Melbourne Uni | -- Eric S. Raymond
More information about the developers
mailing list