Reviewers: Kevin Millikin,

Message:
This is a first version.

Description:
Introduce number type information in the virtual frame.

Each frame element gets a new attribute with number type information. A frame
element can be:

- smi
- heap number
- number (i.e. either of the above)
- or something else.

The type information is propagated along with all virtual frame operations.

Two optimizations in the code generator make use of the new
information:
 - GenericBinaryOpSyub omits map checks if input operands are numbers.
- Boolean conversion for numbers: Emit inline code for converting a number (smi
or heap number) to boolean. Do not emit call to ToBoolean stub in this case.


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

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

Affected files:
  M     src/frame-element.h
  M     src/ia32/codegen-ia32.h
  M     src/ia32/codegen-ia32.cc
  M     src/ia32/virtual-frame-ia32.h
  M     src/ia32/virtual-frame-ia32.cc
  M     src/jump-target.cc
  A     src/numberinfo.h
  M     src/virtual-frame.cc


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

Reply via email to