This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [AArch64] Fix SIMD predicate
- From: James Greenhalgh <james dot greenhalgh at arm dot com>
- To: Evandro Menezes <e dot menezes at samsung dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, Wilco Dijkstra <Wilco dot Dijkstra at arm dot com>, Marcus Shawcroft <Marcus dot Shawcroft at arm dot com>, Andrew Pinski <pinskia at gmail dot com>
- Date: Thu, 31 Mar 2016 10:52:34 +0100
- Subject: Re: [AArch64] Fix SIMD predicate
- Authentication-results: sourceware.org; auth=none
- References: <56FBFC53 dot 10709 at samsung dot com>
On Wed, Mar 30, 2016 at 11:18:27AM -0500, Evandro Menezes wrote:
> Add scalar 0.0 to the aarch64_simd_reg_or_zero predicate.
>
> 2016-03-30 Evandro Menezes <e.menezes@samsung.com>
>
> * gcc/config/aarch64/predicates.md
> (aarch64_simd_reg_or_zero predicate): Add the "const_double"
> constraint.
>
>
> It seems to me that the aarch64_simd_reg_or_zero should also handle
> the scalar constant 0.0 as well.
It took me an extra few minutes to figure out why this patch was correct - a
more detailed description of what the code-gen issue this was intended to
fix would have helped. The only pattern I can see for which this matters
is aarch64_cm<optab><mode> for the SF and DF modes. Clearly the predicate
is too tight here, and the relaxation you propose is correct.
> OK to commit?
OK, and low-risk enough to take now.
Thanks,
James