Improve our type feedback by recogizining never-executed IC calls for binary operations.
In the case of inlined smi code in non-optimzied code we could not distinguish between the smi-only case and the case that the operation was never executed. With this change the first execution of a binary operation always jumps to the stub which in turn patches the smi-check into the correct conditional branch, so that we benefit from inlined smi code after the first invocation. A nop instruction after the call to the BinaryOpIC indicates that no smi code was inlined. A "test eax" instruction says that there was smi code inlined and encodes the delta to the patch site and the condition code of the branch at the patch site to restore the original jump. Review URL: http://codereview.chromium.org/5714001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5970 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Showing
This diff is collapsed.
Please
register
or
sign in
to comment