Improve performance of arithmetic operators
authoroliver@apple.com <oliver@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 8 Aug 2008 09:48:10 +0000 (09:48 +0000)
committeroliver@apple.com <oliver@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 8 Aug 2008 09:48:10 +0000 (09:48 +0000)
commitd602b14851bc74d60d42e747b4cc59219df165cc
treecf09f9cc75e64be05b77e91d96156e1cf6dabcf0
parent8e9041c152e007f872b91b485b7d1799c9d89a8e
Improve performance of arithmetic operators

Reviewed by Cameron Zwarich

Added a fast (non-virtual) mechanism to determine if a non-immediate JSValue*
is a JSNumberCell.  We then use this to allow improved specialisation in many
arithmetic operators.  SunSpider reports a 2.5% progression overall, with greater
than 10% progressions on a number of arithmetic heavy tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@35639 268f45cc-cd09-0410-ab3c-d52691b4dbfc
JavaScriptCore/ChangeLog
JavaScriptCore/VM/Machine.cpp
JavaScriptCore/kjs/JSNumberCell.h
JavaScriptCore/kjs/collector.cpp
JavaScriptCore/kjs/collector.h