[webkit-dev] Static source code analysis

Ferenc, Rudolf ferenc at inf.u-szeged.hu
Wed May 28 02:38:45 PDT 2008

Dear all,

My colleague Péter Siket and me are also members of the Open Source Laboratory 
at the Department of Software Engineering, University of Szeged, Hungary. We are 
performing R&D in static source code analysis and started to examine the source 
code of WebKit. In our preliminary checks we found four bugs (one missing 
initialization and three unchecked malloc-s), which are easy to fix. We reported 
these bugs in Bugzilla:

   Rudolf Ferenc
   Department of Software Engineering, University of Szeged, Hungary

Akos Kiss wrote:
> -------- Eredeti üzenet --------
> Tárgy: [webkit-dev] interested in js speed-up
> Dátum: Tue, 04 Mar 2008 09:32:26 +0100
> Feladó: Akos Kiss <akiss at inf.u-szeged.hu>
> Címzett: webkit-dev at lists.webkit.org
> Dear all,
> (sorry, I don't know whom to contact directly)
> we have a small team at the Department of Software Engineering,
> University of Szeged, Hungary, and we got interested in speeding up the
> JavaScript engine of WebKit. We would be happy to use our compiler
> background for the benefit of the project.
> http://gcc.gnu.org/projects/cfo.html
> http://www.inf.u-szeged.hu/symbian-gcc/
> http://www.inf.u-szeged.hu/gcc-arm/
> http://www.inf.u-szeged.hu/csibe/
> We have compiled a small list of enhancement possibilities, see below.
> Please consider it as the view of an outsider.
> ---
> 1) Optimizing the AST
>   a) either during AST building
>   b) or the already built, complete AST, possibly in a background thread.
> Comment: The execution model of the JS engine is quite simple. It simply
> builds an AST from the source and executes it. Thus, there are no CFG,
> basic blocks, use-definition chains, etc., which are common in
> traditional optimizing compilers. This either makes the possible
> optimizations less powerful or requires significan effort to implement
> such analysis techniques.
> 2) Optimizing the AST execution.
> Comment: Not enough knowledge on the internals.
> 3) JIT compiling the AST to another language.
>   a) JIT compilation to native code.
> Comment: Furthermore, the engine is currently platform independent. This
> would require platform-specific code on a per platform basis.
>   b) JIT compilation to Java bytecode or ActionScript bytecode.
> Comment: Huge work. Currently available compiler implementations do not
> fit to the architecture of the JS engine.
>   c) JIT compilation to a new intermediate language.
> Comment: Is it a good idea to come up with yet-another-bytecode?
> Interesting: According to the homepage, there are plans to use a
> bytecode interpreter in the JS engine. However, it is not specified what
> kind of bytecode is meant: Java, ActionScript, or a new one?
> ---
> So, this is our view. But before starting any work, we would like to
> hear the opinion of the developers. What do you think of the above? Did
> we left out something important? Do you think that we can contribute
> somehow?
> Best regards,
> Akos Kiss
> Department of Software Engineering, University of Szeged, Hungary
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

More information about the webkit-dev mailing list