[Webkit-unassigned] [Bug 68794] Refactor code for JSVALUE32_64 DFG JIT

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Sep 26 02:39:36 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=68794





--- Comment #1 from Yuqiang Xian <yuqiang.xian at intel.com>  2011-09-26 02:39:36 PST ---
Created an attachment (id=108649)
 --> (https://bugs.webkit.org/attachment.cgi?id=108649&action=review)
WIP patch

This is the initial patch (WIP). Basically,

1) DFGJITCompiler.cpp and DFGJITCompiler32_64.cpp are merged, and some old unused routines for original spec->nonspec purpose have been removed.
2) Commonly used helper functions in DFGJITCodeGenerator have been extracted out to a newly created file "DFGJITCodeGeneratorHelpers.cpp". DFGJITCodeGenerator.cpp and DFGJITCodeGenerator32_64.cpp now only contain format specific nonSpeculative opcode implementations.
3) A DFG node is marked with more flags to indicate whether it should consume or produce a JS Value. For those nodes that don't involve JS values the code between JSVALUE64 and JSVALUE32_64 is shared in SpeculativeJIT. Currently we put all the stuffs into the single big DFGSpeculativeJIT.cpp file with "ifdef"s. Not sure whether we need to split them into different files. Also some problems still exist especially for ValueAdd and ArithAdd, where both nodes share some code but ValueAdd is format specific while ArithAdd is format neutral. So current WIP patch still has some unnecessary duplicates. Ideas on improving this are highly appreciated. Thanks a lot!

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list