• bmeurer's avatar
    [turbofan] Improve typing rule for modulus. · 17a7f583
    bmeurer authored
    Infer a more precise type even in case where NaN and/or -0 is a possible
    outcome of the operation, and use this more precise type to improve code
    generation for the modulus itself by trying harder to stick to Word32
    operations instead of going to Float64, and also optimize the pattern
    where we compare the output of x % y to some non-zero integer constant
    K, in which case we can truncate the output of x % y to Word32 if the
    type of x % y is Signed32/Unsigned32 \/ NaN \/ MinusZero, as NaN and
    MinusZero will both be truncated to zero, which cannot match the non
    zero constant K.
    
    R=jarin@chromium.org
    
    Review-Url: https://codereview.chromium.org/2202413002
    Cr-Commit-Position: refs/heads/master@{#38267}
    17a7f583
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
docs Loading commit data...
gni Loading commit data...
gypfiles Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party/binutils Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
Makefile Loading commit data...
Makefile.android Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...
snapshot_toolchain.gni Loading commit data...