Platform/JSDebugv2: Difference between revisions

Line 101: Line 101:
* For remote debugging, it would be very inefficient to report the creation and destruction of all JSScripts across the communication channel to the debugger.
* For remote debugging, it would be very inefficient to report the creation and destruction of all JSScripts across the communication channel to the debugger.


=== Estimates ===
=== Estimates for High-level Source Positions ===


Note that all estimates include time to write unit tests
Note that all estimates include time to write unit tests
Line 114: Line 114:
different than the original JSScript.
different than the original JSScript.


<p>For various reasons, SpiderMonkey is moving towards restricting each
For various reasons, SpiderMonkey is moving towards restricting each
JSScript to be used with a single global object (the next task; see details
JSScript to be used with a single global object (the next task; see details
there). Before we can impose this requirement, we must make it possible for
there). Before we can impose this requirement, we must make it possible for
Line 133: Line 133:




<dt>Change JSRuntime::scriptFilenameTable to use js::HashMap <i>(3 days)</i>
<dt>Change <span>JSRuntime::scriptFilenameTable</span> to use <span>js::HashMap</span> <i>(3 days)</i>


<dd>Since subsequent tasks will involve changing the data structures used
<dd>Since subsequent tasks will involve changing the data structures used
Line 161: Line 161:




<dt>Draft C++ js::dbg2 breakpoint API <i>(3 days)</i>
<dt>Draft C++ <span>js::dbg2</span> breakpoint API <i>(3 days)</i>


<dd>Write a C++ API declaring:
<dd>Write a C++ API declaring:
Line 209: Line 209:
appropriate.
appropriate.


<dt>Implement js::dbg2::Breakpoint<i>(days and days)</i>
<dt>Implement <span>js::dbg2::Breakpoint</span><i>(15 days)</i>


<dd>Implement the js::dbg2::Breakpoint class, including insertion and
<dd>Implement the js::dbg2::Breakpoint class, including insertion and
Line 222: Line 222:
in functions that have JM frames on the stack
in functions that have JM frames on the stack
</ul>
</ul>
</dl>
</dl>


Confirmed users
496

edits