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 -~----------~----~----~----~------~----~------~--~---
