[PATCH] [PATCH, rs6000] Fix pr79941 (v2)

Jakub Jelinek jakub@redhat.com
Thu Mar 9 16:59:00 GMT 2017


On Thu, Mar 09, 2017 at 10:52:52AM -0600, Will Schmidt wrote:
> Per PR79941, we are folding the vec_mul{e,o}* operations improperly. Those
> entries were added to the intrinsics-to-be-folded list where the generic
> multiplies should have been instead.  Test coverage in place was for the
> generic multiplies, and this was missed by my testing.
> 
> The mul[eo]* unsigned operations were missing entries in builtin_function_type()
> to indicate the overloaded arguments were unsigned.  This is corrected here,
> and those operations now fold accurately to the desired instruction.

This looks good to me, but I'll defer the actual review to PowerPC
maintainers.  Perhaps there was some hidden reason (xlC compatibility,
whatever) that said that vmuleub etc. should have signed vector arguments
and result.

Also, I'd like to understand what those ALTIVEC_BUILTIN_VMULEUH_UNS etc.
codes are for (the builtin doesn't seem to be user accessible).

	Jakub



More information about the Gcc-patches mailing list