[Webkit-unassigned] [Bug 22736] New: State-of-art peephole state machine

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Dec 8 07:42:01 PST 2008


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

           Summary: State-of-art peephole state machine
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: All
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: jasy at inf.u-szeged.hu


We were thinking about if there any useful way to increase the maintainability
and the efficiency of the current peephole framework.

The current approach is quick, but the more peepholes are included the slower
the bytecode generation is. (Because the continuous checks.) We have
implemented a peephole framework which works with a state machine. The idea is
originated from the Tamarin. This state machine works in the following way:
1. After each bytecode is emitted the state machine changes its state according
to the given bytecode.  
2. If it is found a pattern candidate, it tries to apply the peephole. 
Otherwise it counts the states forward according to the next bytecodes.  

In this framework it is very easy to adding a new peephole pattern to the
system. All peepholes are grouped in the same file, and in a same style. We
found there is no performance regression with this new framework.

What are your opinions and thoughts about this solution?


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



More information about the webkit-unassigned mailing list