Reviewers: Kasper Lund,

Message:
Other than the VirtualFrame vs native frame confusion below, this change
LGTM.

-Ivan




http://codereview.chromium.org/7669/diff/401/404
File src/codegen-ia32.cc (right):

http://codereview.chromium.org/7669/diff/401/404#newcode774
Line 774: __ push(eax);
This push here relies on the fact that the code generators VirtualFrame
frame_ maps directly to the machine frame. I think this should be
changed to return the result in eax.

http://codereview.chromium.org/7669/diff/401/404#newcode819
Line 819: __ mov(eax, frame_->Top());  // get x
This should be a Pop(reg) to balance it with the requirement for the
Push(eax) below.

http://codereview.chromium.org/7669/diff/401/404#newcode827
Line 827: __ mov(frame_->Top(), eax);
We should frame_->Push(eax) here, since the deferred code does not know
the location of the virtual frame top. It works now, because the virtual
frame and the machine frame are exact mappings.

Description:
Refactor the smi case inlining for binary operations, so
it's easier to inline the code on demand. Right now, we still
only inline the smi case code for bitwise operations.

Please review this at http://codereview.chromium.org/7669

SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/

Affected files:
   M     src/assembler-ia32.cc
   M     src/codegen-ia32.h
   M     src/codegen-ia32.cc



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

Reply via email to