• Andreas Haas's avatar
    [wasm] Consider void returns in the int64-lowering · 151cad81
    Andreas Haas authored
    The int64-lowering lowers return nodes which return one int64 value into
    a return node which returns two int32 values. For this lowering it has
    to adjust the input count of the return operator.
    
    The existing code assumed that if the signature of a function said that
    the return type is int64, then all return nodes have int64 inputs.
    However, with a recent CL we also introduced void returns. With this CL
    I check if the number of inputs of a return node changes with the
    DefaultLowering, and only if the number of inputs changes, then I check
    if I also have to change the operator of the return node.
    
    R=mstarzinger@chromium.org
    TEST=mjsunit/regress/wasm/regression-6164
    BUG=v8:6164
    
    Change-Id: I004ab1b4be942cc045719f306705d95b48707a1c
    Reviewed-on: https://chromium-review.googlesource.com/461941Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
    Commit-Queue: Andreas Haas <ahaas@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#44232}
    151cad81
int64-lowering.cc 35.3 KB