[Bug target/94591] [8/9/10/11 Regression] Assembler messages: Error: operand mismatch -- `rev64 v0.2d,v0.2d' (or `rev32 v0.2s,v0.2s')
cvs-commit at gcc dot gnu.org
Tue May 19 19:44:54 GMT 2020
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Alex Coplan <email@example.com>:
Author: Alex Coplan <firstname.lastname@example.org>
Date: Tue May 19 20:33:20 2020 +0100
[aarch64] PR target/94591: Don't generate invalid REV64 insns
This fixes PR94591. The problem was the function aarch64_evpc_rev_local()
matching vector permutations that were not reversals. In particular, prior
this patch, this function matched the identity permutation which led to
generating bogus REV64 insns which were rejected by the assembler.
* config/aarch64/aarch64.c (aarch64_evpc_rev_local): Don't match
* gcc.c-torture/execute/pr94591.c: New test.
More information about the Gcc-bugs