• jarin@chromium.org's avatar
    Fixed Lithium environment generation bug for captured objects (created · acf24331
    jarin@chromium.org authored
    by escape analysis). Added several tests that expose the bug.
    
    Summary:
    LCodegen::AddToTranslation assumes that Lithium environments are
    generated by depth-first traversal, but LChunkBuilder::CreateEnvironment
    was generating them in breadth-first fashion. This fixes the
    CreateEnvironment to traverse the captured objects depth-first.
    
    Note:
    It might be worth considering representing LEnvironment by a list
    with the same order as the serialized translation representation
    rather than having two lists with a subtle relationship between
    them (and then serialize in a slightly different order again).
    
    R=titzer@chromium.org, mstarzinger@chromium.org
    LOG=N
    BUG=
    
    Review URL: https://codereview.chromium.org/93803003
    
    git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18470 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    acf24331
Name
Last commit
Last update
..
assembler-arm-inl.h Loading commit data...
assembler-arm.cc Loading commit data...
assembler-arm.h Loading commit data...
builtins-arm.cc Loading commit data...
code-stubs-arm.cc Loading commit data...
code-stubs-arm.h Loading commit data...
codegen-arm.cc Loading commit data...
codegen-arm.h Loading commit data...
constants-arm.cc Loading commit data...
constants-arm.h Loading commit data...
cpu-arm.cc Loading commit data...
debug-arm.cc Loading commit data...
deoptimizer-arm.cc Loading commit data...
disasm-arm.cc Loading commit data...
frames-arm.cc Loading commit data...
frames-arm.h Loading commit data...
full-codegen-arm.cc Loading commit data...
ic-arm.cc Loading commit data...
lithium-arm.cc Loading commit data...
lithium-arm.h Loading commit data...
lithium-codegen-arm.cc Loading commit data...
lithium-codegen-arm.h Loading commit data...
lithium-gap-resolver-arm.cc Loading commit data...
lithium-gap-resolver-arm.h Loading commit data...
macro-assembler-arm.cc Loading commit data...
macro-assembler-arm.h Loading commit data...
regexp-macro-assembler-arm.cc Loading commit data...
regexp-macro-assembler-arm.h Loading commit data...
simulator-arm.cc Loading commit data...
simulator-arm.h Loading commit data...
stub-cache-arm.cc Loading commit data...