[webkit-dev] x32 support of JavaScriptCore

Xian, Yuqiang yuqiang.xian at intel.com
Thu Oct 11 00:13:40 PDT 2012

Thanks for the suggestions, Kenneth.

I'm refining the code and trying to enable the last major component - the low level interpreter for x32.
Yes it's ideal if we can upstream the code, and as you mentioned, keep maintaining it. The buildbot is a good idea while we are still way far from it - it requires a mature x32 system which at least supports all of the things that a WebKit port depends on. I know there're efforts porting Gentoo and Fedora to x32 - we may depend on each other.

Currently I'm testing the JSC shell only. Though I use the EFL port, I eliminated most of the unnecessary dependencies on EFL libraries to run the JSC shell, so that I don't need to put efforts on compiling and enabling those dependencies for x32 at current stage.

Thanks, -Yuqiang

-----Original Message-----
From: Kenneth Rohde Christiansen [mailto:kenneth.christiansen at gmail.com] 
Sent: 2012年10月11日 5:51
To: Xian, Yuqiang
Cc: webkit-dev at lists.webkit.org
Subject: Re: [webkit-dev] x32 support of JavaScriptCore


I don't think another branch on webkit.org will help you much; then
you can as well have a branch anywhere.

If you want this code to be well tested and maintained, you need to
get it upstream (through all the review process) and promise that you
have resources to keep maintaining it. It will also be an advantage if
we can get a buildbot running this exact configuration, so that others
can make sure they don't break your code.

I think that whether the community will accept it upstream depends
much about your commitment and the quality of the code, as well as how
well you interact with the community during the reviews.

Which port of WebKit is you currently using for testing?


On Wed, Oct 10, 2012 at 5:02 PM, Xian, Yuqiang <yuqiang.xian at intel.com> wrote:
> Hi,
> As you may already know there’s a new x32 ABI – a 32-bit psABI for x86-64
> with 32-bit pointer size. It tries to leverage the advantage of more
> registers and IP relative addressing from x64 and the advantage of smaller
> memory footprint from IA32. You can find more details of the x32 ABI here:
> https://sites.google.com/site/x32abi/.
> The Linux kernel supports x32 since 3.4, and the commonly used development
> tools and libraries are getting in the x32 support. Also more details about
> current status is available in the above link.
> Now back to WebKit. In theory most part of the WebKit code should be fine
> (or require less efforts) to support x32, if they’re pure C++ code and can
> be compiled with the x32 toolchain. The major challenge is the JIT compiler
> in the JavaScript engine (and the low level interpreter) and some
> hand-written assembly code. So I’m currently working on enabling the x32
> support of JavaScriptCore, the WebKit JavaScript engine, to try to remove
> the major obstacle. My current status is that I have enabled the baseline
> JIT, the DFG JIT and the Yarr JIT on x32 – it passes all the JavaScriptCore
> tests and the 3 major benchmarks.
> I’m posting this message in order to seek for some advices on how we should
> have our work shared to more people. I understand that it’s not very
> appropriate to try to get it into current WebKit trunk considering current
> x32 support status in major systems and the lack of maintenance in upstream,
> but we want to keep it synchronized with the newest changes of the WebKit
> code. So is it possible for us to maintain the code in a separate branch
> hosted at the WebKit server?
> Any suggestions are appreciated.
> Thanks, -Yuqiang
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> http://lists.webkit.org/mailman/listinfo/webkit-dev

Kenneth Rohde Christiansen
Senior Engineer, WebKit, Qt, EFL
Phone  +45 4093 0598 / E-mail kenneth at webkit.org


More information about the webkit-dev mailing list