JavaScript:TraceMonkey: Difference between revisions
No edit summary |
|||
Line 1: | Line 1: | ||
== Playing with TraceMonkey == | |||
TraceMonkey is currently available for testing in [ftp://ftp.mozilla.org/pub/firefox/nightly/latest-trunk/ nightly builds]. You will need to go take the following steps to turn it on: | |||
* open a new tab | |||
* type '''about:config''' and hit enter | |||
* read the warning and heed its wisdom | |||
* enter '''jit''' in the filter field | |||
* double click on '''javascript.options.jit.chrome''' and '''javascript.options.jit.content''' to change their values to '''true''' | |||
If you experience instability, please [http://bugzilla.mozilla.org file a bug] and reference any crash report ID that might be relevant. | |||
== Hacking on TraceMonkey == | == Hacking on TraceMonkey == | ||
Revision as of 19:52, 5 September 2008
Playing with TraceMonkey
TraceMonkey is currently available for testing in nightly builds. You will need to go take the following steps to turn it on:
- open a new tab
- type about:config and hit enter
- read the warning and heed its wisdom
- enter jit in the filter field
- double click on javascript.options.jit.chrome and javascript.options.jit.content to change their values to true
If you experience instability, please file a bug and reference any crash report ID that might be relevant.
Hacking on TraceMonkey
The TM tree is located at http://hg.mozilla.org/tracemonkey.
We are currently still in rapid development mode. Our commit policy is as follows: "If you are confident you know what you are doing, push now and prepare to answer questions later if you break the tree." If you have commit access to hg.mozilla.org, feel free to commit any patch you feel is sensible. Even white-space cleanup, additional comments or general code cleanup/naming consistency changes are welcome.
Run trace-test.js and all benchmarks in t/* before you commit. Commits that break any of these tests are allowed if sensible, but please let everyone know why you break what and what has to happen to fix it.
The main channel to discuss TM is #jsapi on irc.mozilla.org.
TraceMonkey Tasks
Beta 1
- fuzzer bugs fixed
- slow script dialog
- perf matches a2
- test suites passing
- gcov
- content_jit
- nanojit x86 (this works, but it must remain so)
- OOM nanojit/tracer testing
- disable tracer in the presence of debugger
Beta 2
- tracing recursion
- trace over DOM fast stubs (not into)
- event handler tracing
- ARM nanojit
Future Features
- SSE opts
- PPC nanojit
- built-in reg usage