This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/82989] [7/8 regression ] Inexplicable use of NEON for 64-bit math
- From: "jakub at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 15 Feb 2018 17:33:35 +0000
- Subject: [Bug target/82989] [7/8 regression ] Inexplicable use of NEON for 64-bit math
- Auto-submitted: auto-generated
- References: <bug-82989-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82989
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Indeed, with -march=armv7-a -mcpu=cortex-a8 -mfpu=neon -O2 pr82989.c
-mfloat-abi=hard -mprint-tune-info
I can reproduce. prefer_neon_for_64bits seems to be false, and LRA first says:
Choosing alt 4 in insn 7: (0) ?&r (1) r (2) i (3) X (4) X (5) X
{lshrdi3_neon}
which I assume would be with GPRs, but then decides to pick:
Choosing alt 6 in insn 7: (0) ?w (1) w (2) i (3) X (4) X (5) X
{lshrdi3_neon}
instead. That alternative has avoid_neon_for_64bits arch, even when it uses
neon registers, just has ? to disparage it slightly.