[webkit-dev] Webkit port to ppc64le.

Filip Pizlo fpizlo at apple.com
Wed Feb 22 08:53:17 PST 2017


You have to port the llint either way since even the JIT relies on some llint code. 

-Filip

> On Feb 22, 2017, at 07:22, Atul Sowani <sowani at gmail.com> wrote:
> 
> Sure, thanks @Konstantin. So I will first attempt having working JIT on ppc64le. Your comments definitely helped in deciding the direction for porting. Thanks! :)
> 
>> On Wed, Feb 22, 2017 at 8:28 PM, Konstantin Tokarev <annulen at yandex.ru> wrote:
>> 
>> 
>> 22.02.2017, 17:41, "Atul Sowani" <sowani at gmail.com>:
>> > So, essentially, some tweaking in the code of LLInt/interpreter _is_ required when porting it to the new platform. Is my understanding correct?
>> 
>> Yes. In order to port LLInt you should implement offlineasm backend. See for example arm.rb, arm64.rb, mips.rb in Source/JavaScriptCore/offlineasm/. You may also need arch-specific adjustements in Source/JavaScriptCore/llint, though it's better to minimize their number.
>> 
>> My point was that you don't have to port LLInt before you have working JIT. AFAIU main purpose of architecture-specific LLInt implementation is to provide interpreter with the same calling convention as JIT, not to make interpreter faster on its own.
>> 
>> See also https://trac.webkit.org/wiki/JavaScriptCore
>> 
>> > On Wed, Feb 22, 2017 at 4:11 PM, Konstantin Tokarev <annulen at yandex.ru> wrote:
>> >
>> >> 22.02.2017, 13:15, "Atul Sowani" <sowani at gmail.com>:
>> >>> Hi,
>> >>>
>> >>> This is not specific to any particular branch/version of WebKit. I was browsing the code with ppc64le porting in mind. By default JIT is not available on ppc64le, so the CLoop code is used instead.
>> >>>
>> >>> I see there is low level interpreter code in qtwebkit/Source/JavaScriptCore/llint directory and inside qtwebkit/Source/JavaScriptCore/interpreter directory (AbstractPC, CallFrame etc.). I am wondering if one needs to touch this code as well to make it work correctly on ppc64le.
>> >>
>> >> Porting JIT to new platfrom does not require porting LLInt, it can work without interpreter tier. However, it is a good idea to port LLInt after you have JIT in place, to improve overall quality.
>> >>
>> >>>
>> >>> Any comments/suggestions?
>> >>>
>> >>> Thanks,
>> >>> Atul.
>> >>> ,
>> >>>
>> >>> _______________________________________________
>> >>> webkit-dev mailing list
>> >>> webkit-dev at lists.webkit.org
>> >>> https://lists.webkit.org/mailman/listinfo/webkit-dev
>> >>
>> >> --
>> >> Regards,
>> >> Konstantin
>> > ,
>> >
>> > _______________________________________________
>> > webkit-dev mailing list
>> > webkit-dev at lists.webkit.org
>> > https://lists.webkit.org/mailman/listinfo/webkit-dev
>> 
>> 
>> -- 
>> Regards,
>> Konstantin
> 
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-dev/attachments/20170222/14a09157/attachment.html>


More information about the webkit-dev mailing list