Re: [webkit-dev] Announce the ARM port of JIT

2009-04-03 Thread Zoltan Herczeg
Hi,

Thanks :)

we put all those constants into the constant pool. ARM supports position
independent code efficently, since its program counter is a regular
register as well. We can load, modify or even jump to the addresses which
are stored in the constant pool. Constant pools are dynamically put into
the jit code, except when we need tightly coupled instruction pairs. Those
must not be broken by a constant pool.

Zoltan

 Congratulations!
 any improvement on X86 hard coded offset for code patch? I mean X86 uses
 single pointer then a few constants closely coupled to X86 to patch code,
 which is a nightmare for porting.
 rgds
 joe


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Announce the ARM port of JIT

2009-04-03 Thread Zoltan Herczeg
Hi,

after I read my mail again I am not sure it is clear what I wanted to say.

current operation:
 - push instruction. It will either
   a) push the current instruction
   b) push he constant pool, and push the current instruction
 - utility function: the next two instruction will be tightly coupled
   if the constant pool is pushed after the first instruction,
   push it NOW (implemented)

planned operation:
 - we can extend our utility function for MORE than two instructions.
   - we can use hard coded offsets from that time as the x86 port.

Zoltan

 Hi,

 Thanks :)

 we put all those constants into the constant pool. ARM supports position
 independent code efficently, since its program counter is a regular
 register as well. We can load, modify or even jump to the addresses which
 are stored in the constant pool. Constant pools are dynamically put into
 the jit code, except when we need tightly coupled instruction pairs. Those
 must not be broken by a constant pool.

 Zoltan

 Congratulations!
 any improvement on X86 hard coded offset for code patch? I mean X86 uses
 single pointer then a few constants closely coupled to X86 to patch
 code,
 which is a nightmare for porting.
 rgds
 joe


 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Announce the ARM port of JIT (Gabor Loki)

2009-04-02 Thread haithem rahmani
Hi,

 why the JavaScriptCore/wrec/WRECGenerator.cpp file  was not ported to
use ARM instructions?

regards.

haithem
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Announce the ARM port of JIT (Gabor Loki)

2009-04-02 Thread Osztrogonac Csaba

Hi,

There isn't any barrier why not porting WREC. We are
going to port WREC, the development is ongoing, and
the results will be available too.

br,
Ossy


haithem rahmani írta:

 why the JavaScriptCore/wrec/WRECGenerator.cpp file  was not ported to
use ARM instructions?
 
regards.
 
haithem


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Announce the ARM port of JIT

2009-04-02 Thread x yz

Congratulations!
any improvement on X86 hard coded offset for code patch? I mean X86 uses single 
pointer then a few constants closely coupled to X86 to patch code, which is a 
nightmare for porting.
rgds
joe


--- On Wed, 4/1/09, Gabor Loki l...@inf.u-szeged.hu wrote:

 From: Gabor Loki l...@inf.u-szeged.hu
 Subject: [webkit-dev] Announce the ARM port of JIT
 To: webkit-dev@lists.webkit.org, squirrelfish-...@lists.webkit.org
 Date: Wednesday, April 1, 2009, 9:57 PM
 Hi guys,
 
 we are pleased to announce that the ARM port of JIT is
 finally released.
 
 The source can be checked out from 'loki/arm-port'
 branch of
 git://code.staikos.net/webkit :
   - git clone git://code.staikos.net/webkit  git
 checkout loki/arm-port
   - or see at
 http://code.staikos.net/cgi-bin/gitweb.cgi?p=webkit;a=shortlog;h=loki/arm-port
 
 The aim of this development is to add JIT support for ARM
 architectures.
 
 The port itself is developed from scratch, but we reused
 the ideas of x86 JIT. So we
 implemented property caches, stub functions, etc. in a
 similar way, but the code is
 optimized for ARM architectures.
 
 We used Qt4 build environment for the development, but we
 feel that the other build
 platforms can be easily extended with this ARM port.
 
 The current version is stable. It passes the regression
 tests.
 
 We did measurements on a Nokia N810, and we gained 13%
 performance improvement.
 The memory consumption is increased by 3.3% which is a
 small trade-off for this
 performance
 improvement.
 
 Our work has not done yet. We plan to add several other
 features in the future.
 
 Please, feel free to ask any questions about the ARM JIT
 here at the mail list or at
 the following Bugzilla entry:
 https://bugs.webkit.org/show_bug.cgi?id=24986
 
 --Gabor
 
 
 ___
 webkit-dev mailing list
 webkit-dev@lists.webkit.org
 http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


  
___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


[webkit-dev] Announce the ARM port of JIT

2009-04-01 Thread Gabor Loki
Hi guys,

we are pleased to announce that the ARM port of JIT is finally released.

The source can be checked out from 'loki/arm-port' branch of
git://code.staikos.net/webkit :
  - git clone git://code.staikos.net/webkit  git checkout loki/arm-port
  - or see at
http://code.staikos.net/cgi-bin/gitweb.cgi?p=webkit;a=shortlog;h=loki/arm-port

The aim of this development is to add JIT support for ARM architectures.

The port itself is developed from scratch, but we reused the ideas of x86 JIT. 
So we
implemented property caches, stub functions, etc. in a similar way, but the 
code is
optimized for ARM architectures.

We used Qt4 build environment for the development, but we feel that the other 
build
platforms can be easily extended with this ARM port.

The current version is stable. It passes the regression tests.

We did measurements on a Nokia N810, and we gained 13% performance improvement.
The memory consumption is increased by 3.3% which is a small trade-off for this
performance
improvement.

Our work has not done yet. We plan to add several other features in the future.

Please, feel free to ask any questions about the ARM JIT here at the mail list 
or at
the following Bugzilla entry: https://bugs.webkit.org/show_bug.cgi?id=24986

--Gabor


___
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev