2008-08-24

TraceMonkey (JavaScirpt JIT)のコードが入ったわけだが

nanojitと呼ばれているJavaScriptのJITエンジンのコードが、Firefox 3.1a2に入ったわけだが、ベンチの結果を見るとブレがある。

ちなみに、x86用のみで、x86_64は、以下のように変更すれば、有効にできる。

diff --git a/js/src/Makefile.in b/js/src/Makefile.in
--- a/js/src/Makefile.in
+++ b/js/src/Makefile.in
@@ -82,19 +82,22 @@ PACKAGE_FILE = js.pkg
 # other modules which are always built shared. Failure to do so results in
 # the js code getting copied into xpinstall and jsd as well as mozilla-bin,
 # and then the static data cells used for locking no longer work.
 
 ifndef JS_STATIC_BUILD
 FORCE_SHARED_LIB = 1
 endif
 
+ifeq ($(OS_TEST),x86_64)
+DEFINES += -DAVMPLUS_AMD64
+NANOJIT_ARCH = i386
+ENABLE_JIT = 1
+else
 ifeq (86,$(findstring 86,$(OS_TEST)))
-ifeq (64,$(findstring 64,$(OS_TEST)))
-else
 DEFINES += -DAVMPLUS_IA32
 NANOJIT_ARCH = i386
 ENABLE_JIT = 1
 endif
 endif
 
 ifeq ($(OS_ARCH),Linux)
 DEFINES += -DAVMPLUS_LINUX -DLINUX

なお、nanojitの日本語でかかれた話は、http://dodgson.org/omo/t/?date=20080506に書いてあるのがおすすめ。

WebKit(SquirrelFish)もMozillaもJITをランディングしてきたけど、Microsotはどうするのだろうねぇ。IE6の後にインドに左遷されたスクリプトエンジンだし(だから独占はイノベーションを生まないんだ)。インド人仕事じゃ高速な実装できるはずないから、Microsoft Rearchくらいから出してくるんだろうけどさ

0 件のコメント: