[webkit-dev] x86-64 JIT

Maciej Stachowiak mjs at apple.com
Fri Mar 20 13:34:16 PDT 2009


On Mar 20, 2009, at 12:48 AM, Mike Hommey wrote:

> On Thu, Mar 19, 2009 at 02:09:51PM -0700, Gavin Barraclough wrote:
>> I think I can see a bug here – the compile guard on the definition of
>> VoidPtrPair in JITStubs.h isn't right.
>>
>> #if PLATFORM(MAC)
>>
>> should be changed to
>>
>> #if !COMPILER(MSVC)
>>
>> (and the else case should #error if compiled on x86-64, if it not  
>> 64-bit
>> safe).
>>
>> The MSVC version of this structure works around a quirk in the  
>> windows
>> ABI in a way that is not 64-bit safe, and you shouldn't need this on
>> Linux.  The result of this will be resolve_func returning a junk
>> JSValuePtr for the function object.
>
> You nailed it. Fixing this makes the JIT work on my laptop.
> If you deem it necessary, I can file a bug and attach a patch for this
> issue.

Please do!

> I will, anyways, file a bug and attach a patch to enable JIT
> on x86-64 for WebKitGtk later today.

That sounds good as well.

> PS: for the curious, some performance figures: On my laptop, sunspider
> runs in 1685ms on x86-64 where the x86 version runs in 1965ms. But
> that's without forcing the CPU to be fullspeed all the time in both
> cases, which *does* improve sunspider results (and help have more  
> stable
> results)

Sounds about right - we get a similar speedup on Mac OS X from x86_64.

Regards,
Maciej



More information about the webkit-dev mailing list