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.mene...@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