Float to int moves currently generate inefficient code due to hacks used in the movsi...
authorWilco Dijkstra <wdijkstr@arm.com>
Fri, 5 May 2017 16:18:17 +0000 (16:18 +0000)
committerWilco Dijkstra <wilco@gcc.gnu.org>
Fri, 5 May 2017 16:18:17 +0000 (16:18 +0000)
commit8e10223f3638a3251b15eb7a8777a69cbaf63422
treef7c0c322c73ea4b71697c2ae791838c6b5e1c08d
parent8dc6a926f2eea6de3f1710a185eee5cfc052d6f8
Float to int moves currently generate inefficient code due to hacks used in the movsi and movdi patterns.

Float to int moves currently generate inefficient code due to
hacks used in the movsi and movdi patterns.  The 'r = w' variant
uses '*' which tells the register allocator to ignore it.
As a result the float to int moves typically spill to the stack,
which is extremely inefficient.

    gcc/
* config/aarch64/aarch64.md (movsi_aarch64): Remove '*' from r=w.
(movdi_aarch64): Likewise.

From-SVN: r247643
gcc/ChangeLog
gcc/config/aarch64/aarch64.md