• Clemens Hammacher's avatar
    Reland "[Liftoff] Fix register use count" · 7f851cd4
    Clemens Hammacher authored
    This is a reland of ada64800, fixed
    for 32 bit architectures (register pairs).
    
    Original change's description:
    > [Liftoff] Fix register use count
    >
    > In {SetLocalFromStackSlot}, we decrement the use count of the register
    > in the target slot without updating this slot, and then call
    > {GetUnusedRegister}. At that point, the register use counts do not
    > match the cache state, which leads to errors later on.
    > This CL fixes this by marking the target slot as a stack slot after
    > reducing the register use count.
    >
    > It also adds a Validation which helped to find that error and will
    > catch similar errors earlier.
    >
    > R=titzer@chromium.org
    >
    > Bug: chromium:854050, v8:6600
    > Change-Id: I74d3a5aa947ec4247d7b4557567f642bf4082316
    > Reviewed-on: https://chromium-review.googlesource.com/1111958
    > Reviewed-by: Ben Titzer <titzer@chromium.org>
    > Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#53976}
    
    TBR=titzer@chromium.org
    
    Bug: chromium:854050, v8:6600
    Change-Id: Ibc8801737e9604a8490382c569b0378585625376
    Reviewed-on: https://chromium-review.googlesource.com/1112238
    Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#53981}
    7f851cd4
Name
Last commit
Last update
..
baseline Loading commit data...
OWNERS Loading commit data...
decoder.h Loading commit data...
function-body-decoder-impl.h Loading commit data...
function-body-decoder.cc Loading commit data...
function-body-decoder.h Loading commit data...
function-compiler.cc Loading commit data...
function-compiler.h Loading commit data...
jump-table-assembler.cc Loading commit data...
jump-table-assembler.h Loading commit data...
leb-helper.h Loading commit data...
local-decl-encoder.cc Loading commit data...
local-decl-encoder.h Loading commit data...
memory-tracing.cc Loading commit data...
memory-tracing.h Loading commit data...
module-compiler.cc Loading commit data...
module-compiler.h Loading commit data...
module-decoder.cc Loading commit data...
module-decoder.h Loading commit data...
signature-map.cc Loading commit data...
signature-map.h Loading commit data...
streaming-decoder.cc Loading commit data...
streaming-decoder.h Loading commit data...
value-type.h Loading commit data...
wasm-code-manager.cc Loading commit data...
wasm-code-manager.h Loading commit data...
wasm-code-specialization.cc Loading commit data...
wasm-code-specialization.h Loading commit data...
wasm-constants.h Loading commit data...
wasm-debug.cc Loading commit data...
wasm-engine.cc Loading commit data...
wasm-engine.h Loading commit data...
wasm-external-refs.cc Loading commit data...
wasm-external-refs.h Loading commit data...
wasm-interpreter.cc Loading commit data...
wasm-interpreter.h Loading commit data...
wasm-js.cc Loading commit data...
wasm-js.h Loading commit data...
wasm-limits.h Loading commit data...
wasm-linkage.h Loading commit data...
wasm-memory.cc Loading commit data...
wasm-memory.h Loading commit data...
wasm-module-builder.cc Loading commit data...
wasm-module-builder.h Loading commit data...
wasm-module.cc Loading commit data...
wasm-module.h Loading commit data...
wasm-objects-inl.h Loading commit data...
wasm-objects.cc Loading commit data...
wasm-objects.h Loading commit data...
wasm-opcodes.cc Loading commit data...
wasm-opcodes.h Loading commit data...
wasm-result.cc Loading commit data...
wasm-result.h Loading commit data...
wasm-serialization.cc Loading commit data...
wasm-serialization.h Loading commit data...
wasm-text.cc Loading commit data...
wasm-text.h Loading commit data...
wasm-value.h Loading commit data...