https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88850
Tamar Christina <tnfchris at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED --- Comment #10 from Tamar Christina <tnfchris at gcc dot gnu.org> --- Screwed up the PR format, but committed to trunk 268612 | tnfchris | 2019-02-07 10:05:57 +0000 (Thu, 07 Feb 2019) | 21 lines Arm: Fix NEON REG to REG reload failures. (PR/target 88850) We currently return cost 2 for NEON REG to REG moves, which would be incorrect for 64 bit moves. We currently don't have a pattern for this in the neon_move alternatives because this is a bit of a special case. We would almost never want it to use this r -> r pattern unless it really has no choice. As such we add a new neon r -> r move pattern but also hide it from being used to determine register preferences and also disparage it during LRA. gcc/ChangeLog: PR/target 88850 * config/arm/neon.md (*neon_mov<mode>): Add r -> r case. gcc/testsuite/ChangeLog: PR/target 88850 * gcc.target/arm/pr88850.c: New test.