• fschneider@chromium.org's avatar
    Introduce number type information in the virtual frame. · dbe99e40
    fschneider@chromium.org authored
    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. 
    Results popped from the frame carry the number information with them.
    
    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.
    
    
    Review URL: http://codereview.chromium.org/545007
    
    git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3861 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    dbe99e40
virtual-frame.cc 13.5 KB