• Benedikt Meurer's avatar
    [turbofan] Avoid unnecessary bit materialization in CheckedInt32Mod. · 7cd2cacf
    Benedikt Meurer authored
    The slow-path of CheckedInt32Mod(x,y) when x is found to be negative
    still had the power of two right hand side optimization, and thus would
    perform a dynamic check on y. Now the same dynamic check was done for
    the fast-path, and the word operations for this check were pure, leading
    to weird bit materialization in TurboFan (due to sea of nodes). But
    there's not really a point to be clever for the slow-path, so we just
    insert the Uint32Mod operation directly here, which completely avoids
    the problem.
    
    This improves the Kraken/audio-oscillator test from around 73ms to 69ms.
    
    Bug: v8:8069
    Change-Id: Ie8ea667136c95df2bd8c5ba56ebbc6bd2442ff23
    Reviewed-on: https://chromium-review.googlesource.com/c/1259063Reviewed-by: 's avatarSigurd Schneider <sigurds@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#56370}
    7cd2cacf
Name
Last commit
Last update
..
benchmarks Loading commit data...
cctest Loading commit data...
common Loading commit data...
debugger Loading commit data...
fuzzer Loading commit data...
inspector Loading commit data...
intl Loading commit data...
js-perf-test Loading commit data...
memory Loading commit data...
message Loading commit data...
mjsunit Loading commit data...
mkgrokdump Loading commit data...
mozilla Loading commit data...
preparser Loading commit data...
test262 Loading commit data...
torque Loading commit data...
unittests Loading commit data...
wasm-spec-tests Loading commit data...
webkit Loading commit data...
BUILD.gn Loading commit data...