[webkit-dev] want to port JIT to MIPS - when WREC/JIT enabled?

x yz lastguy at yahoo.com
Sun Feb 15 13:25:23 PST 2009


Hi,
from paltform.h it is enabled only on X86 MAC/WIN; from javaScriptCore.pri it is also enabled for (QT_ARCH,i386). But, from config.log I see them are enabled!

how can I run WREC/JIT test so I can trace in X86 asm coce generated?
thanks a lot.
joe



--- On Sat, 2/7/09, Gavin Barraclough <barraclough at apple.com> wrote:

> From: Gavin Barraclough <barraclough at apple.com>
> Subject: Re: [webkit-dev] want to port JIT to MIPS - using X86::ecx as base
> To: lastguy at yahoo.com
> Cc: "WebKit Development" <webkit-dev at lists.webkit.org>
> Date: Saturday, February 7, 2009, 7:08 AM
> On Feb 6, 2009, at 2:52 PM, x yz wrote:
> 
> > 1.what's the meaning of ALTERNATE_JSIMMEDIATE and
> slow case?
> 
> On x86-64 we use a different implementation of the class
> JSImmediate.  See JSImmediate.h.
> Re 'slow case', in the JIT code generation is
> performed as two passes over the bytecode – see
> JIT::privateCompileMainPass and
> JIT::privateCompileSlowCases.
> 
> > 2.how come the following code can use ECX as base
> register?
> > load32(Address(X86::ecx, FIELD_OFFSET(Structure,
> m_typeInfo.m_flags)), X86::ecx);
> > if the X86::ecx just means its value 1 in ModR/M, does
> it means [BX+DI]?
> 
> I think you're looking at the old 16-bit addressing
> mode tables; 32/64-bit x86 can happily encode ecx as a base
> register.  If you're looking at the Intel IA-32 manual
> volume 2, see table 2-2 on the next page.
> 
> > 3. can anybody help me on my previous questions? does
> JIT support floating point?
> 
> Yes, some.  See JITArithmetic.cpp.
> 
>  cheers,
> G.


      


More information about the webkit-dev mailing list