[ARM64] [turbofan] Improve construction of doubles.
authorjacob.bramley <jacob.bramley@arm.com>
Mon, 16 Mar 2015 17:15:16 +0000 (10:15 -0700)
committerCommit bot <commit-bot@chromium.org>
Mon, 16 Mar 2015 17:15:28 +0000 (17:15 +0000)
commit12993637118b25194642666db6c3ce44d9052d94
tree357e59b2c0d511a9cb21dfe031206c683ba1e5bb
parente059be3347970464816a3044990a4b1baa5ba4a3
[ARM64] [turbofan] Improve construction of doubles.

Improve the code generated for construction of a 64-bit floating point
number from two 32-bit integers.

Previously, this moved FP->core, inserted, then moved core->FP for each
half. Now, we construct the double in an X register and move core->FP.
Typically, the temporary register aliases the input register, so the
sequence improves from six to two instructions.

Patch from Martyn Capewell <m.m.capewell@googlemail.com>.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27227}
src/compiler/arm64/code-generator-arm64.cc
src/compiler/arm64/instruction-codes-arm64.h
src/compiler/arm64/instruction-selector-arm64.cc