• Clemens Hammacher's avatar
    [wasm] [interpreter] Box floats for certain operations · 319b7868
    Clemens Hammacher authored
    There are wasm operations which operate on floats or double, but they
    need to preserve the exact bit pattern. Thus they cannot be stored and
    passed as float or double, since that might flip the signaling NaN bit.
    This CL extends WasmValue to store floats and doubles as bit pattern,
    and adds accessors to extract them as Float32 or Float64.
    The interpreter is changed to execute certain operations (i32.abs,
    i32.neg, i64.abs, i64.neg, f32.reinterpret/i32, f64.reinterpret/i64) on
    boxed floats.
    
    R=titzer@chromium.org
    
    Bug: v8:6954
    Change-Id: I0251d1a67b6caf593194d4eb292a325cdd3f20cf
    Reviewed-on: https://chromium-review.googlesource.com/730716
    Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#48819}
    319b7868
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 Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.editorconfig Loading commit data...
.git-blame-ignore-revs 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...