[turbofan] Support for %_DoubleHi, %_DoubleLo and %_ConstructDouble.
authorbmeurer <bmeurer@chromium.org>
Thu, 5 Mar 2015 09:22:26 +0000 (01:22 -0800)
committerCommit bot <commit-bot@chromium.org>
Thu, 5 Mar 2015 09:22:38 +0000 (09:22 +0000)
commit4436c2642a9b7adc9a1b68577ae9ca9a9a404c06
tree777ff61a1aec51181738bed3ac95008c329ad217
parent23fb4eb8f3973fd643efc6d056857ffdf8241f2b
[turbofan] Support for %_DoubleHi, %_DoubleLo and %_ConstructDouble.

This adds support for the double bits intrinsics to TurboFan, and is
a first step towards fast Math functions inlined into TurboFan code
or even compiled by themselves with TurboFan.

Review URL: https://codereview.chromium.org/974313002

Cr-Commit-Position: refs/heads/master@{#27006}
45 files changed:
src/compiler/arm/code-generator-arm.cc
src/compiler/arm/instruction-codes-arm.h
src/compiler/arm/instruction-selector-arm.cc
src/compiler/arm64/code-generator-arm64.cc
src/compiler/arm64/instruction-codes-arm64.h
src/compiler/arm64/instruction-selector-arm64.cc
src/compiler/ia32/code-generator-ia32.cc
src/compiler/ia32/instruction-codes-ia32.h
src/compiler/ia32/instruction-selector-ia32.cc
src/compiler/instruction-selector.cc
src/compiler/js-intrinsic-lowering.cc
src/compiler/js-intrinsic-lowering.h
src/compiler/machine-operator-reducer.cc
src/compiler/machine-operator-reducer.h
src/compiler/machine-operator.cc
src/compiler/machine-operator.h
src/compiler/opcodes.h
src/compiler/raw-machine-assembler.h
src/compiler/simplified-lowering.cc
src/compiler/typer.cc
src/compiler/verifier.cc
src/compiler/x64/code-generator-x64.cc
src/compiler/x64/instruction-codes-x64.h
src/compiler/x64/instruction-selector-x64.cc
src/ia32/assembler-ia32.cc
src/ia32/assembler-ia32.h
src/ia32/disasm-ia32.cc
src/ia32/macro-assembler-ia32.cc
src/ia32/macro-assembler-ia32.h
src/x64/assembler-x64.cc
src/x64/assembler-x64.h
src/x64/disasm-x64.cc
src/x64/macro-assembler-x64.cc
src/x64/macro-assembler-x64.h
test/cctest/compiler/test-run-machops.cc
test/cctest/test-disasm-ia32.cc
test/cctest/test-disasm-x64.cc
test/mjsunit/asm/construct-double.js [new file with mode: 0644]
test/mjsunit/asm/double-hi.js [new file with mode: 0644]
test/mjsunit/asm/double-lo.js [new file with mode: 0644]
test/unittests/compiler/js-intrinsic-lowering-unittest.cc
test/unittests/compiler/machine-operator-reducer-unittest.cc
test/unittests/compiler/machine-operator-unittest.cc
test/unittests/compiler/node-test-utils.cc
test/unittests/compiler/node-test-utils.h