Javascript:SpiderMonkey:BaselineCompiler: Difference between revisions

(Created page with "== General Plan == === Landing === Land with basic functionality to make Firefox 23 This means making it into mozilla-inbound before May 13 Current ETA: make it into mozilla-...")
 
Line 21: Line 21:


=== Post Landing ===
=== Post Landing ===
Goals ordered by priority


* Remove persistent bytecode analysis (scriptAnalysis) on both Ion and Baseline
* Remove persistent bytecode analysis (scriptAnalysis) on both Ion and Baseline
** High priority.
** Will reduce memory usage greatly.
** Will reduce memory usage greatly.
** Removal enables Brian Hackett's "rm analyzeTypes"
** Removal enables Brian Hackett's "rm analyzeTypes"
Line 40: Line 39:
*** Richards
*** Richards
*** Splay
*** Splay
* Integrate Ion and Baseline further
* Integrate Ion and Baseline further
** Inline SetProp_NativeAdd operations using Baseline ICs.
** Inline SetProp_NativeAdd operations using Baseline ICs.
** Inline polymorphic, shape-guarded GetProp and SetProp operations using Baseline ICs.
** Inline polymorphic, shape-guarded GetProp and SetProp operations using Baseline ICs.
* Compile more ops with baseline (e.g. ES6 reset parameters)
* Compile more ops with baseline (e.g. ES6 reset parameters)
* Optimize new ES6 features
* Optimize new ES6 features
** Proxies
** Proxies
** Generators
** Generators
* Add support for try/finally
* Add support for try/finally
* Enable toggling debugger with code on the stack
* Enable toggling debugger with code on the stack
** Will require implementation of OST - on-stack transformation of jitcode
** Will require implementation of OST - on-stack transformation of jitcode
** OST also enables removing profiler instrumentation from default jitcode
** OST also enables removing profiler instrumentation from default jitcode
32

edits