[webkit-dev] Windows 32-bit support?

Yusuke Suzuki ysuzuki at apple.com
Tue Jun 25 15:40:47 PDT 2019



> On Jun 25, 2019, at 9:13 AM, Adrian Perez de Castro <aperez at igalia.com> wrote:
> 
> I was mistaken about one thing (sorry!), please read below...
> 
> On Tue, 25 Jun 2019 19:01:54 +0300, Adrian Perez de Castro <aperez at igalia.com <mailto:aperez at igalia.com>> wrote:
>> On Tue, 25 Jun 2019 10:42:04 -0500, Michael Catanzaro <mcatanzaro at igalia.com> wrote:
>>> It's great that you find our stable branches helpful, but keep in mind 
>>> those branches do not include Windows-specific fixes.
>>> 
>>> On Tue, Jun 25, 2019 at 9:53 AM, Arunprasad Rajkumar 
>>> <ararunprasad at gmail.com> wrote:
>>>> Right. Actually the problem is in 32-bit Windows platform. I see that 
>>>> the JIT support has been dropped some time ago, and CLOOP based 
>>>> backend seems to be unstable on 32-bit Windows. Any thoughts on that?
>>> 
>>> So I'm not an expert here, but I understand there are three ways you 
>>> can build JSC:
>>> 
>>> (1) -DENABLE_JIT=ON, -DENABLE_C_LOOP=OFF
>>> (2) -DENABLE_JIT=OFF, -DENABLE_C_LOOP=OFF (?)
>>> (3) -DENABLE_JIT=OFF, -DENABLE_C_LOOP=ON
>>> 
>>> (-DENABLE_JIT=ON and -DENABLE_C_LOOP=ON are incompatible.)
>>> 
>>> I believe that nowadays the only 32-bit platforms supported by JIT are 
>>> Linux, and there only for ARM and MIPS, not x86. So you're almost 
>>> certainly going to need to use -DENABLE_JIT=OFF. That eliminates option 
>>> (1).
>> 
>> JIT works on x86 as long as your CPU has support for SSE2 instructions.
> 
> Oops, this is not quite true: JIT does NOT work on 32-bit x86 at the moment.
> 
> (The JIT compiler does emit SSE2 instructions, though. When/If the JIT is
> made to work on 32-bit x86, support for SSE2 will be needed.)

WebKit no longer supports non-SSE2 x86 CPUs even without JIT.
https://lists.webkit.org/pipermail/webkit-dev/2019-March/030569.html <https://lists.webkit.org/pipermail/webkit-dev/2019-March/030569.html>

And I think we are not supporting 32bit Windows x86 JIT. CLoop (AppleWin) is recommended.

-Yusuke

> 
>>> You say the cloop seems unstable for you, which is option (3). So 
>>> perhaps you should try option (2) if you haven't already. I'm not 
>>> actually sure if that works, because I'm not an expert, which is why I 
>>> added that (?) to it. But at least it couldn't hurt to try.
>> 
>> Option (2) would be using the LLint bytecode interpreter, without JIT.
>> 
>> In principle CLoop is expected to work “everywhere” because the interpreter
>> is generated C/C++ code, which gets then built by the same compiler used to
>> build all the rest of WebKit.
>> 
>>> Maybe the Windows port maintainers know more about the status of 32-bit 
>>> Windows support?
>> 
>> Cheers,
>> —Adrián
> _______________________________________________
> 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: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20190625/722186ea/attachment.html>


More information about the webkit-dev mailing list