Reviewers: Mads Ager,

Message:
Mads,

This patch has to be implemented for all architectures, but I only covered the ia32 case so that I can use your inputs when porting. We'll need another round
of reviews for the ports.


Thanks,
Vitaly

Description:
Custom call IC-s for String.prototype.{charAt,charCodeAt}.

These string methods can be composed from two basic blocks: charCodeAt
and fromCharCode, both of which have fast cases for certain types of
inputs. In this patch these two blocks are refactored to allow
generating the fast cases without having to jump around the slow
cases. In the slow cases since they can now be invoked both from
inline runtime functions and from IC stubs we either have to
save/restore state of the current frame or enter/leave a new internal
frame. This is handled by new RuntimeCallHelper interface.

Please review this at http://codereview.chromium.org/2087009/show

Affected files:
  M src/codegen.h
  M src/ia32/codegen-ia32.h
  M src/ia32/codegen-ia32.cc
  M src/ia32/ic-ia32.cc
  M src/ia32/stub-cache-ia32.cc
  M src/ia32/virtual-frame-ia32.h
  M src/jump-target-heavy.cc
  M src/objects.h
  M src/string.js
  M src/stub-cache.h
  M test/mjsunit/string-charat.js


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to