JS engine modularization: Difference between revisions

no edit summary
No edit summary
Line 12: Line 12:
Additionally, we can use directories to group related modules.  Again, this is primarily useful to assist newcomers in developing a hierarchical understanding of the code.
Additionally, we can use directories to group related modules.  Again, this is primarily useful to assist newcomers in developing a hierarchical understanding of the code.


This is an incremental project.  As developers work on a hunk of code, things tend to be rewritten/refactored into the new SpiderMonkey C++ style; hopefully the developer will consider doing a bit of extra work hoist out coherent hunks of code into new modules according to the following plan of record.
This is an incremental project.  As developers work on a hunk of code, things tend to be rewritten/refactored into the new SpiderMonkey C++ style. Reviewers should require new code or major alterations to follow the new style unless it would be impractical.


== Plan of Record  ==
== Plan of Record  ==
Line 26: Line 26:
** LifoAlloc, Vector, HashMap/Set, ...
** LifoAlloc, Vector, HashMap/Set, ...
* js/src/methodjit
* js/src/methodjit
* js/src/tracejit
* js/src/ion
* js/src/*jit
* js/src/vm: central, execution-mode-independent data structures: types and operations
* js/src/vm: central, execution-mode-independent data structures: types and operations
** [https://bugzilla.mozilla.org/show_bug.cgi?id=644074 Stack]: execution stack (done)
** [https://bugzilla.mozilla.org/show_bug.cgi?id=644074 Stack]: execution stack (done)
313

edits