[webkit-dev] ARM JIT for WinCE
Gabor Loki
loki at inf.u-szeged.hu
Wed Jan 6 04:24:40 PST 2010
Hi Patrick,
Patrick Roland Gansterer wrote:
> I'm trying to enable the JIT for CPU(ARM_TRADITIONAL) && OS(WINCE).
> MSVC supports inline assembler only for X86, so i had to provide a separate
> asm file (i copied the code from the GCC #ifdef with !JSVALUE32_64):
>
> ctiVMThrowTrampoline proc
> mov r0, sp
> bl cti_vm_throw
> endp
Make sure your assembler does not break ctiVMThrowTrampoline
and ctiOpThrowNotCaught functions. This approach requires that the
ctiVMThrowTrampoline fall-backs to ctiOpThrowNotCaught
after 'bl cti_vm_throw' call. Or you can simply copy the body of
ctiOpThrowNotCaught into ctiVMThrowTrampoline after the
call.
> ctiOpThrowNotCaught proc
> add sp, sp, #36
> ldmia sp!, {r4-r8, lr}
> add sp, sp, #12
> mov pc, lr
> endp
Did you do anything with DEFINE_STUB_FUNCTION macro?
You can check how should it be handled for ARM_TRADITIONAL.
See after the following line in JITStubs.cpp:
#elif CPU(ARM_TRADITIONAL) && COMPILER(GCC)
I guess this will not work for you, so try to examine
the following bugzilla entry.
https://bugs.webkit.org/show_bug.cgi?id=30552
The attached patch shows how we would like to interpret
DEFINE_STUB_FUNCTION for RVCT compiler:
--Gabor
More information about the webkit-dev
mailing list