• kmillikin@chromium.org's avatar
    Simple toplevel code generator support for short-circuited boolean OR · e82a07c0
    kmillikin@chromium.org authored
    in a non-test (ie, value or effect) context.  (It is implicitly not in
    a test context because the code generator does not support expressions
    in a test context yet.)
    
    Compilation is essentially the same as in the optimized code
    generator.  The expression (e0 || e1) is compiled as if it were
    (let (temp = e0) temp ? temp : e1).
    
    On ia32 and x64 a single shared ToBoolean stub is used to convert a
    value to a flag.  The inlined checks assumed by the stub are reordered
    to compare to undefined (the common case in toplevel code?) first.  On
    ARM a call to the runtime is used.  In the interest of code size no
    checks are yet inlined on ARM.
    
    Review URL: http://codereview.chromium.org/334006
    
    git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3118 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    e82a07c0
Name
Last commit
Last update
benchmarks Loading commit data...
include Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
tools Loading commit data...
.gitignore Loading commit data...
AUTHORS Loading commit data...
ChangeLog Loading commit data...
LICENSE Loading commit data...
SConstruct Loading commit data...