Javascript:SpiderMonkey:OdinMonkey: Difference between revisions

Line 18: Line 18:


== Possible further optimization projects ==
== Possible further optimization projects ==
* Move code generation into the parallel compilation tasks: {{bug|959263}}
* Further improve load-time:
* General backend optimizations:
** Parse and AOT compile while downloading: {{bug|1061886}}
** Move code generation into the parallel compilation tasks: {{bug|959263}}
** asm.js parser: Avoid building an intermediate parse tree; type check during recursive descent {{bug|854061}}
* Backend optimizations:
** Use callee-saved registers: {{bug|985065}}
** Use callee-saved registers: {{bug|985065}}
** Heap access: {{bug|986981}}, {{bug|870743}}, {{bug|897425}}, {{bug|915157}}, {{bug|983131}}, {{bug|865523}}, {{bug|984478}}, {{bug|1056027}}
** Heap access: {{bug|986981}}, {{bug|870743}}, {{bug|897425}}, {{bug|915157}}, {{bug|983131}}, {{bug|865523}}, {{bug|984478}}, {{bug|1056027}}
** Optimize add-with-overflow: {{bug|1043365}}
** Optimize add-with-overflow: {{bug|1043365}}
** Optimize min/max: {{bug|1060635}}
** Optimize min/max: {{bug|1060635}}
* Further improve load-time:
** For asm.js->asm.js calls on x86, pass the return value via xmm register, not fp stack
** Parse and AOT compile while downloading: {{bug|1061886}}
** Remove branching from double-to-int conversion using signal handler (see also {{bug|818750}})
** asm.js parser: Avoid building an intermediate parse tree; type check during recursive descent {{bug|854061}}
* For asm.js->asm.js calls on x86, pass the return value via xmm register, not fp stack
* Extend the asm.js signal handler tricks to:
** Remove idiv branching
** Remove double-to-int conversion branching (see also {{bug|818750}})


== Possible asm.js extensions that don't require new JS features ==
== Possible asm.js extensions that don't require new JS features ==
Confirmed users
367

edits