[m-dev.] Please help... once more
Erwan Jahier
Erwan.Jahier at irisa.fr
Tue Oct 17 19:29:55 AEDT 2000
| On 16-Oct-2000, Erwan Jahier <Erwan.Jahier at irisa.fr> wrote:
| > a+b+c: 216 seconds (user+sys)
| > a+b: 56 s
| > {}: 17 s
|
| My guess is that as discussed earlier probably most of the time is in
| MR_call_engine() and in particular in setjmp() and longjmp().
Sure. It was not a question. It was just to let you know the impact of making
the command strict.
| > ps: wrapping the call to (*filter_ptr)() in MR_COLLECT_filter() by the macro
| > MR_TRACE_CALL_MERCURY() was not necessary.
|
| Why not?
because MR_copy_regs_to_saved_regs() calls
restore_transient_registers();
save_registers();
MR_copy_saved_regs_to_regs() calls
restore_registers();
save_transient_registers();
Since MR_COLLECT_filter() is called just between MR_copy_regs_to_saved_regs()
and MR_copy_saved_regs_to_regs(), I thought the macro MR_TRACE_CALL_MERCURY()
was not necessary in that case. Did I miss something ?
| Do you just mean that by coincidence it happens to work if
| you remove it?
--
R1.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to: mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions: mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------
More information about the developers
mailing list