• svenpanne@chromium.org's avatar
    Simplify and optimize ToBoolean handling. · 06bea35f
    svenpanne@chromium.org authored
    Changing our builtin JavaScript code slightly, we can make sure that we never
    see internal objects as arguments for ToBoolean at runtime. Removing that case
    from the stub generator and crankshaft makes things a lot easier.
    
    Heap numbers can never be undetectable (only strings and spec objects can), so
    we can leave out a useless test.
    
    Try to re-use a non-null register value when returning 'true' in some cases.
    
    Removed special handling of the 'handle all' case, it will very probably never
    happen in real code and only makes things more complicated.
    
    Improved naming of the ToBoolean stubs a bit, reflecting the order in which
    cases are handled in the code itself.
    Review URL: http://codereview.chromium.org/7497063
    
    git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8886 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    06bea35f
Name
Last commit
Last update
..
assembler-ia32-inl.h Loading commit data...
assembler-ia32.cc Loading commit data...
assembler-ia32.h Loading commit data...
builtins-ia32.cc Loading commit data...
code-stubs-ia32.cc Loading commit data...
code-stubs-ia32.h Loading commit data...
codegen-ia32.cc Loading commit data...
codegen-ia32.h Loading commit data...
cpu-ia32.cc Loading commit data...
debug-ia32.cc Loading commit data...
deoptimizer-ia32.cc Loading commit data...
disasm-ia32.cc Loading commit data...
frames-ia32.cc Loading commit data...
frames-ia32.h Loading commit data...
full-codegen-ia32.cc Loading commit data...
ic-ia32.cc Loading commit data...
lithium-codegen-ia32.cc Loading commit data...
lithium-codegen-ia32.h Loading commit data...
lithium-gap-resolver-ia32.cc Loading commit data...
lithium-gap-resolver-ia32.h Loading commit data...
lithium-ia32.cc Loading commit data...
lithium-ia32.h Loading commit data...
macro-assembler-ia32.cc Loading commit data...
macro-assembler-ia32.h Loading commit data...
regexp-macro-assembler-ia32.cc Loading commit data...
regexp-macro-assembler-ia32.h Loading commit data...
simulator-ia32.cc Loading commit data...
simulator-ia32.h Loading commit data...
stub-cache-ia32.cc Loading commit data...