• ahaas's avatar
    [wasm] Change the default lowering of stores. · dd51dd92
    ahaas authored
    The int64-lowering only lowered store instructions with a word64 store
    representation. For all other stores the default lowering applied. The
    default lowering replaces all input nodes with both their replacement
    nodes, which can change the number of input nodes of the lowered node.
    
    In WebAssembly there exist stores which take an I64 input and store it
    with a different representation, e.g. I32. In TurboFan this translates
    to a store node with word32 store representation and a word64 value
    input. The default lowering replaces the word64 value input to become
    two word32 value inputs, which makes the number of inputs of the store
    node invalid. This CL discards the high word replacement of the value
    input so that the number of input nodes of a store node does not change
    in the default lowering.
    
    R=titzer@chromium.org
    CC=rossberg@chromium.org
    
    BUG=
    
    Review-Url: https://codereview.chromium.org/2668023004
    Cr-Commit-Position: refs/heads/master@{#42860}
    dd51dd92
int64-lowering.cc 35.1 KB