Mozilla 2/2008Q2 Goals: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
(No longer a draft) |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
These are the Mozilla 2 team goals for Q2 2008: | These are the Mozilla 2 team goals for Q2 2008: | ||
== Memory == | == Memory == | ||
Line 14: | Line 12: | ||
* Extend dehydra to all C dialects ({{bug|421097}}). | * Extend dehydra to all C dialects ({{bug|421097}}). | ||
* Finish dehydra and deploy on debug+leak tinderboxes, linux and mac ({{bug|425215}}, {{bug|421095}}, et al) | * Finish dehydra and deploy on debug+leak tinderboxes, linux and mac ({{bug|425215}}, {{bug|421095}}, et al) | ||
* See OOM goal above | * See OOM goal above | ||
* GCC summit presentation and continuing GCC community involvement | * GCC summit presentation and continuing GCC community involvement | ||
Line 26: | Line 23: | ||
* Replace Tamarin Central with Tamarin Tracing in ActionMonkey ({{bug|425818}}). | * Replace Tamarin Central with Tamarin Tracing in ActionMonkey ({{bug|425818}}). | ||
* Understand both SpiderMonkey and Tamarin-tracing object representation, including consequences for speed, memory usage, security, and host objects (embedding-defined object types—how they are defined, how they interact with the VM). This is a tall order but seems like a prerequisite to the rest. | * Understand both SpiderMonkey and Tamarin-tracing object representation, including consequences for speed, memory usage, security, and host objects (embedding-defined object types—how they are defined, how they interact with the VM). This is a tall order but seems like a prerequisite to the rest. | ||
* Merge SpiderMonkey's string optimizations into Tamarin Tracing ({{bug|427154}}). | * Merge SpiderMonkey's string optimizations into Tamarin Tracing ({{bug|427154}}). | ||
* <em>stretch goal:</em> Merge SpiderMonkey's property tree optimization into Tamarin Tracing ({{bug|427151}}). | |||
== XPCOMGC == | == XPCOMGC == | ||
* Finish analysis passes | |||
** Finalizer safety | |||
** pointer/storage annotations | |||
* Browser running mostly-correctly, and gather performance/memory statistics | * Browser running mostly-correctly, and gather performance/memory statistics | ||
Latest revision as of 20:10, 9 April 2008
These are the Mozilla 2 team goals for Q2 2008:
Memory
- In jemalloc, implement no-fail OOM by default and a separate can-fail allocator API: see Mozilla 2/Memory
- Implement the automatic-rewriting pass to get rid of null-checks for OOM. NOTE: this doesn't mean we will actually land the patch this quarter; that depends on identifying "large allocations" and exempting them from the normal rules
- jemalloc+GC API design complete, see GC_API
- In jemalloc, implement data structures and algorithms needed by the GC (bug 427231).
Automatic Rewriting/Analysis
- Extend dehydra to all C dialects (bug 421097).
- Finish dehydra and deploy on debug+leak tinderboxes, linux and mac (bug 425215, bug 421095, et al)
- See OOM goal above
- GCC summit presentation and continuing GCC community involvement
- Release Dehydra 1.0 and Pork
ActionMonkey
- Finish ActionMonkey Stage 2 by the end of April bug 411563. (The big wild card is the "no speed regression" requirement.)
- Get the ActionMonkey tinderboxen green, and the browser functional in actionmonkey branch, and keep them that way.
- Merge Tamarin Central's GC into Tamarin Tracing (bug 409021).
- Replace Tamarin Central with Tamarin Tracing in ActionMonkey (bug 425818).
- Understand both SpiderMonkey and Tamarin-tracing object representation, including consequences for speed, memory usage, security, and host objects (embedding-defined object types—how they are defined, how they interact with the VM). This is a tall order but seems like a prerequisite to the rest.
- Merge SpiderMonkey's string optimizations into Tamarin Tracing (bug 427154).
- stretch goal: Merge SpiderMonkey's property tree optimization into Tamarin Tracing (bug 427151).
XPCOMGC
- Finish analysis passes
- Finalizer safety
- pointer/storage annotations
- Browser running mostly-correctly, and gather performance/memory statistics
ES4 RI and Spec
These should be marked with ES4 ticket links as tickets are entered.
- RI: Merge new type normalizer to trunk, track any changes to valleyscript
- RI: Teach trunk to memoize type calculations, recovering some of the speed lost in previous step
- RI: Complete and merge all feature-cut branches to trunk, tracking spec changes
- RI: Transfer project hosting to hg
- Spec/RI: key remainder task from Q1, determine and codify package/namespace relationship
- Spec: reach consensus on the fate of decimal arithmetic
- RI: Implement new concept of runtime strict mode
- RI: Implement changes to const and object literals
- RI: Implement changes to array/tuple types