Obviously, my next closely related question is, what is the most
convenient way to develop such a replay tool?
Any suggestions and ideas are very welcome! I appreciate it.
Thanks,
Yan
You won't be able generate traces for entire programs. The JIT works by
tracing through hot loops and generating multiple code fragments for each by
permuting for variable type change.
That said, you can get both LIR and native code for all the traces generated
by your program sent to stdout by running a debug build of tracemonkey with
the TMFLAGS=full environment variable set.
Wes
> _______________________________________________
> dev-tech-js-engine mailing list
> dev-tech-...@lists.mozilla.org
> https://lists.mozilla.org/listinfo/dev-tech-js-engine
>
--
Wesley W. Garland
Director, Product Development
PageMail, Inc.
+1 613 542 2787 x 102
What do you mean by LIR?
Thanks,
-- Yan
Yan is talking about trace not in the tracing jit sense but in the "log
of opcodes executed and their operands, so that the program execution
can be replayed" sense.
-Boris
I would certainly think so, but I'm curious what 'level' you would like
to replay at. For example, any program (JS or not) can be replayed if
you record the input, results of system calls, and context switches. But
I'm guessing that's not what you want to do. The natural thing that
occurs to me would be to record the bytecodes executed and some info
about the input and system call results. If you could give some more
description of what you want to do I might be able to give more concrete
ideas.
> Obviously, my next closely related question is, what is the most
> convenient way to develop such a replay tool?
>
> Any suggestions and ideas are very welcome! I appreciate it.
>
> Thanks,
> Yan
--
Dave