Updates:
Status: WorkingAsIntended
Comment #1 on issue 1758 by [email protected]: Performance penalty
when using integers > 30bit
http://code.google.com/p/v8/issues/detail?id=1758
Your observation is correct. It's a consequence of one of V8's core design
decisions, namely to use "small integers" (31bit signed integers)
internally when possible, and 64bit doubles otherwise. Nothing "breaks
inside the compiler", V8 is just forced to go from an optimized case to a
slower generic case. This is basically not fixable without a full rewrite.
Also be aware that any "fix" would have to trade memory for speed, and
while this might result in a noticable improvement in some cases, it's not
clear whether it would be an overall win.
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev