• bjaideep's avatar
    PPC: [builtins] Introduce proper Float64Log1p, Float64Atan and Float64Atan2 operators. · 6203906c
    bjaideep authored
    Port 7ceed92a
    Port 89d8c57b
    
    Original commit message:
    
        Import base::ieee754::atan() and base::ieee754::atan2() from fdlibm and
        introduce Float64Atan and Float64Atan2 TurboFan operators based on those,
        similar to what we already did for Float64Log and Float64Log1p. Rewrite
        Math.atan() and Math.atan2() as TurboFan builtin and use the operators
        to also inline Math.atan() and Math.atan2() into optimized TurboFan functions.
    
        Import base::ieee754::log1p() from fdlibm and introduce a Float64Log1p
        TurboFan operator based on that, similar to what we do for Float64Log.
        Rewrite Math.log1p() as TurboFan builtin and use that operator to also
        inline Math.log1p() into optimized TurboFan functions.
    
        Also unify the handling of the special IEEE 754 functions somewhat in
        the TurboFan backends. At some point we can hopefully express this
        completely in the InstructionSelector (once we have an idea what to do
        with the ST(0) return issue on IA-32/X87).
    
        Drive-by-fix: Add some more test coverage for the log function.
    
    R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com
    
    BUG=v8:5086,v8:5092,v8:5095
    LOG=N
    
    Review-Url: https://codereview.chromium.org/2061753002
    Cr-Commit-Position: refs/heads/master@{#36935}
    6203906c
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...
Makefile.nacl 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...